panStamp support

Begonnen von justme1968, 24 April 2013, 21:35:25

Vorheriges Thema - Nächstes Thema

Tobias

oh ja, poste mal bitte deinen Vegetronix-Sketch. Die Batteriespannung ist wichtig ;)
Die 400ms habe ich auch schon gefunden und eingebaut.
Was ich aber noch nicht gefunden habe, wo die Zeitspannen zwischen den Sendezyklen vorgeggeben ist. Ich möchte gerne einen Messwert alle 3min haben.
Maintainer: Text2Speech, TrashCal, MediaList

Meine Projekte: https://github.com/tobiasfaust
* PumpControl v2: allround Bewässerungssteuerung mit ESP und FHEM
* Ein Modbus RS485 zu MQTT Gateway für SolarWechselrichter

justme1968

ok. mein sketch kommt nachher.

das sende intervall einstellen geht aus fhem heraus per set <device> regSet.

gruss
  ander
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

justme1968

ich hab gerade gesehen das die batteriespannung inzwischen in der normalen version drin ist. d.h. du solltest alles haben was du brauchst.

das sende intervall setzt du mit set <device> regSet 0A <intervall in sekunden als 4 stellige hex zahl> aus fhem heraus. für die devices mit powerdown/sleep mode bleibt das kommando on der send queue. wenn du dann den panstamp ein mal per reset durchstartest wird das kommando gesendet und das kommando wird automatisch gesendet wenn die initialisierung durchlaufen wird. der wert landet im eeprom und das muss nur ein mal gemacht werden.

mit den drei minuten würde ich an deiner stelle noch etwas spielen. ich vermute mal das alle 5 oder 10 minuten locker ausreicht und das das batterien spart.

das ergebniss siehst du dann bei den internal values unter SWAP_0A-PeriodicTxInterval.

auf die gleiche art solltest du ein mal die sensor addresse auf einen wert >01 und != FF setzen (00 ist broadcast, 01 ist der panstick am fhem system und ff ist die default adresse die jeder panstamp aus dem eeprom bekommt).

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

Tobias

Nachdem ich den panstamp definiert hatte (define panstamp panstamp /dev/ttyUSB0)
kam folgende Fehlermeldung:
2013.07.25 19:22:20 3: Opening panstamp device /dev/ttyUSB0
2013.07.25 19:22:20 3: panstamp device opened
Use of uninitialized value $val in sprintf at ./FHEM/34_panStamp.pm line 221.
Use of uninitialized value $val in sprintf at ./FHEM/34_panStamp.pm line 230.
Use of uninitialized value $val in sprintf at ./FHEM/34_panStamp.pm line 239.


Und nachdem ich die Batterie in den Client (soilmoisture) eingelegt hatte kam folgendes:
Illegal hexadecimal digit '�' ignored at ./FHEM/34_panStamp.pm line 453.
Illegal hexadecimal digit 'n' ignored at ./FHEM/34_panStamp.pm line 455.
2013.07.25 19:26:11 1: reload: Error:Modul 34_SWAP deactivated:
 Can't locate XML/Simple.pm in @INC (@INC contains: /etc/perl /usr/local/lib/perl/5.10.1 /usr/local/share/perl/5.10.1 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.10 /usr/share/perl/5.10 /usr/local/lib/site_perl . ./FHEM) at ./FHEM/34_SWAP.pm line 18.
BEGIN failed--compilation aborted at ./FHEM/34_SWAP.pm line 18.

2013.07.25 19:26:11 0: Can't locate XML/Simple.pm in @INC (@INC contains: /etc/perl /usr/local/lib/perl/5.10.1 /usr/local/share/perl/5.10.1 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.10 /usr/share/perl/5.10 /usr/local/lib/site_perl . ./FHEM) at ./FHEM/34_SWAP.pm line 18.
BEGIN failed--compilation aborted at ./FHEM/34_SWAP.pm line 18.

