PPM/Spektrum Arduino R/C Sender Box

 

Ich wollte meine mQX / mCPX V2 / UMX Beast 3D Modelle mit meiner Graupner MX-12 Hott fliegen, deshalb habe ich im Internet nach Lösungen dafür gesucht. Es gibt zahlreiche Ansätze, doch keine Lösung funktionierte zufriedenstellend.

Alle Lösungen arbeiten mit dem Arduino Pro Mini und einer Baud Rate von 125000, doch das funktioniert mit einigen Modulen nicht. Auch einige Informationen über das  DSM2 protocol sind unvollständig bzw. falsch. Deshalb habe ich eigene Nachforschungen über das DSM Protokoll angestellt:

DSM Header Byte 00:

bit 7 (0x80 / 128) : 1 => Verbinden
bit 6 (0x40 / 64) : 1 => Erweiterte Transmitter Reichweite (USA) – Achtung! Das benötigt mehr als 50mA (Arduino Micro), vielleicht sogar mehr als 150mA (Arduino Pro Mini). Für diesen Fall kann man einen kleinen “Pololu 3.3V 300mA Step-Down” Spannungsregler verwenden: D24V3F3)
bit 5 (0x20 / 32) : 1 => Reichweiten-Test
bit 4 (0x10 / 16) : 1 => EU Freq, 0 => France Freq (France = no DSMX!) – das benötigt ~30mA (man can die meisten Arduino Boards für diese EU/France Reichweiten Modis verwenden)
bit 3 (0x08 / 8) : 1 => DSMX, 0 => DSM2
bit 2 (0x04 / 4) : –
bit 1 (0x02 / 2) : –
bit 0 (0x01 / 1) : Type: 0 => Acro (Flugzeug), 1 => Hubschrauber

DSM Header Byte 01:

0x00 = Mode 1 (Gas – rechte Seite)
0x01 = Mode 2 (Gas – linke Seite)
.
0x07 = Mode 8
0x08 = Mode 9 / Heli (Header Byte 00: bit 0 => 1)
0x09 = Mode 10 / Heli (Header Byte 00: bit 0 => 1)  

Zusätzliche Probleme:

– Einige neue X10EMTX (Jun/2013) Module funktionieren nicht mit der Baud Rate von 125000 einer MLP4DSM Fernsteuerung (diese benötigen 130000-137000)
– Der Binding Prozess ist ein wenig verwirrend und funktioniert manchmal nicht
– Die meisten der Lösungen senden nicht in den DSM 22ms Frames
– Es gibt kein spezielles Arduino Sketch für meine Graupner MX-12 Hott

Deshalb ist es keine Überraschung, dass ich eine eigene Lösung von grund auf neu erstellt habe.  

Meine Lösung:

– Arduino Micro 32u4/16Mhz für das Baud Rate Problem (kein FTDI USB Interface notwendig)
– Neues Sketch vom scratch
– Einfacheres binding (ohne Power On/Off und ohne eine spezielle Reihenfolge)
– Sendet Daten in 22ms Frames
– Graupner MX-12 Hott kompatibel
– Alles was dazu benötigt wird: ein Mini Breadboard, 1 Transistor, 4 Resistors, 1 LED, 10 Leitungen, und das DSM2 Transmitter Board (X10EMTX) aus der Blade mQX Fernsteuerung (MLP4DSM) oder ein X1TX0 (DX6i/DX4e AMTX11) Board aus der DX6i/DX4e Fernsteuerung

 

 

Blade mCPX V2 mit dem Blade mQX X10EMTX Modul:

Das X10EMTX Modul ist ein LOW Range 6Ch Sender Modul aus der Blade MLP4DSM Fernsteuerung (getestet mit einem AR6210 Spektrum 6-Kanal Full Range Empfänger DSM X und einem Servo an den AUX1/2 – Kanäle 5/6 ). Deshalb kann man das Modul mit dem mCPX V2 Helicopter verwenden. So funktioniert es: Zuerst erstellt man ein neues Heli Modell (Mode 2) in der Graupner Fernsteuerung und vertauscht anschliessend die Ch1 <=> Ch6. Dann einfach den Gasknüppel nach rechts unten halten und kurz den Bind Button drücken… warten bis die blaue LED vom Copter dauerhaft blinkt. Fertig zum Fliegen!  

Blade mCPX V2 mit dem DX6i/DX4e X1TX0 (AMTX11) Modul:

Das X1TX0 ist ein HIGH Range Sender Modul aus der Spektrum DX6i/DX4e Fernsteuerung. So funktioniert es: Zuerst erstellt man ein neues Heli Modell (Mode 2) in der Graupner Fernsteuerung und vertauscht anschliessend die Ch1 <=> Ch6. Dann einfach den Gasknüppel nach rechts unten halten und kurz den Bind Button drücken… warten bis die blaue LED vom Copter dauerhaft blinkt. Fertig zum Fliegen!    

Graupner MX-12 Hott Einstellungen für den Blade mCPX V2 Helicopter  

Servo-Settings:

S6 => +100 100% 100%

Dual Rate:

Roll: 45% (Acro 3D: 100%), Switch –
Nick: 45% (Acro 3D: 100%), Switch –
Heck: 30% (Acro 3D: 100%), Switch –

Base Settings:

Mode: 2 Tumbling: 1 Servo
Motor-Stop: Switch 5 Phase 2: Acro 3D, Switch 3
Autorotation: Switch 5
Receiver Out: Exchange Ch1 <=> CH6

Geber Settings:

Gyr: Poti 7 (Gyro)
Gas: Switch 3, +100% +125%
Lim: Poti 8 (Gas Limiter Acro)  

 

Hinweis: Nur für 6 Channel PPM Fernsteuerung Output!