OWX Fehler

Begonnen von R1F800, 26 Dezember 2020, 15:05:17

Vorheriges Thema - Nächstes Thema

R1F800

Tag zusammen,
nachdem ich mein FIRMATA Device nun auf eine andere Kontrollinstanz gelegt habe (anderer PI) funktioniert mein OneWire am Firmata nicht mehr :
Die Version am anderen PI ist 0.64

error: Error unsupported mode '7' for pin '9'

Hier das Listing für das FIRMATA Device:
Internals:
   CONNECTS   1
   DEF        3030 global
   DRIVER_VERSION 0.69
   DeviceName 3030
   FD         19
   FUUID      5fe730c0-f33f-cc65-c10d-32e33474559686bf
   LAST_RECEIVED 2020-12-26 14:58:14
   NAME       FIRMATA
   NOTIFYDEV  global
   NR         147
   NTFY_ORDER 50-FIRMATA
   PORT       3030
   STATE      Initialized
   TYPE       FRM
   firmware   ConfigFirmataGarage.ino
   firmware_version V_2_10
   i2c_pins   18,19
   input_pins 2,3,5,6,7,8,9,14,15,16,17,18,19
   output_pins 2,3,5,6,7,8,9,14,15,16,17,18,19
   protocol_version V_2_06
   pullup_pins 2,3,5,6,7,8,9,14,15,16,17,18,19
   READINGS:
     2020-12-26 14:58:17   error           Unhandled sysex command
     2020-12-26 14:58:22   state           Initialized
   SERIAL:
   SocketDevice:
     BUF       
     DeviceName 3030
     FD         20
     LAST_RECEIVED 2020-12-26 14:58:22
     NAME       FIRMATA_192.168.0.41_49155
     NR         156
     PEER       192.168.0.41
     PORT       49155
     SNAME      FIRMATA
     SSL       
     STATE      Connected
     TEMPORARY  1
     TYPE       FRM
     READINGS:
       2020-12-26 14:58:14   state           Connected
Attributes:
   i2c-config 1
   room       FIRMATA
   verbose    5


Und vom OWX:
  ALARMED    0
   ASYNCHRONOUS 1
   DEF        FIRMATA:9
   DeviceName FIRMATA:9
   FUUID      5fe73d38-f33f-cc65-7e9c-6662bf567c1e2b63
   HWDEVICE   FIRMATA
   INITDONE   1
   INTERFACE  firmata
   IODev      FIRMATA
   NAME       OneWireFRM
   NR         152
   PARTIAL   
   PIN        9
   PRESENT    1
   ROM_ID     FF
   STATE      error: Error unsupported mode '7' for pin '9'
   TYPE       OWX
   interval   300
   timeout    2
   DEVHASH:
     OneWireFRM Busmaster
   DEVS:
   READINGS:
     2020-12-26 14:58:22   state           error: Error unsupported mode '7' for pin '9'
Attributes:
   IODev      FIRMATA
   room       FIRMATA
   verbose    5


JensS

https://forum.fhem.de/index.php/topic,114552.0.html ...beachtet?
In deinem Firmata-Device sind keine OWX-Pins gelistet.
Ist OWX in der ConfigFirmataGarage.ino definiert?
Gruß Jens
Debian auf APU2C4, HM-CFG-USB2, SIGNALduino, HM-ES-PMSw1-Pl, TFA 30.3121, TFA 30.3125, ITS-150, PIR-5000, configurable Firmata USB & LAN, 1-wire: DS-18B20, DS-18S20, DS-2408, DS-2413, diverse I2C-Komponenten, zigbee2mqtt, ESPEasy etc.

R1F800

Zitat von: JensS am 26 Dezember 2020, 18:29:15
https://forum.fhem.de/index.php/topic,114552.0.html ...beachtet?
In deinem Firmata-Device sind keine OWX-Pins gelistet.
Ist OWX in der ConfigFirmataGarage.ino definiert?
Gruß Jens

Die version auf dem arduino lief vorher Fehlerfrei mit einem TestPi-

0) habe ein aktuelles ConfigFirmata geflashed (neue Bibliothek von Firmata ?)
1) Habe ein update gemacht > dann kam die Version des OWX vom 20.12.
2) Zusätzlich hatte ich noch manuell das ATTR IODEV im OWX definiert.
Es läuft jetzt, nichtsdestrotrotz liefert mit FRM weiterhin den Fehler     
Unhandled sysex command

jensb

Deine PM vom 26.12.2020:
Zitat2020.12.26 17:26:05 5: FIRMATA FRM:<61006e006400f7f0
2020.12.26 17:26:05 3: FIRMATA: received message 'Unhandled sysex command'

