CondorUDP2COM - send UDP data over COM port - source code available

Interested in building your own home grown cockpit?

Moderators: Uros, OXO

Post Reply
kmail890
Posts: 6
Joined: Thu Dec 25, 2008 6:43 pm

CondorUDP2COM - send UDP data over COM port - source code available

Post by kmail890 » Sat Jun 30, 2012 5:08 pm

edit: old app was written in WinAPI, better implementation together with installer can be found here: https://github.com/kbobrowski/CondorUDP2COM

short video demonstration (works also with Condor2): https://www.youtube.com/watch?v=KtItH9Yoj_A




==================================================================================

Hey,

I made a small app to send UDP data over serial port, hope some of you will find it useful :) instructions can be found in Help->Instructions
condortrans.png
You do not have the required permissions to view the files attached to this post.
Last edited by kmail890 on Sat May 16, 2020 12:35 am, edited 4 times in total.

K21flyer
Posts: 1
Joined: Sat Nov 03, 2012 1:38 pm

Re: CondorTransceiver - send UDP data over COM port

Post by K21flyer » Mon Nov 26, 2012 9:03 pm

Hello,

First of all; CONGRATZ with this fantastic App. A bit surprised as well that you didn't get more positive reactions.
I would like to learn how you did get that UDP data out of Condor. Sure you can set the port and connect data
in the udp.ini but when looking on the net for an SDK explaining parameters and communication protocols I did
not get many hits. As a matter of fact ... none.

Can you send me a bit more information (or a linkt to it) about how Condor sends out its flight parameters, please?
I need a sortlike application to send Condor flt data to an interface I'm building that will output "real" Pt & Ps
(yes, air pressures) so I can use real instruments in the sim cockpit I plan to build. Wonder if I can use yours.

On the other end with a few projects in mind, I would like to create a more specific one for my applications,
involving CAN communications as well. Is there a possibility to send me the source code of this app. It would
help me a me a lot about UDP data communications. I have basic knowledge of C++ programming, but when
it comes to UDP things & so, I still have to learn a lot.

Many thx in advance & with kind regards,

K21flyer / Kris
http://www.handflight.be
kris@handflight.be

User avatar
Douwe
Posts: 9
Joined: Sat Jan 07, 2006 11:05 pm
Location: Heemstede (NL)
Contact:

Re: CondorTransceiver - send UDP data over COM port

Post by Douwe » Tue Feb 25, 2014 7:19 pm

Hi kmail890,
Neat program.
I like to learn how to reed UDP from Condor, modify the data to send to my real instruments and
also forward the UDP data to an other port (BFF 6dof motion driver) that drives my motion platform.
Are you willing to provide me with the source of the program?
If you implement the forward option in the program would also be appreciated.
Best regards,
Douwe
EX. Member of the EX. Hi5 Oldtimer Glider Flying Team
http://djippes.nl/hi6sim/index.html
Skype name: djippes / djippes-m
EX. PA0NM

Cezz
Posts: 1
Joined: Sat Jan 14, 2012 11:07 pm

Re: CondorTransceiver - send UDP data over COM port

Post by Cezz » Tue Sep 22, 2015 4:46 pm

Can`t run aplication, MSVCR100D.dll missing error.
I copy .dll file to folder with condortransceiver, in c:/windows/system32 also file also is, I dont know why aplication can`t run.

Bidfordreynolds
Posts: 7
Joined: Tue Jun 27, 2017 10:01 am

Re: CondorTransceiver - send UDP data over COM port

Post by Bidfordreynolds » Tue Jun 27, 2017 8:42 pm

this does work, attain a copy of the missing dll file and copy to windows/system32 directory and install directory, I did both?? Also make sure you have c++ redisdibutable 2010 installed, get from Microsoft website.

sadatoni
Posts: 188
Joined: Sat Apr 15, 2017 1:02 am
Location: Central Ohio, USA

Re: CondorTransceiver - send UDP data over COM port

Post by sadatoni » Tue Jun 27, 2017 9:31 pm

From https://social.technet.microsoft.com/fo ... is-missing

MSVCR100.dll = Visual C++ 2010 Runtime...

32Bit: Microsoft Visual C++ 2010 SP1 Redistributable Package (x86)
http://www.microsoft.com/de-de/download ... px?id=8328

64Bit: Microsoft Visual C++ 2010 SP1 Redistributable Package (x64)
http://www.microsoft.com/en-us/download ... x?id=13523
N5503T CN(0OU)

Image
John Ferguson

kmail890
Posts: 6
Joined: Thu Dec 25, 2008 6:43 pm

Re: CondorTransceiver - send UDP data over COM port

Post by kmail890 » Mon Sep 18, 2017 12:45 am

Hi guys, after some break ;) I did not have time for Condor recently, and only now saw you replies...

Original application was written in WinAPI, it was my first peace of software and horribly implemented. I've rewritten it in python, with much cleaner implementation, and more efficient data frame.

Source code and installer are available on GitHub: https://github.com/kbobrowski/CondorUDP2COM

Hopefully you'll find it useful, feel free to contribute!

Cheers

janjansen
Posts: 1090
Joined: Wed Feb 24, 2016 9:26 pm

