Voltcraft CO-20 USB-Luftqualitätssensor

Begonnen von C64Emulator, 04 Juni 2013, 10:50:06

Vorheriges Thema - Nächstes Thema

Rampler

@Markus M.  & @volschin

erstmal DANKE :)

30h ist schon lange, aber wenn's was bringt... (mach ich jedenfalls)
Habe heute mal drei Stück bestellt, einer soll auf RPI und zwei unter FEHM2FHEM (openwrt) laufen, bin mal gespannt...
3 HMUART (2 via ESP8266), 1 DUOFERN, 12 ESP8266, SolvisBen, GoodWE WR, RPI2 (Bullseye), ZWAVE, HM-Classic, und hoch zufrieden ...
Danke an alle, die was dazu beigetragen haben !!

Rampler

#346
So, die Sensoren sind da...
Allerdings sehe ich nur einen disconnect...

2015.09.04 15:09:51 3: IAM: CO20 device found
2015.09.04 15:09:51 3: IAM: failed to open CO20 device
2015.09.04 15:09:51 3: IAM: disconnected
2015.09.04 15:09:51 2: IAM: no device
2015.09.04 15:09:51 3: IAM: CO20 device found
2015.09.04 15:09:51 3: IAM: failed to open CO20 device
2015.09.04 15:09:51 3: IAM: disconnected
2015.09.04 15:11:05 2: IAM: no device
2015.09.04 15:11:05 3: IAM: CO20 device found
2015.09.04 15:11:05 3: IAM: failed to open CO20 device
2015.09.04 15:11:05 3: IAM: disconnected

Der  lsusb -v -d 03eb:2013 sagt:

Bus 001 Device 010: ID 03eb:2013 Atmel Corp.
Couldn't open device, some information will be missing
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0
  bDeviceProtocol         0
  bMaxPacketSize0        32
  idVendor           0x03eb Atmel Corp.
  idProduct          0x2013
  bcdDevice           10.00
  iManufacturer           1
  iProduct                2
  iSerial                 0
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           41
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0
    bmAttributes         0x80
      (Bus Powered)
    MaxPower              100mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass         3 Human Interface Device
      bInterfaceSubClass      0 No Subclass
      bInterfaceProtocol      0 None
      iInterface              0
        HID Device Descriptor:
          bLength                 9
          bDescriptorType        33
          bcdHID               1.11
          bCountryCode            0 Not supported
          bNumDescriptors         1
          bDescriptorType        34 Report
          wDescriptorLength      53
         Report Descriptors:
           ** UNAVAILABLE **
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0010  1x 16 bytes
        bInterval              10
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x02  EP 2 OUT
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0010  1x 16 bytes
        bInterval              10



Wo muss ich denn die USb rule kodieren ?
SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2013", MODE="0666"

Habe jetzt mal eine /etc/udev/rules.d/50-usbsticks.rules erstellt und neu gestartet, leider ohne Erfolg...

JETZT TUTS...
die Rule muss zwingend 99-usb.rules heißen
3 HMUART (2 via ESP8266), 1 DUOFERN, 12 ESP8266, SolvisBen, GoodWE WR, RPI2 (Bullseye), ZWAVE, HM-Classic, und hoch zufrieden ...
Danke an alle, die was dazu beigetragen haben !!

Rampler

Nachdem ich den Sensor nun erfolgreich in Betrieb genommen habe ich nun doch noch einige Fragen.
Möchte mit
set AZ.iam KNOB_ui16StartupBits 0
die automatische Kalibrierung abschalten.

Eine Abfrage mit:
get AZ.iam knob_data
zeigt dass der Wert immer noch auf 1 steht.

Stattdessen sehe ich folgende Fehlermeldungen:
2015.09.05 22:16:00 1: PERL WARNING: substr outside of string at ./FHEM/38_CO20.pm line 543.
2015.09.05 22:16:00 1: PERL WARNING: Use of uninitialized value in ord at ./FHEM/38_CO20.pm line 54
3 HMUART (2 via ESP8266), 1 DUOFERN, 12 ESP8266, SolvisBen, GoodWE WR, RPI2 (Bullseye), ZWAVE, HM-Classic, und hoch zufrieden ...
Danke an alle, die was dazu beigetragen haben !!

Markus M.

Bitte das Ganze mal mit Loglevel (verbose) 5 posten.
(Und vorher einmal kurz den Stick neu anstecken)

Woran lag es eigentlich dass es vorher nicht gleich geklappt hatte?
Aktuell weder Smarthome noch FHEM vorhanden

Rampler

Zitat von: Markus M. am 05 September 2015, 23:15:02
Bitte das Ganze mal mit Loglevel (verbose) 5 posten.
(Und vorher einmal kurz den Stick neu anstecken)