Das Logging zeigt einen Datenempfang vom Firmata-Device, der scheinbar mit 0x61 beginnt. Das ist nicht unmöglich (Drehgeber-Statusmeldung) aber nicht wahrscheinlich (1-Wire). Was steht vorher im Log? Bitte alles ab Firmata-Device-Verbindungsaufbau bis Fehler posten.

Grüße,
Jens
FHEM 6.1 - RPi 4 Raspbian 12 + PiTFT - OPi Zero Armbian 5.35
EnOcean - (W)LAN/Firmata: BMP180, TSL2561, SHT21, Heatronic 3, OBIS - WLAN/ESP8266: Gardena 1251, Zirkulationspumpe - RTL433: Oregon - Bluetooth - MQTT
Contributions: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/jensb

R1F800

Hier mal das komplette LOG nur 1 Tag später
2020.12.27 12:05:45 4: Connection accepted from FIRMATA_192.168.0.41_49153
2020.12.27 12:05:45 5: FIRMATA: FRM_DoInit
2020.12.27 12:05:45 5: FIRMATA FRM:>ff
2020.12.27 12:05:45 5: FIRMATA: setup stage 1
2020.12.27 12:05:45 5: FIRMATA: setup stage 1
2020.12.27 12:05:45 5: FIRMATA: setup stage 1
2020.12.27 12:05:46 5: FIRMATA: setup stage 1
2020.12.27 12:05:46 5: FIRMATA: setup stage 1
2020.12.27 12:05:46 5: FIRMATA: setup stage 1
2020.12.27 12:05:46 5: FIRMATA: setup stage 1
2020.12.27 12:05:46 5: FIRMATA: setup stage 1
2020.12.27 12:05:46 5: FIRMATA: setup stage 1
2020.12.27 12:05:46 5: FIRMATA: setup stage 1
2020.12.27 12:05:46 5: FIRMATA: setup stage 1
2020.12.27 12:05:47 5: FIRMATA: setup stage 1
2020.12.27 12:05:48 5: FIRMATA: setup stage 1
2020.12.27 12:05:48 3: FIRMATA: querying Firmata versions
2020.12.27 12:05:48 5: FIRMATA FRM:>f90000
2020.12.27 12:05:48 5: FIRMATA FRM:>f079f7
2020.12.27 12:05:48 5: FIRMATA FRM:<f90206f079020a43006f
2020.12.27 12:05:48 5: FIRMATA: setup stage 1
2020.12.27 12:05:48 5: FIRMATA FRM:<006e0066006900670075007200650064004600690072
2020.12.27 12:05:48 5: FIRMATA: setup stage 1
2020.12.27 12:05:48 5: FIRMATA FRM:<006d0061007400610047006100720061006700
2020.12.27 12:05:48 5: FIRMATA: setup stage 1
2020.12.27 12:05:48 5: FIRMATA FRM:<650032002e0069006e006f00f7
2020.12.27 12:05:48 5: FIRMATA: setup stage 1
2020.12.27 12:05:48 3: FIRMATA: Firmata Firmware Version ConfiguredFirmataGarage2.ino V_2_10 (using Protocol Version V_2_06)
2020.12.27 12:05:48 5: FIRMATA FRM:>f069f7
2020.12.27 12:05:48 5: FIRMATA FRM:>f06bf7
2020.12.27 12:05:48 5: FIRMATA FRM:<f07155006e00680061006e0064006c0065
2020.12.27 12:05:48 5: FIRMATA: setup stage 2
2020.12.27 12:05:48 5: FIRMATA FRM:<006400200073007900730065007800200063
2020.12.27 12:05:48 5: FIRMATA: setup stage 2
2020.12.27 12:05:48 5: FIRMATA FRM:<006f006d006d0061006e006400f7
2020.12.27 12:05:48 3: FIRMATA: received message 'Unhandled sysex command'
2020.12.27 12:05:48 5: FIRMATA: setup stage 2
2020.12.27 12:05:48 5: FIRMATA FRM:<f06c7f7f00010b01010107017f00010b01010107017f7f00010b0101010701
2020.12.27 12:05:48 5: FIRMATA: setup stage 2
2020.12.27 12:05:48 5: FIRMATA FRM:<7f00010b01010107017f00010b010101
2020.12.27 12:05:48 5: FIRMATA: setup stage 2
2020.12.27 12:05:48 5: FIRMATA FRM:<07017f00010b01010107017f
2020.12.27 12:05:48 5: FIRMATA: setup stage 2
2020.12.27 12:05:48 5: FIRMATA FRM:<00010b01010107017f7f7f7f7f00
2020.12.27 12:05:48 5: FIRMATA: setup stage 2
2020.12.27 12:05:48 5: FIRMATA FRM:<010b01010107017f00010b010101
2020.12.27 12:05:48 5: FIRMATA: setup stage 2
2020.12.27 12:05:48 5: FIRMATA FRM:<07017f00010b01010107017f
2020.12.27 12:05:48 5: FIRMATA: setup stage 2
2020.12.27 12:05:48 5: FIRMATA FRM:<00010b01010107017f00010b010101
2020.12.27 12:05:48 5: FIRMATA: setup stage 2
2020.12.27 12:05:48 5: FIRMATA FRM:<060107017f00010b01010106010701
2020.12.27 12:05:48 5: FIRMATA: setup stage 2
2020.12.27 12:05:48 5: FIRMATA FRM:<7f7f7ff7
2020.12.27 12:05:48 5: FIRMATA: setup stage 2
2020.12.27 12:05:49 5: FIRMATA: setup stage 2
2020.12.27 12:05:50 5: FIRMATA: setup stage 2
2020.12.27 12:05:51 5: FIRMATA: setup stage 2
2020.12.27 12:05:52 5: FIRMATA: setup stage 2
2020.12.27 12:05:53 5: FIRMATA: setup stage 2
2020.12.27 12:05:53 5: FIRMATA FRM:>f07a6807f7
2020.12.27 12:05:53 5: FIRMATA FRM:>f41306
2020.12.27 12:05:53 5: FIRMATA FRM:>f41206
2020.12.27 12:05:53 5: FIRMATA FRM:>f0780100f7
2020.12.27 12:05:53 5: FIRMATA: setup stage 3
2020.12.27 12:05:53 5: FIRMATA FRM:>f076200013007f01f7
2020.12.27 12:05:53 5: FIRMATA FRM:>f076200012007f01f7
2020.12.27 12:05:53 5: FIRMATA FRM:>f076200812000200f7
2020.12.27 12:05:53 5: FIRMATA FRM:>f40700
2020.12.27 12:05:53 5: FIRMATA FRM:>d001
2020.12.27 12:05:53 5: FIRMATA FRM:>d001
2020.12.27 12:05:53 5: FIRMATA FRM:>f076200812000200f7
2020.12.27 12:05:53 5: FIRMATA FRM:>f40800
2020.12.27 12:05:53 5: FIRMATA FRM:>d101
2020.12.27 12:05:53 5: FIRMATA FRM:>d101
2020.12.27 12:05:53 5: FIRMATA FRM:>f076200812000200f7
2020.12.27 12:05:53 5: FIRMATA FRM:>f076220013000000f7
2020.12.27 12:05:53 5: FIRMATA FRM:>f076220012007f01f7
2020.12.27 12:05:53 5: FIRMATA FRM:>f076220000000000f7
2020.12.27 12:05:53 5: FIRMATA FRM:>f076220001007f01f7
2020.12.27 12:05:53 5: FIRMATA FRM:>f076220005007f01f7
2020.12.27 12:05:53 5: FIRMATA FRM:>f076220004007f01f7
2020.12.27 12:05:53 5: FIRMATA FRM:>f07622000a000000f7
2020.12.27 12:05:53 5: FIRMATA FRM:>f076220812000200f7
2020.12.27 12:05:53 5: FIRMATA FRM:>f40600
2020.12.27 12:05:53 5: FIRMATA FRM:>d001
2020.12.27 12:05:53 5: FIRMATA FRM:>d001
2020.12.27 12:05:53 5: FIRMATA FRM:>f076220812000200f7
2020.12.27 12:05:53 5: FIRMATA FRM:>f40907
2020.12.27 12:05:53 5: FIRMATA: setup stage 5
2020.12.27 12:05:53 5: FIRMATA FRM:<f077200012007f017f01f7900001900001f077200012007f017f01f7910100910100f077200012007f017f01f7f077220012007f010000f7904001904001904001f077220012007f010000f7
2020.12.27 12:05:54 5: FIRMATA: onI2CMessage address: '32', register: '18' data: [255,255]
2020.12.27 12:05:54 5: FIRMATA FRM:>f076220812000200f7
2020.12.27 12:05:54 5: FIRMATA: onI2CMessage address: '32', register: '18' data: [255,255]
2020.12.27 12:05:54 5: FIRMATA: onI2CMessage address: '32', register: '18' data: [255,255]
2020.12.27 12:05:54 5: FIRMATA: onI2CMessage address: '34', register: '18' data: [255,0]
2020.12.27 12:05:54 5: FIRMATA FRM:>f076220812000200f7
2020.12.27 12:05:54 5: FIRMATA: onI2CMessage address: '34', register: '18' data: [255,0]
2020.12.27 12:05:54 5: FIRMATA FRM:<f077220012007f010000f7f077220012007f010000f7
2020.12.27 12:05:54 5: FIRMATA: onI2CMessage address: '34', register: '18' data: [255,0]
2020.12.27 12:05:54 5: FIRMATA: onI2CMessage address: '34', register: '18' data: [255,0]
2020.12.27 12:06:03 5: FIRMATA FRM:>f0734009f7
2020.12.27 12:06:03 5: FIRMATA FRM:<f073
2020.12.27 12:06:04 5: FIRMATA FRM:<4209
2020.12.27 12:06:04 5: FIRMATA FRM:<2866
2020.12.27 12:06:04 5: FIRMATA FRM:<274f77124101
2020.12.27 12:06:04 5: FIRMATA FRM:<2c01f7
2020.12.27 12:06:04 1: OWX_Discover: 1-Wire devices found on bus OneWireFRM (OWX_28_F3E979970403)

