Chorus RF Laptimer – 4in1 PCB
Hier stelle ich euch eines meiner aktuellen Projekte vor. Ich halten den Artikel kurz und knapp aber geben natürlich alle wichtigen Infos, die man zum nachbauen benötigt.
Kurz vorweg: Wie bin ich dazu gekommen?
Ich war auf der Suche nach einem bezahlbaren und vor allem funktionalen FPV Tracker für mich und meine FPV Kumpels. Ich bin auf den Chorus RF Laptimer aufmerksam geworden. Dieses Projekt wurde von Andrey Voroshkov aus Minsk ins Leben gerufen. Спасибо за проект 😉 !
Jeder Pilot kann seinen eigenen Tracker bauen und auf dem Feld zusammen stecken, sodass mehrere Piloten getracked werden können. Ich hingegen wollte einen Tacker für 4 Piloten bauen, welcher nicht gestacked wird oder erst zusammengesteckt werden muss.
Per Chorus App oder LiveTime FPV Software kann der Tracker über Bluetooth/WiFi gesteuert werden. Alternativ kann man auch eine kabelgebundene Verbindung herstellen.
Da PCB Design etwas völlig neues für mich war, habe ich mich in den letzten Wochen und Monaten fast täglich damit auseinandergesetzt und mir das PCB Design größtenteils selbst angeeignet.
Nun zu meinem 4in1 Tracker. Mein Ziel war es einen möglichst günstigen und kleinen Tracker zu bauen. Ich habe nun V3.1 (mein drittes PCB, welches ich designed habe) fertigen lassen und möchte euch es nun mit euch teilen.
Facebook Community zum Chorus RF Tracker
Inhaltsverzeichnis
Features
- PCB für 4 Nodes (4 Piloten)
- einfach erweiterbar per JST XH Kabel (Piloten und mehr)
- 5 V Stepdown für Arduinos
- einstellbaren Stepdown für RX Module (verwende 3.5V um die Temperatur niedrig zu halten)
- 92 x 92mm Montage Löcher
- XT60 Anschluss
- 5V USB Eingang (zur Verwendung mit einer Powerbank)
- gesteckte Hardware – kann in wenigen Sekunden umgebaut werden
- Buzzer Ausgänge für jede Node
Was wird benötigt
- 1x 4in1 PCB (GitHub Projekt)
- 4x Arduino Pro Mini
- 4x RX5808 (with SPI mod)
- 12x 100 Ohm 1206 SMD Widerstand
- 4x 1k Ohm 1206 SMD Widerstand
- 1x 10k 1% Ohm 1206 SMD Widerstand
- 1x 1k 1% Ohm 1206 SMD Widerstand
- 4x 1n5817 smd 1A 20V do-214ac Schottky Diode
- 2x 6 Pin JST XH 90° Buchse
- 1x USB Breakout Board
- 2x Pin Jumper
- 1x DT-06 WiFi Modul
- 1x 5V Stepdown
- 1x einstellbarer Stepdown
- optional 6Pin JST XH Kabel um mehrere PCBs zu verbinden
- 1x XT60
- 4x 3Pin Pin Header Buchse
- 4x 6Pin Pin Header Buchse
- 4x 12Pin Pin Header Buchse
- 16x 2Pin Pin Header Buchse
- viele RM 2.54 Pin Header
PCBs bestellen
Du kannst das PCB in China bestellen:
- gehe auf FUSION PCB www.seeedstudio.com
- Lade die GerberFiles hoch (chorus_4in1_3.1_gerber_file.zip)
- prüfe die Einstellungen des PCBs
- Base Material: FR-4
- No. of Layers: 2
- PCB Dimensions: 100mm x 100mm
- PCB Quantity: 10 (you will get 10 identical PCBs – thats the minimum quantity)
- No. of Different Designs: 1
- PCB Thickness: 1.6mm
- PCB Color: Red
- Surface Finish: HASL
- Minimum Solder Mask Dam: 0.4mm
- Copper Weight: 1oz
- Minimum Drill Hole Size: 0.3mm
- Trace Width / Spacing: 6/6 mil
- Blind or Buried Vias: No
- Plated Half-holes / Castellated Holes: No
- Impedance Control: No
- Füge das PCB dem Warenkorb hinzu
- Bestellung absenden! Fertig!
- Teile unbenutzte PCBs mit der Community! =)
Software
Optionales Zubehör
- Kühlkörper für Stepdown
- Kühlkörper für RX5808 Module
- 1 Paar 2.4 GHZ Link (2x UART RF Wireless Transceiver Module + USB to TTL RS232)
- 1 Paar Ethernet Link (USR-TCP232-T2 RS232 Serial to Ethernet Module)
- 4x RS485 Link (Max485)
Software flashen
Um die Arduinos flashen zu können, benötigst du die Arduino IDE und einen FTDI Adapter. Flashe jeden Arduino immer im demontierten Zustand.
Lade dir die aktuelle Arduino Software aus dem Github Projekt herunter. Entpacke den Ordner und öffne die .ino Datei.
Schließe nun deinen Arduino Pro Mini an den FTDI an und dann an den Computer.
Der FTDI und Arduino werden über die gleichnamigen Kontakte verbunden (einfach den FTDI Adapter mit den Pins in die Löcher des Arduinos drücken und festhalten, während des flash Vorgangs.
DTR -> DTR
RXD -> TXD
TXD -> RXD
5V -> 5V
CTS -> CTS
GND -> GND
Jetzt musst du den korrekten Comport wählen, Arduino „ATmega328 (5V 16MHz)“ als Prozessor festlegen und als Board „Arduino Pro or Pro Mini“ auswählen.
Nun kannst du den Code hochladen. ?
Als letzten Schritt klickst du auf „Sketch“ -> „Hochladen„. Der Code wird nun kompiliert und auf den Arduino geschrieben.
Das PCB
Da Seeedstudio.com nur 5 $ für 10 Stück 10 mm × 10 mm verlangt, war mein Ziel, alle Komponenten auf ein 10 × 10 Board zu bekommen. Das war anfangs gar nicht so einfach, nachdem ich nun aber alle Komponenten steckbar gemacht hatte, habe ich alles unterzubekommen.
DipTrace Files / Gerber Files
Das PCB habe ich mit der kostenlosen 500er Pin Version von Diptrace erstellt. Mit dem Programm kann man sehr gut arbeiten. Leider ist die Bibliothek der Teile nur auf Standard Teile begrenzt, sodass ich nahezu jedes Teil selber neu angelegt habe.
Hier kannst du die PCB Dateien herunterladen
Schaltplan
Den Schaltplan habe ich natürlich größtenteils vom Chorus Projekt übernommen, jedoch komplett neu gezeichnet und für mein 4in1 Board angepasst.
Bluetooth Modul konfigurieren
Das Bluetooth Modul muss auf die Baudrate 115200 eingestellt werden. Dazu gibt es viele Anleitungen im Internet zu finden.
grobe Herangehensweise ist:
- HC05 Modul über FTDI Adapter an den Computer anschließen
- Arduino IDE öffnen, COM Port auswählen und „Serial Monitor“ öffnen
- zum bearbeiten der Baudrate folgenden Befehl abschicken „AT+BAUD8“ (Modul antwortet dann „OK115200“)
Tipp: Erstelle einen PIN, damit nicht fremde Leute auf den Tracker zugreifen können.
Weniger als 4 Nodes?
Du kannst auch weniger als 4 Nodes verwenden. Alles was du tun musst, ist TX/RX der nicht verwendeten Nodes zu brücken (siehe silkscreen). Nutze mindest immer „Node 1“, da dort die Spannungsmessung eingebaut ist.
5 V power über USB
Wenn du den Tracker über USB (5V) betreiben möchtest, entferne den „Arduino“ Stepdown und brücke IN und OUT damit der Strom vom USB zu den Arduinos fließen kann.
8 Piloten und mehr Piloten tracken
Wenn du mehr als 4 Piloten tracken möchtest, kannst du mehrer PCBs zusammen schließen.
- Verwende IMMER den „Loopback Jumper“ auf dem ersten PCB
- Verbinde zwei oder mehr PCBs mit dem 6Pin JST Kabel
- Brücke MV auf dem ersten PCB
- Brücke GM auf den nachfolgenden PCBS
- das WiFi/Bluetooth Modul wird IMMER an dem letzten PCB angeschlossen
Die App
Zu der App möchte ich nicht viele Worte verlieren, da sie eigentlich selbsterklärend ist.
Range Extender
Das größte Problem bei dem Tracker ist im Moment die Bluetooth Reichweite. Das HC-05 Modul schafft mit Glück ca 15-25 Meter. Aus Sicherheitsgründen sitzen wir auf unserem Track aber immer mindestens 30-50m entfernt vom Track. Derzeit bin ich auf der Suche nach verschiedenen Lösungen das Reichweitenproblem zu beheben. Nachfolgende möchte ich euch ein paar Lösungen zeigen.
Alternatives Bluetooth Modul (Klasse 1)
Ich habe mir Bluetooth Mate Gold von SparkFun zugelegt, welches durch Team KA-NICKEL auf 60 Meter getestet wurde. Die Reichweite ist wesentlich besser als mit dem HC-05
Per Kabel via RS232
Markus Dicks nutzt den Tracker mit einer geringeren Baudrate (9600). Damit überbrückt er eine Distanz von 30 Metern per Netzwerkkabel. Die Lösung ist zwar am einfachsten und mag auch funktionieren, leider sind RS232 Verbindungen nicht auf lange Strecken ausgelegt und es muss nicht bei jedem funktionieren.
Per Kabel via RS485
Eine bessere kabelgebundene Lösung bietet das RS485 Protokoll. Derzeit arbeite ich an einem Full Duplex Link welcher gleichzeitig das Bluetooth Modul mit Spannung versorgen kann. Mit dieser Variante sind durchaus 100 Meter und mehr möglich. Ein Step-Up Regler kann, wenn nötig verbaut werden. Wenn nicht, wird einfach die Lötbrücke geschlossen. Der Step-Up ist dazu da, den möglichen Spannugsabfall bei sehr langen Leitungen wieder auszugleichen und die Spannung wieder auf frische 5 V hochzuregeln.
Über Funk 2.4 Ghz oder 433 MHz
Als zweite Möglichkeit kann man eine Funk Verbindung benutzen. Damit sind teilweise bis zu 500m drin. Allerdings ist es mir noch nicht gelungen das Funkmodul zum laufen zu bringen. (Kommunikation funktioniert, nur mit Chorus und Bluetooth Modul nicht)
- Verbinde das 2.4GHz RS232 Modul mit dem FTDI (TX/RX RX/TX GND/GND VCC/VCC)
- Nachdem Spannung an dem 2.4GHz RS232 Modul angelegt wurde, verbinde den CMD Pin mit GND
- öffne ein Serial Monitor auf Baudrate 9600
- ID setzen mit folgendem Befehl: „AT+ID=xxxx“
- Baudrate mit diesem Befehl auf 115200 setzen „AT+BAUD=7“
Hallo Philipp
Gibt es schon ein update zum Teensy port?
Gruss
Hey Robin,
das wWird es nicht geben, denke ich!
Gruß,
Phil
Schöner Artikel. Schade das Berlin für FPV’ler so einsam ist. Mit einem 8in1 laptimer könnte die gesamte Berliner FPV Bevölkerung zweimal teilnehmen.
Bezüglich Range: Ich hab via ESP8266 modul den seriellen Kram einfach über mein WIFI getunnelt (den Arduino darüber zu flashen ist sogar möglich, brauch ich gerade weil ich eine feste Installationan der Decke in meiner Wohnung baue und ich bis dato immer mein macbook mit einem Arm in die höhe halten musste, mit dem anderen irgendwie blind auf Upload klicken^^ ). Ethernet serial module gibts auch sehr günstig zu haben. Bei größeren Distanzen ist IP statt seriell sicherlich die robustere (und schnellere) Lösung.
Ich frage mich ob irgendjemand noch einen Geistesblitz bekommt bezüglich einer geeigneten Antenne für einen 5.8GHz laptimer. Ich fliege viel indoor (multipathing Hölle), meist mit 1S brushed modellen. Wenn ich nun den RSSI mit vollem Lipo justiere schaffen mit halbvollem Lipo die AIO cameras nichtmehr eine Runde auszulösen. Stelle ich den RSSI ein wenig niedriger ein, löse ich völlig zufällig Rundenwechsel aus.
Ich durchfliege jetzt einen Metallring, der mit der Masse des RX5808 moduls verbunden ist. Das gibt mir zumindest mit CP antennen die besten Ergebnisse, aber weit davon entfernt perfekt zu sein :-/