Woran lag es eigentlich dass es vorher nicht gleich geklappt hatte?
Also, habe mal nur für den get AZ.iam knob_data das verbose auf 5 gesetzt:
2015.09.06 13:26:21 5: Cmd: >get AZ.iam knob_data<
2015.09.06 13:26:21 4: getdata write -110
2015.09.06 13:26:21 5: datalen 0

Merkwürdigerweise funktioniert es ab und zu...
3 HMUART (2 via ESP8266), 1 DUOFERN, 12 ESP8266, SolvisBen, GoodWE WR, RPI2 (Bullseye), ZWAVE, HM-Classic, und hoch zufrieden ...
Danke an alle, die was dazu beigetragen haben !!

Markus M.

Das sieht leider wie das "übliche" Raspi Problem mit USB aus.
Setz mal den Timeout hoch, ansonsten gibt es leider nicht viel was du tun kannst.
(Abgesehen vom üblichen Hokuspokus mit anderen Netzteilen, Kabeln, USB 1.0 Settings, etc.)
Aktuell weder Smarthome noch FHEM vorhanden

Rampler

Zitat von: Markus M. am 06 September 2015, 21:25:18
Das sieht leider wie das "übliche" Raspi Problem mit USB aus.
Setz mal den Timeout hoch, ansonsten gibt es leider nicht viel was du tun kannst.
(Abgesehen vom üblichen Hokuspokus mit anderen Netzteilen, Kabeln, USB 1.0 Settings, etc.)
Danke Markus,
auf USB 1.0 via cmdline.txt habe ich bereits umgestellt...
Glaube dass das einzige, was evtl. eine Besserung bringt ist der Timeout ...
Ist aber alles sehr zeitraubend, werde wohl weiter testen.
Wenn man nichts verändert läuft es eigentlich sehr gut... ;)

Wahrscheinlich kommen diese Meldungen von den Timeouts oder ?
2015.09.06 21:28:20 1: PERL WARNING: substr outside of string at ./FHEM/38_CO20.pm line 543.
2015.09.06 21:28:20 1: PERL WARNING: Use of uninitialized value in ord at ./FHEM/38_CO20.pm line 543.
2015.09.06 13:56:08 1: PERL WARNING: substr outside of string at ./FHEM/38_CO20.pm line 408.
2015.09.06 13:56:08 1: PERL WARNING: Use of uninitialized value in ord at ./FHEM/38_CO20.pm line 408.

Trotzdem machen mich solche Meldungen nervös...
bis denne
3 HMUART (2 via ESP8266), 1 DUOFERN, 12 ESP8266, SolvisBen, GoodWE WR, RPI2 (Bullseye), ZWAVE, HM-Classic, und hoch zufrieden ...
Danke an alle, die was dazu beigetragen haben !!

Markus M.

Zitat von: Rampler am 06 September 2015, 22:05:20
Danke Markus,
auf USB 1.0 via cmdline.txt habe ich bereits umgestellt...
Glaube dass das einzige, was evtl. eine Besserung bringt ist der Timeout ...
Ist aber alles sehr zeitraubend, werde wohl weiter testen.
Wenn man nichts verändert läuft es eigentlich sehr gut... ;)

Unter Umständen.
Das Problem ist, dass der RasPi mit dem Stick Probleme bekommen kann, sobald mehr als ein Datenpaket in kurzer Abfolge geschickt wird.
Das passiert immer dann wenn z.B. die Stick-Infos abgefragt werden.
Im schlimmsten Fall musst du die Settings doch mit Windows machen und unter FHEM die Finger von den Settings lassen.

ZitatWahrscheinlich kommen diese Meldungen von den Timeouts oder ?
2015.09.06 21:28:20 1: PERL WARNING: substr outside of string at ./FHEM/38_CO20.pm line 543.
2015.09.06 21:28:20 1: PERL WARNING: Use of uninitialized value in ord at ./FHEM/38_CO20.pm line 543.
2015.09.06 13:56:08 1: PERL WARNING: substr outside of string at ./FHEM/38_CO20.pm line 408.
2015.09.06 13:56:08 1: PERL WARNING: Use of uninitialized value in ord at ./FHEM/38_CO20.pm line 408.

Genau. Hier werden Daten erwartet die nicht da sind weil sie der Stick nicht geliefert hat bzw. das Kommando erst gar nicht angenommen hat.

ZitatTrotzdem machen mich solche Meldungen nervös...

Weichei :)
Die Version im Anhang macht das zwar nicht besser, sollte aber die Meldungen nicht mehr als unschöne Warnung ausgeben.
Probier das doch mal aus.

Gruss, Markus
Aktuell weder Smarthome noch FHEM vorhanden

Rampler


