BMS to Arduino Interface Tool (BMSAIT)

  • :15::15:Hier ist die Version 1.0 der BMSAIT Software. :15::15:



    Download der jeweils aktuellsten Version hier: https://github.com/HummerX/BMSAIT-Project




    Diese erlaubt einen bidirektionalen Datenaustausch zwischen FalconBMS und Arduino Boards, um darüber eine Vielzahl unterschiedlicher Geräte (Schalter, LED, Displays, Motoren) ansteuern zu können. Die Software besteht im Kern aus zwei Bestandteilen. Zum einen gibt es eine Windows-Anwendung, die die Daten aus der SharedMem von FalconBMS liest und Daten und Kommandos mit den Arduino-Boards austauscht. Zum anderen gehört zu BMSAIT der Quellcode für die Programmierung der Arduino-Boards, der nach einem Baukastenprinzip eingebunden werden kann.


    Ich selbst nutze BMSAIT für die Ansteuerung von 7 Panels und werde dies im Rahmen der Modernisierung meines Pits weiter ausbauen. Im Rahmen der Beta-Version hatte ich bereits wertvolle Vorschläge von Iceman, Bumerang, Viper und Korbi bekommen. Ich bin aber überzeugt, dass die Software auch für andere Piloten ein wertvolles Werzeug sein kann, um kleine oder große Projekte in euren Pits zu unterstützen. Ich habe daher in der Version 1.0 eine umfassende Dokumentation beigelegt und eine Reihe von Beispielprogrammen vorbereitet, um den Einstieg zu erleichtern. Ihr solltet so sehr schnell erste kleine Projekte selbstständig und ohne Programmierkenntnisse umsetzen können. Vielleicht kann ich ja eure Neugier wecken, es einmal auszuprobieren.


    Bei Fragen stehe ich selbstverständlich gerne zur Verfügung und über weitere Anregungen zur Weiterentwicklung bin ich immer dankbar.

  • Hi Hummer,

    Boa, was für eine umfangreiche und tolle Dokumentation! Die Community wird es Dir danken.
    Ich bin immer wieder über dein KnowHow bezüglich der Arduino Programmierung fasziniert.
    Na dann werde ich mich demnächst mal um die Umsetzung der restlichen Analoginstrumente bemühen. Danke!!!:8::8::8::8:

  • Wow Cool,


    ist ja Mega!


    ich nutze im Moment eine Kombination von F4toSerial und dem Arcaze.


    Habe aber zumindest mit F4to Serial immer wieder Probleme...


    Ich gehe davon aus, dass ich nach Buchenau (Urlaub bis ende des Jahres) Umsteigen werde...


    Das hört sich genau nach dem an was ich gesucht habe...


    Uns SO eine Doku dazu Danke freue mich schon darauf loszubasteln und vielleicht das eine oder anderem Modul beitragen zu können...


    Und sein es Platinenlayouts ... Mein erste Versuch in die Richtung (8 Fach LED Treiberplatine zum Selberlöten ) funktioniert überraschend gut^^


    Zusammengefasst: richtig, richtig Cool...


    Gruß

    Marius

  • Lieben Dank Hummer!!
    Ich werd mich nochmal bei Dir melden wegen diesen Stepper-Controller-Chips, wenn ich mal das Projekt Gauges angeh :)

    Hi Korbi,

    ich klink mich mal dezent ein...


    Für Stepper hab ich den AX1201728SG geordert: Der kann 4 Stepper ansteuern.

    "Problem": Den hab ich nur als SMD gefunden.

    Kostet beim China-Mann aber keine 2EUR für ein LOT von 5.


    Hummer: Hammer-Software! :D

    Ich hab da ein paar Ideen / Fragen... :S

    Hättest Du die Tage ggf. Zeit für TS oder Discord?

  • Rightstuff,

    der AX1201728SG und der VID6606 sind der gleiche Chip, glaube ich. Den Chip habe ich auch nur als SMD bekommen - habe aber gleich ein paar Platinen mitbestellt, auf die man den Chip auflöten und dann über Steckverbinder nutzen kann.

    Ich habe Korbi schon versprochen, dass er einen von den 5 haben kann, die ich bestellt habe.


    Zur Terminabsprache habe ich Dir eine PN geschickt.

  • Nochmal kurz zum StepperChip:


    Der o.g. Chip wurde auch schon von Buddies der DunClen Side of Sims begutachtet.

    Deren Ergebnis dort ist leider ernüchternd - Die Bewegung ist (zumindest unter DCS BIOS) nicht wirklich smoother als bei Direktansteuerung:https://forums.eagle.ru/showthread.php?t=276220

    Aktuell gibt's dort aber eine neue Diskussion zum Thema.Ich halte euch auf dem Laufendem.


    Alternativ wäre hier ein Untersetzungsgetriebe eine Überlegung wert.

    Passende Zahnräder gibt's ja im RC-Modellbaubereich.



    Hummer:

    Einen hätte ich noch für die Wishlist zu BMSAIT...

    Support von OLEDs. Nutzbar für zB FuelFlow oder Altimeter.

    Quasi Standard ist hier der Controller SD1309.


    Wenn Du ein OLED zum Spielen brauchst:

    Das wäre so ein Ding für Samstag... :D


    (Sidenote zu unserem Gespräch: Der Test "MasterCaution" war erfolgreich.:thumbup:

  • BMSAIT kann nun auch das DED ansteuern.

    Dazu benötigt man ein 254x64 OLED display und einen kleinen Arduino wie einen UNO oder NANO. Ein teurer MEGA muss es hier im Gegensatz zu anderern Softwarelösungen gar nicht sein.

    Der Arduino wird über BMSAIT mit den Daten aus der SharedMem versorgt. Es stellt damit eine Alternative zur Nutzung des DEDunino Windowsprogramms dar, das in der Vergangenheit schon für Probleme gesorgt hat.

    Es ist zudem möglich das DED nur dann anzeigen zu lassen, wenn die Stromversorgung des Flugzeugs in der Simulation eingeschaltet ist.


    Ich habe die DEDuino Software von Uri_Ba als Grundlage genommen, die damit das Herzstück der Lösung darstellt. Die Ansteuerung war unerwartet komplex und erfordert auch eine Anpassung der bisherigen BMSAIT WinApp 1.0, da die Daten aus der SharedMem leider erst nachbearbeitet werden müssen, bevor der Arduino etwas damit anfangen kann.


    Ich gebe die aktualisierte App und das Arduino-Modul frei, sobald ich die Dokumentation fertig habe.


  • Cool


    Falls du noch ein Display brauchst ich habe auch eins doppelt.


    Zum Stepper Chip:

    Ich würde die Direktansteuerung ebenfalls bevorzugen... Einfach weil es einfacher ist..


    Diagnose in Bussystemen ohne Oszi ist ein Albtraum. und auf selbstgebauten Platinen...


    Da lieber einen weiteren Arduino... Usb ist halt stabil.. und die Platinen sind im Busbereich tausendfach erprobt..

  • Ich habe den Speedbrake Indicator für BMSAIT umgesetzt.

    Die Anzeige ist ein kleines 0.96 inch OLED und hier damit eine effektive Anzeigefläche von ca. 1.5 x 1.5cm.

    Die Anzeige Open/Close ist selbsterklärend. Wird das Flugzeug nicht mit Strom versorgt, wird die gestreifte Grafik als "Off"-Flag angezeigt.

  • Ich habe die Version 1.2 bei GitHub verfügbar gemacht.

    https://github.com/HummerX/BMSAIT


    Anpassung der WindowsApp:

    - Die neuen Daten aus 4.35 sind in der exe hinterlegt

    - Das Programm kann auf englische Sprache umgestellt werden

    - Verbesserter Input-Generator für die Erzeugung von Tastatursignalen

    - Ergänzung der BMSAIT-Variablen.csv um die neuen Datenvariablen aus 4.35


    Anpassung der Arduino Sketches:

    - Hinterlegen des genutzen Arduino Boards in der Konfiguration

    - Unterstützung für den Arduino Due

    - Festlegung eines Verarbeitungsschwerpunks für den Arduino (Datenrefresh, Inputs lesen oder Outputs updaten)

    - neue Arduino Module für das DED, den Speedbrake Indicator und zur Ansteuerung von LED-Matrix


    Anpassung der Beispielprogramme:

    - Anpassung der vom PowerBus abhängigen Beispielmodule (BackupRadio, CMDS, Speedbrake) - die Module werden nicht vom PowerSwitch, sondern vom PowerBus Status eingeschaltet

    - Anpassung BackupRadio Arduino Sketch - Optional wird das Radio erst eingeschaltet, wenn der COM1 Switch eingeschaltet wird


    Ergänzungen der Dokumentation