BLHeli Telemterie Protokollkonverter für FrSky und FlySky

hussit

User
Hallo zusammen,

ich habe gerade das Projekt entdeckt und wollte es sogleich ausprobieren.
ich habe einen Attiny45 geflashed und an einem Frsky Empfänger am Smart Port angeschlossen.
Die Status LED blinkt am Anfang 3x und geht dann auf Dauerlicht. --> Warten auf Daten vom Receiver.
5V und GND für den Attiny45 habe ich direkt vom Smart Port verwendet.
Smart Port ist am Pin 7 angeschlossen.
interner Oszillator ist auf 16,5 Mhz gestellt.
Ich habe es auch schon mit und ohne den 4k7 Ohm Widerständen probiert.
Hat jemand eine Idee an was das liegen könnte?
 

Steini63

User
Hallo Hussit,

stell mal ein Screenshot von den Fuse-Einstellungen (frisch ausgelesen) und Bilder vom Aufbau ein.

Gruß
Steini
 
wollte den Konverter jetzt auch mal probieren.
Regler ist ein "Razor32 V2 35A" auf BlHeli 32.7 geflashed.
Mit einem Arduino ProMini scheinte es einigermassen zu funktionieren, wobei die Werte für Strom/Spannung viel zu hoch sind und ziemlich wackeln.
Drehzahl scheint gut zu sein.

Leider komme ich mit dem Attiny85 nicht klar.
Die Sensoren werden im Sender angezeigt. Die Daten hängen lange auf falsche Werten und werden nur ab und zu mal ganz kurz richtig ausgegeben.
Der RB2C-Prüfsumenzähler zählt schnell hoch.
Fuse sind 0xF1, 0xD5 und 0xFE eingestellt.
Was mache ich falsch? Stimmt vielleicht die interne Frequenz des Attiny nicht ganz?

Gruß Dietrich
 

Steini63

User
Danke, scheint wirklich an der Frequenz zu liegen.
Mit 16.7 kommt gar nichts mehr an.
Mit 16.3MHz kommen jetzt schon mal bauchbare Werte an, allerdings nicht kontinuierlich.
Die Frage ist 16.4 oder 16.2 für den nächsten Versuch. Vielleicht kann man die Daten im EEPROM ablegen dann kann jeder selbst ändern.

Hatte noch vergessen:
Der Test war mit einem RaceStar Tattoo52A.
Der Razor32 Regler, den ich eigentlich verwenden wollte macht auch mit dem Pro Mini Probleme (nur Drehzahl geht, die restlichen Werte kommen zwar an stimmen aber nicht ).
Ebenso funktioniert bei dem REgler auch im BLHeliTV-Programm nur Drehzahl.
 

Steini63

User
Neue Versionen vom BLHeli Telemetry Feeder !

Ich habe jetzt mal für 14 verschiedene ATtiny85 die Grenzen der Frequenzeinstellung durchgetestet.
Fazit: Die Einstellungen für den Digispark (16.5 MHz) sind für blanke AtTinies zu zu hoch. Bei 6 Exemplaren hat das Probleme gemacht. Die Berechnung der Delayzeiten für den Software-UART liegen in diesen Fällen außerhalb der Toleranz.

Auf meiner Homepage habe ich den Download aktualisiert und getrennte Tiny85- und Digispark-Versionen eingestellt. 16.1 Mhz haben sich als idealer Mittelwert für meine 14 Testexemplare herausgestellt.

Direkter Download: https://www.franksteinberg.de/ZIPS/BLHeliTelemetryFeeder.zip
 

Steini63

User
Der Razor32 Regler, den ich eigentlich verwenden wollte macht auch mit dem Pro Mini Probleme (nur Drehzahl geht, die restlichen Werte kommen zwar an stimmen aber nicht ).
Ebenso funktioniert bei dem REgler auch im BLHeliTV-Programm nur Drehzahl.

Wenn du schon ein Firmwareupdate gemacht hast und das nichts geholfen hat, ist es vermutlich ein Hardwarefehler. Ich habe drei dieser Regler, da kommen alle Werte die sollen.
 

Steini63

User
Noch ein Gedanke:

Falls du einen S.Port Empfänger benutzt, brauchst du evtl. gar keine Extra Hardware. Die BLHeli_32 Testversionen ab 32.7.2 sollen direkt S.Port ausgeben können:
BLHeli.PNG


Link:
BLHeli/BLHeli_32 ARM at master · bitdump/BLHeli · GitHub