ZitatWeichei :)
Die Version im Anhang macht das zwar nicht besser, sollte aber die Meldungen nicht mehr als unschöne Warnung ausgeben.
Probier das doch mal aus.

Gruss, Markus
Guten Morgen Markus,
sieht gut aus, konnte bis jetzt die Meldungen nicht mehr provozieren.  :)

Gruss Klaus
3 HMUART (2 via ESP8266), 1 DUOFERN, 12 ESP8266, SolvisBen, GoodWE WR, RPI2 (Bullseye), ZWAVE, HM-Classic, und hoch zufrieden ...
Danke an alle, die was dazu beigetragen haben !!

Rampler

Zitat von: MarcoR am 05 Mai 2014, 07:26:03
Hallo alle Miteinander.

Hat jemand den C02-Stick schon mal unter OpenWRT zum laufen gebracht ?
->  ATTITUDE ADJUSTMENT (12.09, r36088)

Weil hier hab ich weder das Perl-Usb Packet finden können,
noch scheint unter dem Ding das Perl-Cpan Modul vernünftig zu laufen.
->  perl -MCPAN -e shell
liefert
Untagged opnames: ne i_le sc ... <snip>
Can't locate object method "maybe_command" via package "MM" at /usr/lib/perl5/5.10/CPAN.pm line 1140.
Compilation failed in require.
BEGIN failed--compilation aborted.

Gruß
Marco

Hallo Marco,
bist Du weiter gekommen ?
Habe hier ein relativ neues Image r46584 Chaos Calmer (self compiled), der Fehler ist der gleiche ! :(
Hab mal zum Test alle PERL Module installiert.
Gruß Klaus
3 HMUART (2 via ESP8266), 1 DUOFERN, 12 ESP8266, SolvisBen, GoodWE WR, RPI2 (Bullseye), ZWAVE, HM-Classic, und hoch zufrieden ...
Danke an alle, die was dazu beigetragen haben !!

justme1968

cpan alleine wäre aber auch noch nichts nützen. du brauchst ein komplettes perl inklusive native schnittstelle, ein kompiler und die native libusb inklusive developer headern.

ich denke du sparst die sehr sehr viel arbeit wenn du plattform wechselst und zumindest den usb stick an einem anderen direkt unterstützten system betreibst.

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

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

Markus M.

#356
Vermutlich muss dafür erst mal libusb in der richtigen Version mit in OpenWrt kompiliert werden.
Als nächstes dürftest du dann über eine ganze Menge Dependencies stolpern die fehlen.
Wenn du das irgendwie hinbekommst, veröffentliche doch bitte die Konfiguration hier :)


Andre: Vermutlich geht es hier um Hardware, auf der nichts anderes als OpenWrt läuft
Aktuell weder Smarthome noch FHEM vorhanden

Rampler

Zitat von: Markus M. am 06 September 2015, 22:50:02
Weichei :)
Die Version im Anhang macht das zwar nicht besser, sollte aber die Meldungen nicht mehr als unschöne Warnung ausgeben.
Probier das doch mal aus.

Gruss, Markus

Hallo Markus,
heute ist wieder eine Meldung gekommen:
PERL WARNING: substr outside of string at ./FHEM/38_CO20.pm line 408.
2015.09.08 14:02:51 1: PERL WARNING: Use of uninitialized value in ord at ./FHEM/38_CO20.pm line 408.
3 HMUART (2 via ESP8266), 1 DUOFERN, 12 ESP8266, SolvisBen, GoodWE WR, RPI2 (Bullseye), ZWAVE, HM-Classic, und hoch zufrieden ...
Danke an alle, die was dazu beigetragen haben !!

volschin

Dumme Frage, Du hast nicht zufällig ein Update gemacht und die Datei überschrieben?
Intel NUC+Ubuntu 24.04+Docker+FHEM6
HomeMatic: HM-MOD-RPI-PCB+HM-USB-CFG2+hmland+diverse, HUE: Hue-Bridge, RaspBee+deCONZ+diverse
Amzn Dash-Buttons, Siro Rollos
4xRPi, 4xCO20, OWL+USB, HarmonyHub, FRITZ!Box 7690, Echo Dots+Show8, HomeBridge

Rampler

Zitat von: volschin am 08 September 2015, 17:37:50
Dumme Frage, Du hast nicht zufällig ein Update gemacht und die Datei überschrieben?
Klar habe ich, dachte dass die "neue" Version eingecheckt wurde...
Ist ja aber noch da, werde einfach nochmal kopieren ..

Findet das Update/Korrektur den Weg in die Repository ?

gruß Klaus
3 HMUART (2 via ESP8266), 1 DUOFERN, 12 ESP8266, SolvisBen, GoodWE WR, RPI2 (Bullseye), ZWAVE, HM-Classic, und hoch zufrieden ...
Danke an alle, die was dazu beigetragen haben !!