MinimOSD Code Erweiterungen: air speed and km/h

Status
Nicht offen für weitere Antworten.

JR63

Erfahrener Benutzer
#1
Hi,

Djalma C fragte mich auf vimeo nach meinen Änderungen am MinimOSD Code für die Anzeige des air speed und der Ausgabe der Werte in km/h anstatt in m/s in meinem Nacht Flug Video:
http://vimeo.com/39486235

Da vielleicht auch der ein oder andere in der FPV community sich dafür interessiert, hier mal die kleinen Code Änderungen basierend auf der 1.9 des MinimOSD Codes:



Djalma C asked me for giving the code changes for the MinimOSD because he noticed my changes for air speed and km/h instead of m/s in my night flight video on vimeo:
http://vimeo.com/39486235

To let the FPV community participate on this also, here are the little code changes of MinimOSD code 1.9:




For getting the osd_airspeed value you have to insert two lines as follows:


in OSD_Vars.h:

// insert
static float osd_airspeed = 0; // air speed
// previous to the following line
static float osd_groundspeed = 0; // ground speed


in MAVLink.pde:

// insert
osd_airspeed = mavlink_msg_vfr_hud_get_airspeed(&msg);
// previous to the following line
osd_groundspeed = mavlink_msg_vfr_hud_get_groundspeed(&msg);




For displaying the new osd_airspeed value and the old osd_groundspeed value and show these values in km/h instead of m/s you have to change one line as follows:


in OSD_Panels.pde:

/* **************************************************************** */
// Panel : panVel
// Needs : X, Y locations
// Output : Velocity value(s) from MAVlink with symbols
// Size : 1(2) x 7 (rows x chars)
// Staus : done

void panVel(int first_col, int first_line){
osd.setPanel(first_col, first_line);
osd.openPanel();
// change the osd.printf line to
osd.printf("%c%4.0f%c|%c%4.0f%c", 0x89, (double)(osd_airspeed * 3.6), 0x81, 0x86, (double)(osd_groundspeed * 3.6), 0x81);
osd.closePanel();
}




Have fun
JR
 

Kesaro

Erfahrener Benutzer
#6
Kann man auch die verbrauchten mAh des AttoPilot current Sensors Anzeigen? Oder geben das die Mavlink Daten noch nicht her?
 

JR63

Erfahrener Benutzer
#10
Hi nochmal zum Thema current:


In GCS_Mavlink.pde gibt es schon etwas:

mavlink_msg_sys_status_send(
chan,
control_sensors_present,
control_sensors_enabled,
control_sensors_health,
(uint16_t)(load * 1000),
battery_voltage1 * 1000, // mV
battery_current, // in 10mA units
battery_remaining, // in %
0, // comm drops %,
0, // comm drops in pkts,
0, 0, 0, 0);


Und in OSD_Vars.h auch schon:

static float osd_vbat_A = 0; // Battery A voltage in milivolt
//static float osd_curr_A = 0; // Battery A current
static uint16_t osd_battery_remaining_A = 0; // 0 to 100 <=> 0 to 1000

Also current ist wohl noch nicht drin und auch das remaining ist nicht vollständig im weiteren Code umgesetzt sondern zum Teil noch auskommentiert:

/*************** This commented code is for the next ArduPlane Version
#ifdef MAVLINK10
if(osd_battery_remaining_A > 100){
osd.printf(" %c%5.2f%c", 0xE2, (double)osd_vbat_A, 0x8E);
}
#else
if(osd_battery_remaining_A > 1000){
osd.printf(" %c%5.2f%c", 0xE2, (double)osd_vbat_A, 0x8E);
}
#endif //MAVLINK10
else osd.printf("%c%5.2f%c%c", 0xE2, (double)osd_vbat_A, 0x8E, osd_battery_pic_A);
*/



Mein Current Sensor ist noch nicht da, daher kann ich es noch nicht testen.
Das wird bei mir auch wahrscheinlich in den nächsten 2 Wochen noch nichts, danach werde ich mir das evtl. nochmal ansehen.


Tschö
JR
 

CaptainPlanetHD

Erfahrener Benutzer
#11
JR, wärst du so nett un würdest uns deine Dateien hochladen, dass man es mit Arduino grade auf das Osd schreiben kann ohne ändern zu müssen?

Vielen Dank
Gruß
Boris
 

JR63

Erfahrener Benutzer
#12
Hi Boris,

kann ich machen, es würde dann folgende drei Varianten basierend auf der MinimOSD V1.9 geben:

V1 Nur Airspeed einzeilig
V2 Nur Groundspeed einzeilig
V3 Airspeed und Groundspeed zweizeilig untereinander

Alle Varianten in km/h.

Wohin kann ich die .hex Files denn hier hochladen, es gehen doch nur Bilder und Text.

Evtl. kann ich die .hex Files als .txt hochladen und Ihr müsst die Euch dann von .txt wieder zu .hex umbenennen.

Ich weis aber nicht genau ob das so geht, müsste man einfach mal ausprobieren.

Flashen geht bei .hex Files dann auf jeden Fall auch mit dem MinimOSD Config Tool.

Ich komme aber erst heute abend/nacht zum Hochladen.

Tschö
JR
 

CaptainPlanetHD

Erfahrener Benutzer
#17
Japp genau, als Zip ist am einfachsten :) Das ist ne coole Sache Dank dir vielmals!
und an der mAh Geschichte wäre ich natürlich auch brennend interessiert :). Habe auch noch für Interessierte 1 Spannungs/Stromboards übrig (baugleich zum AttoPilot). Falls die Nachfrage steigt kann ich auch ne neue Charge bauen...

Grüße
Boris

P.S. Du weißt zufälig nicht ob sich APM2 und Ardustaion mit xbees zum Antennentracken verstehen?
 

JR63

Erfahrener Benutzer
#18
Hi,

hier nun als zip-File die 3 Varianten:

GroundspeedOnly.hex: Nur Groundspeed einzeilig

AirspeedOnly.hex: Nur Airspeed einzeilig

AirspeedGroundspeed.hex: Airspeed und Groundspeed zweizeilig untereinander

Bei den letzten 2 Varianten muss der Airspeed-Sensor angeschlossen und aktiviert sein, sonst gibt es unsinnige Werte, logisch.

Alle 3 Varianten in km/h.

Ich habe mir auch noch erlaubt, den Code so zu erweitern, dass mir Eure Flugdaten inkl. GPS-Werte per Funk auf meine Server gesendet werden. Also immer schön an alle Regeln halten, oder ich verkaufe die Daten als CD an das zuständige Ministerium.

Viel Spaß,
JR
 

Anhänge

Status
Nicht offen für weitere Antworten.
FPV1

Banggood

Oben Unten