LG Frank
 

BOcnc

User
Hallo Frank,

ich glaube da kommt noch die Temperaturabhängigkeit vom internen Oszillator dazu. Ich habe da auch lange mit gekämpft bis ich einen Tiny genommen habe der mit 3,3V noch 12 MHz geschafft hat. Bei mir geht die Tankuhr und Spannung sehr gut. Allerdings schwankt der Strom so stark das es unbrauchbar ist. Ich zeige nur an wenn CRC richtig ist. Das mit dem Strom bei mir kann aber auch daran liegen das ich das in einem Ornithopter habe wo der Strom beim Flügelschlag zeitlich sehr unterschiedlich ist.
 

Steini63

User
Hallo Werner!

ich glaube da kommt noch die Temperaturabhängigkeit vom internen Oszillator dazu. Ich habe da auch lange mit gekämpft bis ich einen Tiny genommen habe der mit 3,3V noch 12 MHz geschafft hat.
Eigentlich wollte ich eine Synchronisation mit den BLHeli Daten programmieren (Dauer eines gesamten Datenrahmens messen), falls es temperaturabhängige Probleme gibt. Vorher habe ich mein Entwicklungsexemplar mit Tiny85 erst heiß gefönt und anschließend in den Tiefkühler verfrachtet. Der Datenverkehr lief trotzdem reibungslos. Das war besser als vermutet und ich habe mir die die Synchronisationsgeschichte geschenkt.

Ich zeige nur an wenn CRC richtig ist.
Mache ich auch. Datenrahmen mit falscher CRC werden verworfen.

Grüße Frank
 
wie bekomme ich eine Testversion auf den Regler?
die BlHeliSuite zeigt mir die nicht an. Wenn ich ein Test-Hexfile in das Hex-Vereichnis lege starter die Suite nicht mehr?

Gruß Dietrich
 

BOcnc

User
Du brauchst einen Regler mit Telemetrie Ausgang. Da kommen die Daten seriell raus. Mit dem Atmel werden die Daten dann in ein anderes Protokoll gewandelt das angeschlossene Geräte(Sender) verstehen.
 
Wenn ich bei der BLHeliSuite32 auf Flash gehe, kann ich bei "Flash to:" nur bis 32.7 auswählen.
Im "BLHeli32_HexFiles"-Verzeichnis liegen keine Files.
Dann habe ich "Siskin_GD_32_Plus_Multi_32_73.Hex" in das Verzeichnis gelegt, allerdings gestern einen Fehler beim Kopieren gemacht(war ein html file kein Hex) . Beim Start hängt sich dann BLHeli auf.
Jetzt nochmal richtig kopiert und BlHeli startet normal. Trotzden kann ich das neue File nicht auswählen?

Gruß Dietrich
 
Hab gerade gesehen, es gibt unten noch einen Button "Flash BLHeli".
Allerdings wird ebenso nur die alten Versionen angezeigt.
Beim Razor32 ist es dann möglich das File "R_FlyFort_Multi_32_73.Hex" auszuwählen.
Nach Flash ist dann auch S-Port -Nr auswählbar, aber es kommt nichts an der Funke an. Der Motor geht dann auch nicht mehr 🙁
 

Steini63

User
Nach Flash ist dann auch S-Port -Nr auswählbar
Bist du sicher? Ich habe meinen Razor32 rangehängt, das sieht so aus:

1606507059963.png


Kein S.Port verfügbar. Vermutlich weil das zutrifft:

Code:
Note that only ESCs that use USART1 (port PB6) for telemetry support S.PORT. If the
"S.PORT Physical ID" programming parameter shows up in BLHeliSuite32, then your ESC
supports it.
 
Meine Regler funktionieren leider nicht direkt von BlHeli zu Frsky.
Hab noch ein bisschen mit dem BTF getestet.
Wenn ich Empfänger und BTF mit einem 1S Lipo versorge funktionierts mit 16.1 und 16.3MHz. Bei Versorgung mit 5V S-BEC oder 5V analog BEC nicht.
Zusätzliche Kondensatoren am Empfänger haben nicht geholfen.
Vielleicht ist die Frequenz immer noch nicht richtig für meinen Attiny , oder ich hab irgendwelche Störungen durch die Stromversorgung.
Werde dann mal einen anderen Attiny85 probieren.

Gruß Dietrich
 
Ansicht hell / dunkel umschalten
Oben Unten