Minim OSD und MultiWii

Status
Nicht offen für weitere Antworten.

wolkenloser

Erfahrener Benutzer
#21
Hi, kann man GPS nicht direkt am Rushduino anschließen ?
Der Hauptgrund für ein OSD ist doch das ich sehen kann wie weit das Modell von mir entfernt ist.

Kann dann Position Hold noch funktionieren (für den Failsave)

Gruß
Wolke
 

zara

verbastelprofi
#22
Da das Rushduino Board (wie das MinimOSD auch) auch auf einem 328p basiert, hat es auch nur eine serielle Schnittstelle - wenn du dort ein GPS anschließt, kannst du es nicht mehr mit dem MultiWii verbinden. Selbst wenn das ginge, könnte das MultiWii Board dann nicht auf die GPS Daten zugreifen, du müsstest also auf RTH/Position Hold verzichten. Das Rushduino is wirklich nur ein OSD (On Screen Display) im engeren Sinne - es kann keine zusätzlichen Flight Controller Aufgaben übernehmen.

Das ist ja auch eigentlich der Clou an der Geschichte, du bekommst ein OSD welches sehr günstig ist da es die vorhandenen Sensoren vom MultiWii benutzt und daher keine Eigenen benötigt.

GPS Anbindung via I2C ist nicht allzu schwierig, dazu benötigt man einen zusätzlichen 328p (z.B. einen Pro Mini) auf dem man die GPS-I2C-Software von EOSBandi aufspielt. An diesen schließt man seriell das GPS an, und verbindet ihn über den I2C Port als Slave (wie eine externe IMU) mit dem MultiWii.

Alternativ sucht man sich einen ATmega1280 oder 2560 basiertes MultiWii Board - diese unterstützen zwei gleichzeitige serielle Verbindungen. So kann man Rushduino und GPS gleichzeitig und ohne Umwege direkt ans MultiWii anschließen.
 

Benzel

Neuer Benutzer
#23
Hallo Zara,

Habe mir auch den MinimOSD "clone" gekauft, bekomme die Rusduino code aber nicht zum laufen:(. In der tekst lesse ich "musste eigentlich nur den Pin für chip select abändern"?

Leider ist mein Deutsch nicht so gut, was hast du geandert ist das soft oder ein hardware pin?

Hoffe du kanst mir helfen:).
 

zara

verbastelprofi
#24
Hallo Ben,

Ich habe die Version Rushduino_OSD_MCE_V8.rar benutzt. Dort musste ich in der Datei Max7456.ino die folgenden Änderungen machen:

In Zeile 5 & 6 den folgenden Code:

Code:
#define MAX7456SELECT 10//ss  
#define MAX7456RESET 9//RESET
ersetzen durch:

Code:
#define MAX7456SELECT [COLOR=#ff0000]6[/COLOR]//ss  
#define MAX7456RESET [COLOR=#ff0000]10[/COLOR]//RESET

Und in Zeile 211 und 212 den folgenden Code:

Code:
pinMode(10,OUTPUT);
pinMode(10,HIGH);
ersetzen durch:

