I've ported MinimOSD to Remzibi's hardware

3689448888?profile=originalHello everyone. Recently I port the MinimOSD to the Remzibi OSD's harware, so a poor man can enjoy MinimOSD's convenience now (no need to modify APM's software anymore).

Because of the limited flash space of Atmega16, the code of OSD is slightly changed, and it is not compatible with Michael's original config tool. So I adapt the config tool as well.

The Remzibi's OSD uses Megaload bootloader, so please use the Megaload programmer to upload the firmware. (The config tool can also upload the firmware, but I have to admit that it is not quite good right now.)

Anyway, here is the firmware and config tool, and here is the source code.

Thank binzi for providing the hardware.

E-mail me when people leave their comments –

You need to be a member of diydrones to add comments!

Join diydrones

Comments

  • Developer

    Hello everyone,

     

    New minor bug:

    Satcount is not working with MAVLINK 1.0.

    Satcount shows satellites used by aircraft´s GPS. In APM Planner I can see them, so I think the problem concerns with Mavlinks statements (see below).

     

    Taking from git/ Tools/ ArdupilotMegaPlanner/ CurrentState.cs:

    In Mavlink 0.9 satcount refers to MAVLINK_MSG_ID_GPS_STATUS

    But in Mavlink 1.0, satcount is present in MAVLINK_MSG_ID_GPS_RAW_INT If you include satcount in this statement, satcount must work.

    So, in svn/ trunk/ OSD/ src/ MavlinkClient.cpp, line 158:

     #else        

    case MAVLINK_MSG_ID_GPS_RAW_INT:        

    {            

    osd_lat = mavlink_msg_gps_raw_int_get_lat(msg)/10000000;            

    osd_lon = mavlink_msg_gps_raw_int_get_lon(msg)/10000000;            

    //osd_alt = mavlink_msg_gps_raw_get_alt(&msg);            

    osd_fix_type = mavlink_msg_gps_raw_int_get_fix_type(msg);        

    }        

    break;

    #endif

    MUST BE:

    #else        

    case MAVLINK_MSG_ID_GPS_RAW_INT:        

    {            

    osd_lat = mavlink_msg_gps_raw_int_get_lat(msg)/10000000;            

    osd_lon = mavlink_msg_gps_raw_int_get_lon(msg)/10000000;            

    //osd_alt = mavlink_msg_gps_raw_get_alt(&msg);            

    osd_fix_type = mavlink_msg_gps_raw_int_get_fix_type(msg);

    osd_satellites_visible = mavlink_msg_gps_raw_int_get_satellites_visible(msg);  // Included here for MAVLINK 1.0     

    }        

    break;

     

    Thanks for your effort Hazy!

    Regards from Spain,

    Dario.

  • I re-flashing the character set.  The good news is that it fixed the 'all zeroes' problem.  The bad news is that I still have to 'reset' the minimOSD on each powerup to get it past the 'character set' issue.  I think this last issue is known and is being worked on.

    Yay.. finally have a working minimOSD!!

  • Hi!

    I have crashes too. So I downloaded source code, open it in Visual Studio and tried to run in debug. It shows error on one line. I has to do something with CheckedListBox component. I commented that line out :-O and crippled version of utility was running. I was able to upload hex file to OSD and upload charset (after I clicked to continue after runtime error :) ). Then I connected Remzibi to APM and it is working!!!!! I'm not able to change layout, but I don't care, default one is OK for me.

    Working well with APM1, Arduplane 2.40 mavlink1.0

    You could probably be able to upload new firmware with older config tool, but I have not tried.

  • I'm getting all zeros here.  Didn't check the flight mode, but I'll check tonight.

  • Moderator

    Confirmed, crashes for me too, Win 7 x32

  • Developer

    Hi!

    New ConfigTool.exe does not work for me. Open file makes an error and program goes down.

    I have tried it on two machines, one with Windows 7 x32 and the other with Windows 7 x64, on both PCs occurs the same.

     

    Regards from Spain,

    Dario.

  • Ok, tested new firmware, something is not right. I got all zeros (GPS, altitude etc). Only thing that shows up is flight mode. It changes when I switch radio, so connections is right. I use latest 2.40 version and APM1.

    Also ADC does't work right. ADC shoved some 495, I tried to input voltage (which vas 7.65), first, it allows only integer, but then it shoved on osd 0.02v, if I inputed 765 in Value 1, than voltage shoved  0.20V.

  • vilnis: I'm a little curious about the reason for using Remzibi ADC instead of APM to monitor the motor battery. But since you want that, I will add it a moment later.

  • Thank's will try at evening. Also, motor battery from Remzibi ADC instead of APM port also can be nice. (Of course, I can now use RSSI for motor battery anyway :D)

  • Hello everyone,

    I'm sorry for my late response, partially because I'm kinda busy recently.

    Anyway, I upgrade the firmware and config tool today, now it support MAVLink 1.0, video voltage through ADC, and relative altitude. The RSSI through ADC should work, but I haven't test it yet because I really don't know how to hack my Spektrum AR7000/AR6100 receivers.

    The old config is not compatible, please re-config the OSD. Besides, the ADC needs calibration:

    1. Go to Options/Config ADC menu.
    2. In the config dialog, first choose the function, and choose the ad channel
    3. input the actual voltage value in "Value 1"
    4. click the "Reading 1" label, a integer will be displayed in the text box
    5. (optional) change voltage to another value, input in the "Value 2", and click "Reading 2" label. For video voltage, leaving Value2/Reading2 to 0 is ok.
    6. click "OK"
    7. click "Write to OSD"

    Please feel free to comment here if there is any problem with the new firmware.

This reply was deleted.