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
Blake,
I have some questions:
1. Could You tell me how to connect OSD with APM because I don't see any informations about connection type(which port, cable etc) ?
2. "And finally add the following file into your APM folder:" - APM folder means not modified ArduPlane 2.24 ?
Can you supply any names or links to those modifications? I'm hoping to jump into this project this winter, and I'll be headed straight toward what you've got figured out! I love what you've got here :)
Nothing special needs to GPS, however, my code has been modified by others to work with the new version of APM.
Blake,
Did you do some special programming for your GPS? I'm using the Mediatek MT3329 but it seemed I cannot make it work; there is no satellite, arrow nor lat/long data displayed on the screen.
Link here to Arduino Pro mini processing Mavlink for the Remzibi OSD. Works on ACM and APM.
http://diydrones.com/profiles/blogs/using-a-remzibi-osd-with
I know there will probably be a mavlink problem.
It would be worth it to put another Arduino in the chain to decode the mavlink.
I really want to artificial horizon. That would be cool to have. Saving a little weight and space not needing a second GPS is good. The horizon is a win.
I appreciate your work.
Greetings,
Hows this project going? Did it move to somewhere else?
I use USB port 0 to send GCS_ MAVLINK protocol to HK_GCS on the bench and plan to send TM to Xbee in the field /air.
Port 3 TM/OSD. GND, Tx & Rx are split to Remzibi OSD & Xbee Pro, 5v power goes to Xbee only with a Plug-in-to-Fly jumper.
1.3 Ghz Video TX is on 12v buck boost BEC on a 1400 mAh Lion with OSD & Camera on 7v linear power bus.
I have all sensors enabled on OSD with 2 lines for any messages
.Line 1 gets over written with blanks where AH columns are above. (I need to report this issue to HK)
Ublox is sending NAV-DOP data, It is setup for 3D/DGPS fix using WAAS.
Also Camera PAN on CH_5 (gear) and TILT on CH_6 (aux2) and MODE on CH_7 (flaps)
CH_5 can switch OSD on-off and drop down gear or package.
CH_6 can force a Fail-Safe when throttle is at 0 and Radio power is on.
MAVLINK is not sending ArduPilot MODE messages when I switch CH_7 MANUAL, STABILIZE & AUTO
it reports Manual, Guided, correct ArduPilot modes are sent to OSD.
New data types: fix_type, dgps_fix, p_dop, & h_dop still need some work to get MAVLINK to see them (hdop is still used for other gps MTK & NEMA)
I willl get ASCII messages to divert to OSD too.