I finally got my mods to a point where I'm comfortable with others testing. I've only been using it with XPlane seen as it is so dang cold and snowy outside. You need to define OSD_PORT and OSD_MODE_CHANNEL. OSD_MODE_CHANNEL will allow you to assign a toggle switch to turn on and off the OSD overlay while in the air.
Some of the features included:
- Auto-home saving from init_home()
- Distance and direction to home
- Artificial horizon
- GPS LAT & LONG
- Control mode and next waypoint + distance (working on relaying takeoff, land, etc messages)
- Overlay on/off via Tx switch
Here are the Remzibi Mods:
+----------------+
| APM_Config.h |
+----------------+
#define OSD_PROTOCOL OSD_PROTOCOL_REMZIBI
#define OSD_PORT 3
#define OSD_MODE_CHANNEL 7
+---------------------+
| ArduPilotMega.pde |
+---------------------+
Medium loop, case 3:
#if OSD_PROTOCOL != OSD_PROTOCOL_NONE
print_osd_ahrs();
#endif
Slow loop, case 1:
// Output OSD Data slow loop
#if OSD_PROTOCOL != OSD_PROTOCOL_NONE
print_osd_data();
#endif
// Read OSD Mode Switch
#if OSD_PROTOCOL == OSD_PROTOCOL_REMZIBI
read_osd_switch();
#endif
+---------------+
| defines.h |
+---------------+
After GPS type defines:
// OSD type codes
#define OSD_PROTOCOL_NONE -1
#define OSD_PROTOCOL_REMZIBI 0
+----------------+
| commands.pde |
+----------------+
After line 251, bottom of init_home():
// Save Home to OSD
// ----------------
#if OSD_PROTOCOL == OSD_PROTOCOL_REMZIBI
osd_init_home();
#endif
And finally add the following file into your APM folder:
OSD_Remzibi.pde <-Version 1
OSD_Remzibi.pde <-Version 2
And for my Remzibi layout:
Comments
Can I skip power and RX of APM to TX of OSD?
Anyway, just tried th telem port and managed to get OSD to work through that .. nice !
Powering through the telem port does not work though.
Do we have a list of Remizbi ${M|I|SH} commands ?
By the way, as I am not using Xbee, I had to add the following in system.pde
#if GCS_PORT == 3
Serial3.begin(SERIAL3_BAUD, 128, 128);
#endif
#if OSD_PORT == 3
Serial3.begin(SERIAL3_BAUD, 128, 128);
#endif
Thanks,
I am not to understand something then : If you use the telem port for xbee, where to you plug the osd on the apm then ?
Above, you use serial3 by default which is the telem port, which other port can you use (i2c ??)