Code:
pinMode([COLOR=#ff0000]MAX7456SELECT[/COLOR],OUTPUT);
pinMode([COLOR=#ff0000]MAX7456SELECT[/COLOR],HIGH);
Das sollte schon alles gewesen sein.
 

zara

verbastelprofi
#25
Ach, und eine Sache natürlich noch: Um richtig zu laufen muss auf das MinimOSD der Zeichensatz vom Rushduino aufgespielt werden. Die Anleitung dazu gibt es von Rushduino. Allerdings müssen im entsprechenden Programm zum hochladen des Zeichensatzes (RushOSD_CP_v1_0.ino) auch alle Referenzen von Pin 10 auf Pin 6 abgeändert werden.
 

Benzel

Neuer Benutzer
#26
Hallo Zara,

Wir haben pin 6 hardware massig geandert nach pin 10 und jetzt functioniert die orginele Rushduino software:).
(Wir haben ein clone board mit code MinimOSD V0.1) Der rest pin haben wir aber nicht geandert?
 

Dr. fite

Erfahrener Benutzer
#27
Das ist ja wirklich mehr als interessant hier!
Wenn ich an mein CRIUS Board das I2C-GPS wie auf dem Bild anschließe, dürfte das doch mit dem MinimOSD und rushduino-code wie oben beschrieben über die TTL-Pins machbar sein, oder?!
BTW: Ist nicht der FTDI-Anschluss auch ein serieller? Könnte man dann nicht einfach auch den für das MinimOSD verwenden? Und dann umstecken, wenn man mal wieder was an der Software machen muss?
criussegps2.jpg
 

zara

verbastelprofi
#28
Hallo, das MinimOSD am FTDI zu betreiben ist kein Problem, wie Du sagst ist's ein einfacher serieller Anschluss. Für Softwareupdates einfach abziehen und FTDI drauf. Mit I2C GPS hast Du dann ein vollwertiges OSD und durch MultiWii auch (in den Grezen des momentanen MultiWii codes) RTL, Position Hold etc.
 
#29
hallo zusammen!

Ich habe heute meinen minimOSD clone bekommen und gleich mal Rushduino wie hier beschrieben, allerdings die letzgültige Version "beta 0.7 Rushduino_OSD_MCE_V9.rar" aufgespielt.
Diese Version arbeitet bereits von Haus aus mit MultiWii2.1 zusammen.

D.h. auf MultiWii Seite sind keinerlei Codeänderungen nötig, lediglich die LCD-Settings wie schon hier im Thread beschrieben reichen aus.

Auf der Werkbank sieht alles mal ganz brauchbar aus;
künstlicher Horizont, Modusanzeige, Kompass, etc alles vom Multiwii abgegriffen

Und das um 20 EUR und ein paar Gramm leicht...
Nicht schlecht, jetzt muß sich das ganze nur noch in der Praxis beweisen.


Gruß aus Wien,
Christian
 

zara

verbastelprofi
#30
Hallo Christian,

Ich vermute dein Problem liegt daran, dass sich die Hardware zwischen MinimOsd und Rushduino leicht unterscheidet. Um den OSD-Chip der MinimOsd Hardware anzusprechen, muss im Rushduino Sourcecode der Chip Select pin geändert werden. Ich hatte das ein paar Beiträge weiter oben (#24) beschrieben.

In den Code der Rushduino v9 habe ich gerade mal kurz reingesehen, es sieht so aus als wären noch die gleichen Änderungen erforderlich - an der Datei Max7456.ino scheint sich nichts oder nichts wesentliches geändert zu haben. Ich hab es jetzt auf die schnelle aber nicht getestet.

Was Du auch nicht vergessen darfst, ist den Zeichensatz für Rushduino auf die MinimOSD Hardware aufzuspielen - siehe dazu Beitrag #25.

Ich hoffe das hilft Dir weiter, wenn nicht meld Dich gern noch mal.

Grüße,
Zara
 
#31
hab meinen vorigen Beitrag modifiziert, da ich unmittelbar danach das OSD zum Laufen bekommen habe.
Es lag tatsächlich an den Änderungen in der Max7456.ino
Ich hatte diese zuvor nur in der anderen Datei die man zum Aufspielen des Zeichensatz benötigt geändert - hab dann aber doch nochmal genauer gelesen.

Jetzt funzts und ich bin begeistert. Den Strom/Spannungs-Sensor noch deaktivieren, denn den gibts ja nur am originalen Rushduino und ich bin zufrieden.
Leicht, billig und alle Sensordaten direkt von der FC. Was will man mehr?

Danke für deine Hilfe, zara. Bin dann wohl mehr oder weniger zeitgleich selbst auf mein Problem draufgekommen...

Vielleicht mach mir mal die Arbeit und schreibe einen kleinen Walkthrough ;)

Gruß aus Wien,
christian
 

zara

verbastelprofi
#32
Sehr schön! Ich hab die Tage mal meine I2C GPS Anbindung an das CRIUS board zum laufen gebracht, hatte aber noch keine Zeit mich um's OSD zu kümmern. Gut zu hören das mit der neuen Version für MultiWii 2.1 keine weitreichenden Änderungen mehr nötig sind.

Da brennt es mich langsam in den Fingern, meinem FPV-Kopter ein lang ersehntes Update zu verpassen :D
 
#33
bez. Spannung; Es sollte ja angeblich auch möglich sein am Rushduino OSD über den seriellen Port die Spannung am MultiWii auszulesen, die dort über den analogen Port per Spannungsteiler gemessen wird. Hab das allerdings bei meiner FC noch nicht praktisch umgesetzt.
Auch Strom-Messung ist angeblich über einen Shunt möglich, weiß ich aber auch noch nicht wirklich was drüber.

Wär super wenn ich da mit meinem strom-sensor vom flytron.com SimpleOSD-XL was anfangen könnte...

Hat jemand mehr Infos ob/was auf Rushduino Seite diesbez. angepasst/geändert werden muß?
 

Bamfax

Erfahrener Benutzer
#34
Wäre es möglich das Gleiche auch an einem 32u4 Board zu machen, also an einem NanoWii oder MicroWii (hab mir gerade das NanoWii geholt und das fliegt sich einfach richtig schön). Lt. Flyduino ist ja i2c GPS möglich und wenn ich das richtig verstehe, gibt es auch eine serielle UART Schnittstelle (wohl die, wo der Spektrum Satellit reinkommt), über die GPS oder BT angeschlossen werden können - also evtl auch das OSD? Das FTDI gibt/braucht es da ja nicht, da der 32u4 das nativ kann. Vor einem 2560 Board schrecke ich gerade noch etwas zurück - bin von NanoWii verwöhnt ;)

p.s.:
Also wenn ich das richtig sehe, dann sollte es so gehen. Der Spektrum kann als serial1 genutzt werden, also hoffentlich auf Anschluss von einem OSD möglich (hab aber noch keine thread gefunden, wo jemand das wirklich gemacht hat):
http://fpv-community.de/showthread.php?13226-Bluetooth-f%FCr-NanoWii/page3

Und über den I2C Anschluss dann eben das GPS:
http://www.rcgroups.com/forums/showthread.php?t=1671968&page=6

Gruesse,
Olli
 
#35
ich sehe keinen Grund, warum das minimosd mit rushduino wie hier beschrieben am 32u4 nicht funktionieren sollte.
du brauchst nicht mehr als 5V, GND, Rx, Tx.

Einzig - wie auch am Arduino Pro Mini: Da nur eine Serielle vorhanden ist, kann man eben leider nur entweder OSD oder BT oder (serielles GPS) anschliessen.

Ok, GPS lässt sich durch I2C umgehen, was ohnehin die elegantere Variante gegenüber seriell ist.
Bleibt noch BT: Nun, der Hauptanwendungsfall für BT ist wohl das PID-tuning.
Das geht grundsätzlich auch über das OSD, hab ich aber leider noch nicht so wirklich hinbekommen, vielleicht hat da mal wer einen Tipp.
Vermutlich wurde das noch nicht ganz an MultiWii 2.1 angepasst...

Gruß aus Wien,
Christian
 

Ronny1407

Erfahrener Benutzer
#36
So ich muss den Thread noch mal hochholen. Ich hatte mir nach den Tipps hier im Thread auch das MinimOSD geholt und erfolgreich umgeflasht.

Es ist klar, dass die Werte für RSSI, Amp und Spannung nicht stimmen, hier werde ich den Code so umstellen dass die Spannung aus den Telemetrie-Daten gelesen werden. AMP und RSSI können erstmal außen vor bleiben, das blende ich aus.

Ein Problem gibt es aber noch: der Künstliche Horizont kippt ab und zu mal nach rechts, obwohl der Copter nicht bewegt wird. Habt ihr das Problem auch?

Gruß
Ronny
 

Bamfax

Erfahrener Benutzer
#37
Hi,

hatte gestern auch endlich mal Zeit, mit meinem MinimOSD warmzuwerden, nachdem das nach vier Wochen endlich angekommen ist. Jetzt läuft es auch an der NanoWii:

- Der Serial 1 am 32u4 funzte nicht. Jetzt laufen Serial 0 und 1 gleichzeitig. Hab den Branch von Ronco eingespielt: http://www.multiwii.com/forum/viewtopic.php?f=7&t=2043. Danke Ronco und justk1w1.
- Hab das neue Rushduino OSD Release von modelci/oktaygulmez genommen, nachdem JohnyGab offline ist. Funzt prima soweit und hat ne Menge Bugfixes. Wegen mir sollte die Türkei aufgenommen werden :)
https://code.google.com/p/osd-max7456-multiwii/
- Die lcd_* Zeilen hab ich nicht mehr gebraucht, sind deaktiviert bei mir. Ist das die MW 2.1 oder warum?

Cheers,
Olli
 

Bamfax

Erfahrener Benutzer
#38
Hab mal ein Video vom MinimOSD mit der aktuellsten RushduinoOSD-modelci-Firmware hochgeladen. zzZ ;) (GPS, current sensor und RSSI sind nicht vorhanden.) Man sieht ganz schön die Bugfixes von modelci, z.B. gleich auf der ersten Seite die richtige Beschreibung für den Weg ins Menü. Die Batteriespannung kommt auch per Serial rüber. Dafür waren noch ein paar kleine Anpassungen an der Firmware notwendig. Die Hälfte dafür ist schönerweise schon auskommentiert im Code vorhanden gewesen.
Ansonsten stört mich eigentlich nur, dass der künstliche Horizont im Vergleich zur Original-FW so langsam aktualisiert wird. Sonst ist das OSD echt prima, besonders wenn man den Preis bedenkt.

http://vimeo.com/52278772
 

Benzel

Neuer Benutzer
#39
Hallo, habe gerade versucht die neue firmware hoch zu laden aber bekomme folgende error;

GlobalVariables.h:15: error: 'Metro' does not name a type
osd_max7456_multiwii_V1_1_MW2_1.cpp: In function 'void loop()':
osd_max7456_multiwii_V1_1_MW2_1:78: error: 'MetroTimer' was not declared in this scope

Muss ich noch etwas andern in der config.h?
 
Status
Nicht offen für weitere Antworten.
FPV1

Banggood

Oben Unten