2013.07.25 19:26:11 0: ERROR: Cannot autoload SWAP
2013.07.25 19:26:12 3: panstamp: Unknown code cc�C"b"c�b17�n��rbngn�C"B"c�r�ngn�cC"b"a�r�ncn�sC"B"a�b�nkn��C"""a�bcnknS�����Srcnon�C����[r�n�n���s��Srcn�n���s��Vr�n�nS�����[rcn�nCs����[bcn�n���s��bcn�nC��s��-b�7�n�s����Srcn�n������Srcncn�c�c��_bcncn�c�c��SbcngnSc����b�ngnSc����rcncnS��c��SrcnknSc�c��Srcnkn�c����r�non�c����r�n�����s��Srcn���c�s��Rb�n���c����b�n���c�

usw....
Maintainer: Text2Speech, TrashCal, MediaList

Meine Projekte: https://github.com/tobiasfaust
* PumpControl v2: allround Bewässerungssteuerung mit ESP und FHEM
* Ein Modbus RS485 zu MQTT Gateway für SolarWechselrichter

justme1968

das schaut so aus als ob die kommunikation mit dem panstick klemmt.

gib mal bitte die baudrate mit an (define panstamp panstamp /dev/ttyUSB0@38400)

wenn das nicht hilft setz mal bitte global verbose auf 5 und mach dann ein 'modify panstamp /dev/ttyUSB0@38400' und zeig mir den log ausschnit wo der panstick initialisiert wird.

gruss
  andre

edit: ich denke es liegt an der baudrate.

edit2: das swap modul braucht XML:Simple um die device description files zu lesen.

edit3: und bitte die ausgabe von 'stty </dev/ttyUSB0'
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

Tobias

Habe in debian das Paket "libxml-simple-perl" nachinstalliert.
Nach Änderung der Baudrate sieht es schon etwas besser aus:
2013.07.25 19:34:49 3: SWAP Unknown device ©b, please define it
2013.07.25 19:34:49 2: autocreate: define SWAP_©b SWAP ©b
2013.07.25 19:34:49 1: ERROR: Invalid characters in name (not A-Za-z0-9.:_): SWAP_©b
2013.07.25 19:34:49 3: Opening panstamp device /dev/ttyUSB0
2013.07.25 19:34:49 3: Setting panstamp baudrate to 38400
2013.07.25 19:34:49 3: panstamp device opened
substr outside of string at ./FHEM/34_SWAP.pm line 691.
substr outside of string at ./FHEM/34_SWAP.pm line 692.
substr outside of string at ./FHEM/34_SWAP.pm line 693.
substr outside of string at ./FHEM/34_SWAP.pm line 694.
Use of uninitialized value $raddr in hash element at ./FHEM/34_SWAP.pm line 698.
Use of uninitialized value $rid in hex at ./FHEM/34_SWAP.pm line 704.
Use of uninitialized value $func in hash element at ./FHEM/34_SWAP.pm line 739.
Use of uninitialized value in concatenation (.) or string at ./FHEM/34_SWAP.pm line 739.
Use of uninitialized value $rname in concatenation (.) or string at ./FHEM/34_SWAP.pm line 739.
Use of uninitialized value $regname in concatenation (.) or string at ./FHEM/34_SWAP.pm line 739.
Use of uninitialized value $data in concatenation (.) or string at ./FHEM/34_SWAP.pm line 739.
Use of uninitialized value $raddr in string eq at ./FHEM/34_SWAP.pm line 741.
Use of uninitialized value $func in numeric eq (==) at ./FHEM/34_SWAP.pm line 742.
Use of uninitialized value $raddr in hash element at ./FHEM/34_SWAP.pm line 744.
Use of uninitialized value $rname in concatenation (.) or string at ./FHEM/34_SWAP.pm line 745.
2013.07.25 19:34:53 3: SWAP Unknown device , please define it
.....
Maintainer: Text2Speech, TrashCal, MediaList

Meine Projekte: https://github.com/tobiasfaust
* PumpControl v2: allround Bewässerungssteuerung mit ESP und FHEM
* Ein Modbus RS485 zu MQTT Gateway für SolarWechselrichter

Tobias

und weiter, fhem ist mir abgeschmiert musste neustarten...
2013.07.25 19:39:00 3: Opening panstamp device /dev/ttyUSB0
2013.07.25 19:39:00 3: Setting panstamp baudrate to 38400
2013.07.25 19:39:00 3: panstamp device opened
2013.07.25 19:39:05 3: SWAP_FF: I/O device is panstamp
2013.07.25 19:39:05 3: SWAP_0F: I/O device is panstamp
2013.07.25 19:39:05 3: SWAP_06: I/O device is panstamp
2013.07.25 19:39:05 2: no device xml found for productcode 0FF0C01CB0218
2013.07.25 19:39:05 2: no device xml found for productcode 0FF0C01CB0218
2013.07.25 19:39:05 2: no device xml found for productcode 0FF0C01CB0218
2013.07.25 19:39:05 3: SWAP_0A: I/O device is panstamp
2013.07.25 19:39:05 1: Including ./log/fhem.save

ein paar minuten später ging es weiter...
2013.07.25 19:39:53 3: SWAP Unknown device , please define it
2013.07.25 19:39:53 2: autocreate: define SWAP_ SWAP  
2013.07.25 19:39:53 2: wrong syntax: define <name> SWAP <addr>[.<reg>] [<ProductCode>]
2013.07.25 19:39:54 1: define: wrong syntax: define <name> SWAP <addr>[.<reg>] [<ProductCode>]
2013.07.25 19:39:54 1: ERROR: wrong syntax: define <name> SWAP <addr>[.<reg>] [<ProductCode>]
2013.07.25 19:39:54 3: SWAP Unknown device , please define it
2013.07.25 19:39:54 2: autocreate: define SWAP_ SWAP  
2013.07.25 19:39:54 2: wrong syntax: define <name> SWAP <addr>[.<reg>] [<ProductCode>]
2013.07.25 19:39:54 1: define: wrong syntax: define <name> SWAP <addr>[.<reg>] [<ProductCode>]
2013.07.25 19:39:54 1: ERROR: wrong syntax: define <name> SWAP <addr>[.<reg>] [<ProductCode>]
2013.07.25 19:40:04 2: no device xml found for productcode C01DE0222
2013.07.25 19:40:04 2: no device xml found for productcode C01DE0222
2013.07.25 19:40:05 3: SWAP Unknown device 00, please define it
2013.07.25 19:40:15 3: SWAP Unknown device F, please define it
2013.07.25 19:40:15 2: autocreate: define SWAP_F SWAP F
2013.07.25 19:40:15 1: ERROR: Invalid characters in name (not A-Za-z0-9.:_): SWAP_F
2013.07.25 19:40:22 3: SWAP Unknown device F, please define it
2013.07.25 19:40:22 2: autocreate: define SWAP_F SWAP F
2013.07.25 19:40:22 1: ERROR: Invalid characters in name (not A-Za-z0-9.:_): SWAP_F
2013.07.25 19:40:22 3: SWAP Unknown device , please define it
2013.07.25 19:40:23 2: autocreate: define SWAP_ SWAP  
2013.07.25 19:40:23 2: wrong syntax: define <name> SWAP <addr>[.<reg>] [<ProductCode>]
2013.07.25 19:40:23 1: define: wrong syntax: define <name> SWAP <addr>[.<reg>] [<ProductCode>]
2013.07.25 19:40:23 1: ERROR: wrong syntax: define <name> SWAP <addr>[.<reg>] [<ProductCode>]
2013.07.25 19:40:23 3: SWAP Unknown device 600FF0C01DC0222, please define it
2013.07.25 19:40:23 2: autocreate: define SWAP_600FF0C01DC0222 SWAP 600FF0C01DC0222
2013.07.25 19:40:23 1: define: 600FF0C01DC0222 is not a valid SWAP address
2013.07.25 19:40:23 1: ERROR: 600FF0C01DC0222 is not a valid SWAP address
2013.07.25 19:40:36 3: SWAP Unknown device F, please define it
2013.07.25 19:40:36 2: autocreate: define SWAP_F SWAP F
2013.07.25 19:40:36 1: ERROR: Invalid characters in name (not A-Za-z0-9.:_): SWAP_F
2013.07.25 19:40:37 3: SWAP Unknown device 0, please define it
2013.07.25 19:40:37 2: autocreate: define SWAP_0 SWAP 0
2013.07.25 19:40:37 1: define: 0 is not a valid SWAP address
2013.07.25 19:40:37 1: ERROR: 0 is not a valid SWAP address
2013.07.25 19:40:51 2: no device xml found for productcode C01DE0224
2013.07.25 19:40:51 2: no device xml found for productcode C01DE0224
2013.07.25 19:41:01 2: no device xml found for productcode C01E00227
2013.07.25 19:41:01 2: no device xml found for productcode C01E00227
2013.07.25 19:41:01 3: SWAP Unknown device A0, please define it
2013.07.25 19:41:01 2: autocreate: define SWAP_A0 SWAP A0
2013.07.25 19:41:01 3: SWAP_A0: I/O device is panstamp
2013.07.25 19:41:01 2: autocreate: define FileLog_SWAP_A0 FileLog ./log/SWAP_A0-%Y.log SWAP_A0
2013.07.25 19:41:19 3: SWAP Unknown device , please define it
2013.07.25 19:41:19 2: autocreate: define SWAP_ SWAP  
2013.07.25 19:41:19 2: wrong syntax: define <name> SWAP <addr>[.<reg>] [<ProductCode>]
2013.07.25 19:41:19 1: define: wrong syntax: define <name> SWAP <addr>[.<reg>] [<ProductCode>]
2013.07.25 19:41:19 1: ERROR: wrong syntax: define <name> SWAP <addr>[.<reg>] [<ProductCode>]
2013.07.25 19:41:26 3: SWAP Unknown device , please define it
2013.07.25 19:41:26 2: autocreate: define SWAP_ SWAP  
2013.07.25 19:41:26 2: wrong syntax: define <name> SWAP <addr>[.<reg>] [<ProductCode>]
2013.07.25 19:41:26 1: define: wrong syntax: define <name> SWAP <addr>[.<reg>] [<ProductCode>]
2013.07.25 19:41:26 1: ERROR: wrong syntax: define <name> SWAP <addr>[.<reg>] [<ProductCode>]
2013.07.25 19:41:33 2: no device xml found for productcode C01E00223
2013.07.25 19:41:33 2: no device xml found for productcode C01E00223
2013.07.25 19:41:33 3: SWAP Unknown device , please define it
2013.07.25 19:41:33 2: autocreate: define SWAP_ SWAP  
2013.07.25 19:41:33 2: wrong syntax: define <name> SWAP <addr>[.<reg>] [<ProductCode>]
2013.07.25 19:41:33 1: define: wrong syntax: define <name> SWAP <addr>[.<reg>] [<ProductCode>]
2013.07.25 19:41:33 1: ERROR: wrong syntax: define <name> SWAP <addr>[.<reg>] [<ProductCode>]

Maintainer: Text2Speech, TrashCal, MediaList

Meine Projekte: https://github.com/tobiasfaust
* PumpControl v2: allround Bewässerungssteuerung mit ESP und FHEM
* Ein Modbus RS485 zu MQTT Gateway für SolarWechselrichter

justme1968

er hat am anfang als die baudrate nicht gestimmt hat alle möglichen devices angelegt die es so nicht gibt.

am besten:

erst mal die batterie raus

dann bitte lösch mal alles was mit panstamp und swap zu tun hat.

dann nur das panstamp device noch mal anlegen. das sollte komplett ohne fehler gehen.

dann ein mal save.

dann die batterie wieder rein.

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

Tobias

Der Panstamp ist sauber initialisiert worden...
Nach Einlegen der BAtterie kam folgendes:
2013.07.25 19:47:34 3: Opening panstamp device /dev/ttyUSB0
2013.07.25 19:47:34 3: Setting panstamp baudrate to 38400
2013.07.25 19:47:34 3: panstamp device opened
2013.07.25 19:48:45 3: SWAP Unknown device FF, please define it
2013.07.25 19:48:45 2: autocreate: define SWAP_FF SWAP FF 000000010000000E
2013.07.25 19:48:45 3: SWAP_FF: I/O device is panstamp
2013.07.25 19:48:46 2: autocreate: define FileLog_SWAP_FF FileLog ./log/SWAP_FF-%Y.log SWAP_FF
Use of uninitialized value in concatenation (.) or string at ./FHEM/34_SWAP.pm line 739.
Argument "\00" isn't numeric in numeric eq (==) at ./FHEM/34_SWAP.pm line 742.
2013.07.25 19:48:58 3: SWAP Unknown device 0F, please define it
2013.07.25 19:48:58 2: autocreate: define SWAP_0F SWAP 0F
2013.07.25 19:48:58 3: SWAP_0F: I/O device is panstamp
2013.07.25 19:48:58 2: autocreate: define FileLog_SWAP_0F FileLog ./log/SWAP_0F-%Y.log SWAP_0F
2013.07.25 19:48:58 3: SWAP Unknown device 14, please define it
2013.07.25 19:48:58 2: autocreate: define SWAP_14 SWAP 14
2013.07.25 19:48:58 3: SWAP_14: I/O device is panstamp
2013.07.25 19:48:58 2: autocreate: define FileLog_SWAP_14 FileLog ./log/SWAP_14-%Y.log SWAP_14
2013.07.25 19:49:08 3: SWAP Unknown device F, please define it
2013.07.25 19:49:08 2: autocreate: define SWAP_F SWAP F
2013.07.25 19:49:08 1: ERROR: Invalid characters in name (not A-Za-z0-9.:_): SWAP_F
2013.07.25 19:49:16 3: SWAP Unknown device F, please define it
2013.07.25 19:49:16 2: autocreate: define SWAP_F SWAP F
2013.07.25 19:49:16 1: ERROR: Invalid characters in name (not A-Za-z0-9.:_): SWAP_F
Use of uninitialized value in concatenation (.) or string at ./FHEM/34_SWAP.pm line 735.
Use of uninitialized value in concatenation (.) or string at ./FHEM/34_SWAP.pm line 735.
Use of uninitialized value in concatenation (.) or string at ./FHEM/34_SWAP.pm line 739.
Use of uninitialized value in concatenation (.) or string at ./FHEM/34_SWAP.pm line 739.
Use of uninitialized value in concatenation (.) or string at ./FHEM/34_SWAP.pm line 739.
Use of uninitialized value in concatenation (.) or string at ./FHEM/34_SWAP.pm line 739.
Use of uninitialized value in concatenation (.) or string at ./FHEM/34_SWAP.pm line 739.
Argument "\00" isn't numeric in numeric eq (==) at ./FHEM/34_SWAP.pm line 742.
Use of uninitialized value in concatenation (.) or string at ./FHEM/34_SWAP.pm line 739.
Argument "E6" isn't numeric in numeric eq (==) at ./FHEM/34_SWAP.pm line 742.
2013.07.25 19:49:34 3: SWAP Unknown device 00, please define it
Use of uninitialized value $found[0] in string eq at fhem.pl line 2672.

usw... es läuft weiter das Log damit voll... Ideen?
Edit: der letzte Eintrag ist der:2013.07.25 19:50:48 3: SWAP Unknown device , please define it
Use of uninitialized value $raddr in string eq at ./FHEM/34_SWAP.pm line 746.
Use of uninitialized value $data in concatenation (.) or string at ./FHEM/34_SWAP.pm line 747.
Use of uninitialized value $rname in concatenation (.) or string at ./FHEM/34_SWAP.pm line 748.
Use of uninitialized value $raddr in concatenation (.) or string at ./FHEM/34_SWAP.pm line 748.
Use of uninitialized value $data in concatenation (.) or string at ./FHEM/34_SWAP.pm line 748.
2013.07.25 19:50:48 2: autocreate: define SWAP_ SWAP
2013.07.25 19:50:48 2: wrong syntax: define <name> SWAP <addr>[.<reg>] [<ProductCode>]
2013.07.25 19:50:48 1: define: wrong syntax: define <name> SWAP <addr>[.<reg>] [<ProductCode>]
2013.07.25 19:50:48 1: ERROR: wrong syntax: define <name> SWAP <addr>[.<reg>] [<ProductCode>]
Illegal hexadecimal digit '(' ignored at ./FHEM/34_panStamp.pm line 453.
Use of uninitialized value in concatenation (.) or string at ./FHEM/34_SWAP.pm line 739.
Argument "E0" isn't numeric in numeric eq (==) at ./FHEM/34_SWAP.pm line 742.
Illegal hexadecimal digit ')' ignored at ./FHEM/34_panStamp.pm line 455.
Use of uninitialized value in concatenation (.) or string at ./FHEM/34_SWAP.pm line 739.
Argument "FF" isn't numeric in numeric eq (==) at ./FHEM/34_SWAP.pm line 742.
substr outside of string at ./FHEM/34_SWAP.pm line 628.
Use of uninitialized value in hex at ./FHEM/34_SWAP.pm line 628.
2013.07.25 19:51:02 2: no device xml found for productcode B0633
substr outside of string at ./FHEM/34_SWAP.pm line 786.

Edit: ich mach jetzt erstmal Feierabend
Maintainer: Text2Speech, TrashCal, MediaList

Meine Projekte: https://github.com/tobiasfaust
* PumpControl v2: allround Bewässerungssteuerung mit ESP und FHEM
* Ein Modbus RS485 zu MQTT Gateway für SolarWechselrichter

justme1968

der anfang schaut schon mal sehr viel besser aus.

der sensort wird richtig erkannt (000000010000000E) und versucht per autocreate anzulegen und bekommt das richtige iodev.

aber dann kommen scheinbar nachrichten rein die im format nicht passen.

bitte setz mal global verbose auf 4. dann werden die empfangen nachrichten geloggt. damit stimmt noch irgendetwas nicht.

gruss
  andre

edit: noch besser auf 5.

edit2: und bitte die ausgabe von 'stty </dev/ttyUSB0'
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

Tobias

Hier die ausgabe:root@Iconnect:~# stty </dev/ttyUSB0
speed 38400 baud; line = 0;
min = 0; time = 0;
ignbrk -brkint -icrnl -imaxbel
-opost
-isig -icanon -iexten -echo -echoe -echok -echoctl
root@Iconnect:~#

Stand von heute morgen, es wurden 4 Swap-Devices angelegt (siehe panstamp.jpg), eins davon das SWAAP_FF scheint das richtige zu sein (siehe swap_ff.jpg)
Andre, was ist eigentlich das Default-Sendeintervall? Seit dem Initialisieren gestern abend wurden bis heute morgen (11h) keine messages empfangen.
Ich bin heute abend erst wieder am Device vor Ort, aber wenn ich das SendeIntervall per RegSet einstelle, muss ich am Batterieboard einmal den Mini-ResetButton drücken damit der Panstamp aufwacht, sich neu initialisiert und das Paket entgegennimmt? Korrekt?
set <device> regSet 0A <intervall in sekunden als 4 stellige hex zahl>
Ich habe noch nicht ganz verstanden bzgl der Adresse des Panstamps ändern von FF auf <irgendwas>. Wie ist der korrekte RegSet Befehl? addr? Wenn ich es nicht mache wird es sicherlich Probleme beim zweiten Panstamp geben, korrekt? Wäre folgendes korrekt? Irgendwie muss das mal alles noch in die Doku oder ins Wiki rein... garnicht so einfach ;) ;) ;)
set <device> regSet addr 02
Da keine Messages empfangen werden kann ich leider das Log5 erst heute abend liefern
Maintainer: Text2Speech, TrashCal, MediaList

Meine Projekte: https://github.com/tobiasfaust
* PumpControl v2: allround Bewässerungssteuerung mit ESP und FHEM
* Ein Modbus RS485 zu MQTT Gateway für SolarWechselrichter

justme1968

also erst mal sorry für die anlaufschwierigkeiten. irgendetwas stimmt mit den nachrichten nicht und ich hab noch keine ahnung was. es scheinen 0-bytes oder zeilenumbrüche drin zu sein die da nicht hin gehören. und weil die nachrichten die grundlage für alles sind kann hinterher nicht mehr viel funktionieren.

ja. SWAP_FF ist das richtige. die anderen sollten gar nicht da sein.aber auch beim richtigen steht in den internal values zum teil nicht das richtige. beim product code (register 0 steht z.b. die spannung aus dem 19:50 reading von register 0B statt dem richtigen 16 stelligen product code)

aber von vorne:

bei swap geht alle komunikation über 'register' das sind unterschiedlich lange werte die entweder nur gelesen oder gelesen oder geschrieben werden können. jedes device hat eine reihe system register (00-0A) und beliebig viele user register die vom jeweiligen sketch abängen. welche register das sind steht jeweils in einem device description xml file unter .../FHEM/lib/SWAP.

wenn ein device mit dem product code korrekt angelegt wurde kann man mit 'get <device> regList' bzw. 'get <device> regListAll' die user register bzw. alle register auflisten.

in den system registern steht z.b. der productcode, die device adresse und das übtertragungs intervall. konfigurierbare register werden im eeprom gesichert und die werte gehen auch beim neustart nicht verloren. beim aller ersten starten ist das eeprom mit FF initialisiert und alle konfigurierbaren register haben diesen wert. also z.b. adresse  FF und intervall FFFF (das wären dann zwischen 18 und 19 stunden).

die inhalte der system register stehen als internal values im oberen bereicht der detail ansicht, die user register als readings im unteren. normalerweise werden beim autocreate alle werte abgefragt und angezeigt. das geht normalerweise ohne jedes zu tun. panstick rein -> broadcast -> discovery -> anlegen. bei devices mit power down mode erfolgt das das erste mal wenn sie strom haben.

alle panstamps durchlaufen beim starten eine bestmmte einschaltsequenz. sie melden sich mit ihrem product code, devices mit power down mode durchlaufden dann eine 3 sekunden schleife und warten auf kommandos, dann werden normaler weise die regiser mit den sensor werten gesendet und die normale loop gestartet. power down devices gehen jetzt schlafen und wachen regelmässig auf um ihre werte zu senden. ich bin auf panstamp seite dabei diese sequenz zu standardisieren und power down devices regelmässig ein oder zwei mal am tag aufwachen zu lassen um kommandos zu empfangen. so das man nicht den reset knopf drücken muss wenn man sie nicht im zugriff hat.

zur zeit müssen alle low level dinge wie register id oder register wert mit hex werten passieren. ich bin gerade dabei einzubauen das man auch 'vereinfachte' kommandos mit den register namen verwenden kann. zur zeit aber noch:set <device> regSet 0A <intervall in sekunden als 4 stellige hex zahl>
set <device> regSet 08 <netzwerk id als 2 stellige hex zahl>


die stty werte schauen richtig aus. ich hoffe in den log files sieht man was mit den nachrichten nicht stimmt und du verlierst nicht die geduld...

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

justme1968

es gibt jetzt einen ersten wiki artikel hierzu...
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

Tobias

Habe jetzt mal das Log auf 5 gestellt und am panstamp den Reset-Knopf gedrückt.
Dann rauschten die Meldungen 5min lang durch (5,5MB) und dann war fhem abgeschmiert.
Maintainer: Text2Speech, TrashCal, MediaList

Meine Projekte: https://github.com/tobiasfaust
* PumpControl v2: allround Bewässerungssteuerung mit ESP und FHEM
* Ein Modbus RS485 zu MQTT Gateway für SolarWechselrichter

justme1968

sag mal was ist das für ein system auf dem fhem läuft? das ganze log file ist eine einzige lange zeile ohne lf sondern nur mit cr.

irgendetwas mit deinem sketch stimmt nicht. der sendet so schnell das fhem mit dem abarbeiten des empfangsbuffers nicht mehr hinterher kommt. und irgendwann nachrichten kaputt gehen.

bitte schick mir mal den quelltext den du auf den panstamp gebrannt hast.

gruss
  andre

edit: hast du das gotoSleep in der loop am ende von soilmoisture.ino noch drin?
welches arduino modell hast du in der ide ausgewählt?

edit2: hattest du schon versucht das timeout und die adresse zu ändern?
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968