Arduino Library für die Dekodierung von EX-Paketen

12 Nov 2017 22:33 #7 von Ecstacy
Hallo Bernd, ein interessanter Ansatz, herzlichen Dank für Deine Mühe! Ich werde mir mal ein ESP8266 Board als WiFi Client bestellen und Deine Library testen, vielleicht wird ja irgendwann mein Processing Dashboard für Jeti Telemetrie Realität... :whistle:

Gruß, Ecstacy
"Positiv denken - negativ fliegen!"

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

12 Nov 2017 22:36 #8 von Sepp62
OK, ich habe die Arbeit von heute nun hochgeladen (V0.9.1).

Wichtigste Änderung:

Es gibt nun einen Modus für den generischen Arduino UART mit 8 Bit Wortlänge. Man schaltet ihn so ein:

#define TXJETIEX_ARDUINO_UART

Das 9. Bit wird in diesem Modus ignoriert. Stattdessen wird für die Paketsynchronisation die Bytesequenz 0xFE 0xFF 0x7e geprüft. Zusätzlich ist das Paket über die Prüfsumme gesichert.

Theoretisch kann es damit zwar zu Synchronisationsproblemen kommen, aber meine bisherigen Tests haben fehlerfrei funktioniert.

Damit kann man die Library auch auf Systemen verwenden, die keinen 8-Bit-Modus haben. (z.B. ESP32, BLE Feather oder BLE Nano). Das funktioniert aber nur am Sender und nicht direkt am Sensor.

VG Bernd

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

12 Nov 2017 22:41 #9 von Sepp62
Hallo Thomas,

leider unterstützt das Protokoll nur EX-Pakete. D.h. bidirektional geht gar nichts. Ich vermute, dass nicht mal die Telemetrie-Daten kommen, die EX-Bus-Sensoren abschicken (z.B. Mezon). Das wäre aber noch zu testen.

Auch bei Alarmen vermute ich, dass die gar nicht ankommen, auch wenn ich sie jetzt mal reinprogrammiert habe.

VG Bernd

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

13 Nov 2017 20:40 #10 von Sepp62
Hallo Eckehard,

ich habe den Teensy nun getestet, er funktioniert bei mir einwandfrei. Der Default-Port ist "2", wenn man im Start-Parameter nichts mitgibt.

VG Bernd

PS: Was gar nicht funktioniert, ist der 8-Bit-Modus. Da hat mir der Compiler gestern einen Streich gespielt und ganz anderen Code übersetzt, als ich dachte.

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

13 Nov 2017 21:14 - 13 Nov 2017 21:15 #11 von Sepp62
OK, ich konnte den 8-Bit-Modus nun einigermaßen zum Laufen bringen. Das Ganze ist ein ziemlicher Hack, da ich die Baudrate "verstimmen" musste.

Normalerweise würde ich das nicht einbauen, aber die Verlockung den ESP32 möglicherweise zum Laufen zu bringen, ist einfach zu groß.

Zusammen mit ein paar anderen Fixes gibt es nun die Version 0.9.2. Wie schon geschrieben, ist der Teensy nun auch getestet.

VG Bernd

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

14 Nov 2017 21:55 #12 von Eckehard
Hallo Bernd,

unter Verwendung von TxJetiEx_V0.9.2.zip habe ich nun die Nummer des Ports übergeben, bekomme jedoch den folgenden Fehler.

"C:\Program Files (x86)\arduino-1.8.5\hardware\teensy/../tools/arm/bin/arm-none-eabi-g++" -c -O1 -g -Wall -ffunction-sections -fdata-sections -nostdlib -MMD -fno-exceptions -felide-constructors -std=gnu++14 -fno-rtti -mthumb -mcpu=cortex-m4 -fsingle-precision-constant -D__MK20DX256__ -DTEENSYDUINO=140 -DARDUINO=10805 -DF_CPU=96000000 -DUSB_SERIAL -DLAYOUT_US_ENGLISH "-IC:\Program Files (x86)\arduino-1.8.5\hardware\teensy\avr\cores\teensy3" "-IN:\Modellbau\ARDUINO_SKETCHES\libraries\TxJetiEx" "C:\Users\Eckehard\AppData\Local\Temp\arduino_build_843196\sketch\TxJetiEx.ino.cpp" -o "C:\Users\Eckehard\AppData\Local\Temp\arduino_build_843196\sketch\TxJetiEx.ino.cpp.o"
TxJetiEx: In function 'void setup()':
TxJetiEx:28: error: invalid conversion from 'int' to 'TxJetiDecode::enComPort' [-fpermissive]
jetiDecode.Start( 1 ); // for devices with more than one UART (i.e. Teensy): jetiDecode.Start( 1..3 );

