Arduino Library für die Dekodierung von EX-Paketen
- Ecstacy
-
Offline
- Platinum Mitglied
-
- Beiträge: 323
- Dank erhalten: 74
Ecstacy antwortete auf Arduino Library für die Dekodierung von EX-Paketen
Posted 12 Nov. 2017 22:33 #7"Positiv denken - negativ fliegen!"
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- Sepp62
-
Offline Autor
- Elite Mitglied
-
- Beiträge: 295
- Dank erhalten: 154
Sepp62 antwortete auf Arduino Library für die Dekodierung von EX-Paketen
Posted 12 Nov. 2017 22:36 #8Wichtigste Ä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.
- Sepp62
-
Offline Autor
- Elite Mitglied
-
- Beiträge: 295
- Dank erhalten: 154
Sepp62 antwortete auf Arduino Library für die Dekodierung von EX-Paketen
Posted 12 Nov. 2017 22:41 #9leider 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.
- Sepp62
-
Offline Autor
- Elite Mitglied
-
- Beiträge: 295
- Dank erhalten: 154
Sepp62 antwortete auf Arduino Library für die Dekodierung von EX-Paketen
Posted 13 Nov. 2017 20:40 #10ich 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.
- Sepp62
-
Offline Autor
- Elite Mitglied
-
- Beiträge: 295
- Dank erhalten: 154
Sepp62 antwortete auf Arduino Library für die Dekodierung von EX-Paketen
Posted 13 Nov. 2017 21:14 #11Normalerweise 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.
- Eckehard
-
Offline
- Senior Mitglied
-
- Beiträge: 65
- Dank erhalten: 6
Eckehard antwortete auf Arduino Library für die Dekodierung von EX-Paketen
Posted 14 Nov. 2017 21:55 #12unter 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.