jensb

Die Fehlermeldung "Unhandled sysex command" stammt direkt vom Firmata-Device und wird von FRM nur angezeigt und protokolliert. Ein "sysex command" ist ein Kommando das mit "f0" anfängt. FRM fragt beim Verbindungsaufbau das Firmata-Device, was es alles kann, denn das ist ja in der Firmware frei konfigurierbar. Aus den Antworten vom Firmata-Device entstehen dann die "_pins"- und "_resolutions"-Internals. Diese Infos werden von FRM gebraucht, um zu prüfen, ob z.B. OWX auf dem gewünschten Pin 9 möglich ist.

Aus deinem Log:
Zitat2020.12.27 12:05:48 5: FIRMATA FRM:>f069f7
2020.12.27 12:05:48 5: FIRMATA FRM:>f06bf7

Dabei ist f069=ANALOG_MAPPING_QUERY und f06b=CAPABILITY_QUERY (siehe auch https://github.com/firmata/protocol/blob/master/protocol.md).

Da du ConfigurableFirmata für OWX verwendest, hast du AnalogFirmata vermutlich in der Firmware deaktiviert.

Wenn du die Fehlermeldung ganz loswerden willst, musst du AnalogFirmata in der Firmware aktivieren, auch wenn du es nicht nutzen willst. Ansonsten die Fehlermeldung einfach ignorieren, es hat keine Konsequenzen. Wenn du willst kannst du auch das FRM-Attribut "errorExclude" auf "Unhandled sysex command" einstellen, dann wird es als Reading "stringMessage" statt als Reading "error" im FRM-Modul angezeigt. Das ist allerdings nur Kosmetik.

Grüße,
Jens
FHEM 6.1 - RPi 4 Raspbian 12 + PiTFT - OPi Zero Armbian 5.35
EnOcean - (W)LAN/Firmata: BMP180, TSL2561, SHT21, Heatronic 3, OBIS - WLAN/ESP8266: Gardena 1251, Zirkulationspumpe - RTL433: Oregon - Bluetooth - MQTT
Contributions: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/jensb

R1F800

COOL. Danke für den Link.
Da wird dann endlich ein Schuh draus!

Kann man solche Infos, was da da Protokoll betrifft vielleicht auch direkt im WiKi verlinken ? Dann musst Du vielleicht in Zukunft nicht so blöde Fragen beantworten ;-)