^

In file included from N:\Modellbau\ARDUINO_SKETCHES\TxJetiEx\TxJetiEx.ino:21:0:

N:\Modellbau\ARDUINO_SKETCHES\libraries\TxJetiEx/TxJetiExDecode.h:199:20: note: initializing argument 1 of 'void TxJetiDecode::Start(TxJetiDecode::enComPort)'

void Start( enComPort comPort = DEFAULTPORT );

^

Bibliothek TxJetiEx im Ordner: N:\Modellbau\ARDUINO_SKETCHES\libraries\TxJetiEx (legacy) wird verwendet
invalid conversion from 'int' to 'TxJetiDecode::enComPort' [-fpermissive]


Hast Du eine Idee was ich falsch mache?

Ohne Wert kommt es "später" zu einem Fehler:

Compiling libraries...
Compiling library "TxJetiEx"
"C:\Program Files (x86)\arduino-1.8.5\hardware\teensy/../tools/arm/bin/arm-none-eabi-g++" -c -Og -g -Wall -ffunction-sections -fdata-sections -nostdlib -MMD -fno-exceptions -felide-constructors -std=gnu++14 -fno-rtti -mthumb -mcpu=cortex-m4 -fsingle-precision-constant -D__MK20DX256__ -DTEENSYDUINO=140 -DARDUINO=10805 -DF_CPU=96000000 -DUSB_SERIAL -DLAYOUT_GERMAN "-IC:\Program Files (x86)\arduino-1.8.5\hardware\teensy\avr\cores\teensy3" "-IN:\Modellbau\ARDUINO_SKETCHES\libraries\TxJetiEx" "N:\Modellbau\ARDUINO_SKETCHES\libraries\TxJetiEx\TxJetiExDecode.cpp" -o "C:\Users\Eckehard\AppData\Local\Temp\arduino_build_229387\libraries\TxJetiEx\TxJetiExDecode.cpp.o"
"C:\Program Files (x86)\arduino-1.8.5\hardware\teensy/../tools/arm/bin/arm-none-eabi-g++" -c -Og -g -Wall -ffunction-sections -fdata-sections -nostdlib -MMD -fno-exceptions -felide-constructors -std=gnu++14 -fno-rtti -mthumb -mcpu=cortex-m4 -fsingle-precision-constant -D__MK20DX256__ -DTEENSYDUINO=140 -DARDUINO=10805 -DF_CPU=96000000 -DUSB_SERIAL -DLAYOUT_GERMAN "-IC:\Program Files (x86)\arduino-1.8.5\hardware\teensy\avr\cores\teensy3" "-IN:\Modellbau\ARDUINO_SKETCHES\libraries\TxJetiEx" "N:\Modellbau\ARDUINO_SKETCHES\libraries\TxJetiEx\TxJetiExSerial.cpp" -o "C:\Users\Eckehard\AppData\Local\Temp\arduino_build_229387\libraries\TxJetiEx\TxJetiExSerial.cpp.o"
N:\Modellbau\ARDUINO_SKETCHES\libraries\TxJetiEx\TxJetiExSerial.cpp: In member function 'virtual void TxJetiExTeensySerial::Init()':

N:\Modellbau\ARDUINO_SKETCHES\libraries\TxJetiEx\TxJetiExSerial.cpp:59:30: error: 'SERIAL_9O1' was not declared in this scope

m_pSerial->begin( 9600, SERIAL_9O1 );

^

Bibliothek TxJetiEx im Ordner: N:\Modellbau\ARDUINO_SKETCHES\libraries\TxJetiEx (legacy) wird verwendet
Fehler beim Kompilieren für das Board Teensy 3.2 / 3.1.



Hast Du einen Tipp, was ich falschmache?

Danke und Grüße
Eckehard

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Ladezeit der Seite: 0.129 Sekunden

Impressum