Re: CondorUDP2COM - send UDP data over COM port - source code available

Post by janjansen » Thu Sep 21, 2017 11:01 pm

That's brilliant. Guess what my desk looked like when I stumbled upon this thread ?

https://youtu.be/EdBr23yDhig

Yep, arduino + stepper gauge prototype working with OpenVario (that will be installed in an actual glider this winter). And I was looking for a way to interface with Condor via UDP (serial link updates way too slowly) and you might be a big help with that.

However, Im a little confused. I quickly tried it and watched the output in a serial monitor, and I only get gibberish. You convert condor's UDP format in to something binary? And what are the COM ports you can select ? You create a virtual com port pair, one to send, one to receive is that it? Too bad I cant seem to select an existing com port, so it would be sent straight to the arduino (and preferably, in native format).

kmail890
Posts: 6
Joined: Thu Dec 25, 2008 6:43 pm

Re: CondorUDP2COM - send UDP data over COM port - source code available

Post by kmail890 » Sun Oct 08, 2017 11:36 pm

Nice job with OpenVario, interesting to see these installed in a glider.

Yes, UDP is converted to binary. You just tick what data you want to send over COM port in UDP-preview, then the frame in binary format is previewed in "serial port preview".

At the beginning of each frame, 6 bytes (hex: 78) are sent. Then to indicate which value is sent over, two bytes are transmitted (first is always 7A and second is an integer indicating index from "UDP preview". Then 4 bytes are sent, which is just a float value. Maybe it could be made less conservative, by sending just index of the parameter and parameter value in float.

The example arduino code on github is actually corresponding to this less conservative variant (just sending 5 bytes for each parameter, first the index and then the float).

Regarding COM ports, it is just showing those available by calling serial.tools.list_ports python method. You should be able to select existing COM port (is it showing up in device manager?)

What do you mean by native format? Condor UDP stream is just a bunch of text, it seems to be easier to do parsing on the python side and just send selected binary data over serial port.

adcam
Posts: 2
Joined: Fri Apr 24, 2020 8:14 pm

Re: CondorUDP2COM - send UDP data over COM port - source code available

Post by adcam » Sat Apr 25, 2020 6:14 pm

I am using Condor 2

when I launch the app, I got (even after installing the windows file)

MSVCR100D.dll missing error.

thanks

kmail890
Posts: 6
Joined: Thu Dec 25, 2008 6:43 pm

Re: CondorUDP2COM - send UDP data over COM port - source code available

Post by kmail890 » Sat May 16, 2020 12:31 am

@adcam, make sure that you are using newest version of the application:

https://github.com/kbobrowski/CondorUDP ... DP2COM.exe

if it still does not work try to install Visual C++ runtime:
32Bit: Microsoft Visual C++ 2010 SP1 Redistributable Package (x86)
http://www.microsoft.com/de-de/download ... px?id=8328

64Bit: Microsoft Visual C++ 2010 SP1 Redistributable Package (x64)
http://www.microsoft.com/en-us/download ... x?id=13523

GerthE
Posts: 1
Joined: Sun Dec 20, 2015 5:41 pm

Re: CondorUDP2COM - send UDP data over COM port - source code available

Post by GerthE » Tue Sep 29, 2020 9:44 pm

I have stumbled over this post in my search for how to drive instruments via an Arduino to stepper motors.

The software in this thread is very interesting, thought do i wonder if someone have been to get it to work with the supplied example?
I have tried to run the supplied stepper_motor_gauge.io file on my Arduino mega card but I don't get any movement on my stepper motor.
And I use Condor 2 as simulator.

Small disclaimer - i'm extremely new to programming in the Arduino language so I might have misunderstood the code completely , but I have tried to understand what is happening.

What I have been able to discover is the following. (there is a disclaimer from the author so this might be expected)
  • Seem like the new software is sending data in a new format than the old did
  • Using a terminal software and listening in to the stream give a datablock like
78 78 78 78 78 78 xxxxxx
7a 01 cb 54 da 41 z.ËTÚA
7a 02 f6 66 79 44 z.öfyD
7a 03 b0 55 54 bf z.°UT¿
7a 04 d6 55 54 bf z.ÖUT¿

If i translate this to what I can se in the software so should it be something like this.
78 78 78 78 78 78 xxxxxx
7a 01 c5 54 da 41 z 1 27.29139 // Speed in knots
7a 02 f6 66 79 44 z 2 997.60876 // Altitude in feet
7a 03 e2 55 54 bf z 3 -0.829443 // Vario m/s ??
7a 04 f4 55 54 bf z 4 -0.829443 // Electric vario m/s ??

The documentation speaks about a quite minimalistic way of sending the data - in blocks of 5 bytes.
As I see it so is though each line 6 data pairs than in some way should resemble a float data.

The supplied example try to read 5 bytes at each "run" but that renders that not all data is processed, when I run it in a simulator do I read half the data before processing it further, resulting in garbage data.

Have any one found a way how to parse the UDP stream as it is above ?

Also - i can't se anywhere in the code some kind of synchronization to the beginning of a datablock , is that not necessary?

Thanks in advance for any insight in this thoughts.

Post Reply