jensb

Zitat von: R1F800 am 29 Dezember 2020, 17:42:49
Kann man solche Infos, was da da Protokoll betrifft vielleicht auch direkt im WiKi verlinken ?
Scheint nicht zu helfen, denn das sind sie schon ;)

Unter https://wiki.fhem.de/wiki/Arduino_Firmata steht in der 1. Zeile
ZitatFür Arduinos (und diverse kompatible Boards) gibt es eine Standardimplementierung des Kommunikationsprotokolls Firmata [1]. Mit Hilfe des Perl-Moduls Device::Firmata, auch bekannt als perl-firmata [2], kann das Firmata-Protokoll in Perl genutzt werden und mit dem Modul FRM auch in FHEM.
und [1] ist der gesuchte Link.

Vielleicht ist der Verweis in der Wiki etwas unscheinbar. Aber um etwas mit FHEM zum Laufen zu bekommen muss man (zum Glück) die Protokollspezifikationen der jeweiligen Systeme nicht kennen. Die werden nur relevant, wenn etwas nicht funktioniert. Dann ist es aber oft einfacher jemanden zu fragen der sich damit auskennt.

Grüße,
Jens
FHEM 6.1 - RPi 4 Raspbian 12 + PiTFT - OPi Zero Armbian 5.35
EnOcean - (W)LAN/Firmata: BMP180, TSL2561, SHT21, Heatronic 3, OBIS - WLAN/ESP8266: Gardena 1251, Zirkulationspumpe - RTL433: Oregon - Bluetooth - MQTT
Contributions: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/jensb

Prof. Dr. Peter Henning

Bitte noch den Titel des Threads ändern - das war nämlich mitnichten ein Fehler von OWX.

LG

pah

R1F800

@ JensB
Stimmt da sind die Links ... diese Nummern  habe ich tatsächlich ÜBERLESEN

@pah
wenn Du mir sagst wie gerne. Ich kann das Thema nur schließen.