AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |
Back to Blog
Flightgear stuck on loading scenery4/11/2024 ![]() \Network\generic.cxx:644: Error opening channel communication layer. \io\sg_serial.cxx:57: Error opening device: COM8 \serial\serial.cxx:88: Error opening serial device "COM8" The system cannot find the file specified. \fg_io.cxx:95: Parse I/O channel request: generic,serial,in,30,COM8,9600,Arduinoserialinput as you suggested and got the error below (slightly different) but I think I'm missing something simple in the steps to get the Arduino and FG to talk. Thanks for the reply ludomotico, yes I think I did spot the 'bi' issue you're talking about but I had to try it in case there had been an update. Volador Posts: 1091 Joined: Tue 4:58 pm Callsign: Volador, G-VLDR Version: 2020.4 OS: Windows 10, 64 bit ![]() \fg_io.cxx:374: I/O Channel config failed. \Network\generic.cxx:644: Error opening channel communication layer.ġ6.54 :io. \simgear\io\sg_serial.cxx:57: Error opening device: \COM8ġ6.54 :io. \serial\serial.cxx:88: Error opening serial device "\COM8" The system cannot find the file specified.ġ6.54 :io. \generic.cxx:762: Reading communication protocol from Path "C:/Program Files/FlightGear 2020.2.1/data/Protocol/Arduinoserialinput.xml"ġ6.54 :io. \fg_io.cxx:95: Parse I/O channel request: generic,serial,bi,30,\COM8,9600,Arduinoserialinputġ6.54 :io. I tinker rather than program so please explain any pointers you might have about the COM port, it seems this is the sticking point in the chain, thanks in advance. So far FG does not respond to inputs and as suggested in another post I found a couple of lines in fgfs.log (trimmed below). I've tried your advice to dnlmsr (unplugging/com port name etc - Arduino is on COM8 by the way) I have a simple sketch for flight controls and also xml protocol and serial monitor shows changing values when the sketch is running. I've been following your discussion (If this should be a new topic please let me know) and I'm also experimenting with Arduino Mega, Win7 and Flightgear (Nightly 20202.1) and I've picked up on an error in the log not mentioned in the thread (as far as I can tell). I'm not familiar with the arduino uno specifically, but if it doesn't support multiple uarts, then there are other boards (like the mega) that have this capability and wouldn't cost much more. FlightGear should have no problem supporting different messages, different rates, or a different IO direction on separate serial ports. That's extra cabling I realize, but then you can have FlightGear send messages to the arduino via one port, and receive messages back via another port. One idea for your ardiuno project is to use 2 serial ports. ![]() The beaglebone sends back actuator commands. I have a uav flight controller that I can connect directly to flightgear via ethernet (in my case I run the uav flight controller code on a beaglebone, ) FlightGear sends gps, imu, airdata, and pilot inputs to the beaglebone. That sets up a situation where FlightGear and the arduino are fighting over the same variables. Also it looks like you are sending and receiving the same packet definition. I think you'd be ok if the arduino simply received data from FlightGear. It has been a very long time since I've used the serial port communication feature of flightgear, but if I recall, it did not support bi-directional communication. instrumentation/magnetic-compass/indicated-heading-deg generic=socket,in,5,55005,udp,device_status_controltest If you have a Ethernetshield for your Adroino you can use udp. Ludomotico Posts: 1269 Joined: Tue 2:01 pm Version: nightly OS: Windows 10 This is perfectly doable using nasal, but in my opinion is much more difficult than using a dedicated driver. For example, you can smooth the input, reject spurious inputs or manage several input modes (such as a switch COM1/COM2 in your panel and a single knob to select the frequency you are really setting) You can configure the communication much easier using the python script than if you connect directly the arduino to flighgear. In this case, the Python script acts as a driver and it can be as smart as you want it to be. My "solution" was the arduino does not connect directly to flightgear using a serial port, but you use a proxy (in my case, python), and this proxy connects to FlightGear using UDP (from Flightgear to the external word) or telnet (from the external word to Flightgear)Ĭode: Select all Arduino Python script -telnet-> FlightGear Also, I was never able to make the input section of a protocol file to work. If I recall correctly, I faced the same problem in the communication between an arduino and flightgear.
0 Comments
Read More
Leave a Reply. |