Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Entwicklung
    4. Schallpegel / Lärm einlesen (per USB?) ?

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Schallpegel / Lärm einlesen (per USB?) ?

    This topic has been deleted. Only users with topic management privileges can see it.
    • A
      Aiouh last edited by

      Hallo,
      ursprünglich wollte ich den Strassenlärm, im Rahmen einer Bürgerinitiative, mit dem Raspi und Enviroplus board aufzeichnen, wie ich es auch mit den Luftdaten.info Werten mache. Leider komme ich beim Lärmmessen mangels Bezugsquellen nicht weiter. Nun habe ich eine andere Alternative überlegt zu der ich gerne Euer feedback hätte.
      Ich habe hier ein geeichtes Schallpegel Messgerät mit dem ich gerne den Strassenlärm aufzeichnen würde.
      (Wir vergessen dabei hier mal die Diskussion um "genormte oder anerkannte Messverfahren" weg, das diskutiere ich gerade mit den Zuständigen 😉
      Das Gerät wurde mit Win10 Treiber und Software geliefert und per USB Schnittstelle angeschlossen. Läuft unter Win10 ganz OK, die Software ist aber sehr limitiert, kann keine Langzeit Aufzeichnung, z.B. über Tage oder Monate. Der Support hat die Erweiterung des Zeitrahmens abgelehnt.

      Also dachte ich daran den bestehenden io/Broker und Grafana Charts zu nutzen.
      Dabei habe ich aber gleich zwei Hürden. Erstens die Daten (Level und Timestamp) vom USB Port eingelesen und interpretiert zu bekommen und diese dann in der InfluxDB zu speichern.
      Ist das Vorhaben eher "mission impossible" für jemanden der keine Ahnung von coding hat, oder gibt es evtl. schon Programme / Adapter die man dazu nutzen könnte.
      Andere Ideen sind natürlich auch willkommen

      Am Raspi wird das Gerät erkannt unter:
      Bus 001 Device 009: ID 10c4:ea60 Cygnal Integrated Products, Inc. CP2102/CP2109 UART Bridge Controller [CP210x family]

      Mit Wireshark hab ich mal auf den USB geschaut, aber wie oben geschrieben - ich hab kein Plan vom Coding und weiss nicht wie komplex so etwas ist.

      Bin für jeden Hinweis dankbar, schlimmstenfalls auch für eine klare Absage, dann weiß ich wenigstens woran ich bin.

      No.	Time	Source	Destination	Protocol	Length	Info
      21	2020-04-15 13:44:57,056351	host	1.20.0	USB	36	GET DESCRIPTOR Request CONFIGURATION
      22	2020-04-15 13:44:57,056351	1.20.0	host	USB	60	GET DESCRIPTOR Response CONFIGURATION
      23	2020-04-15 13:44:57,056351	host	1.20.0	USB	36	SET CONFIGURATION Request
      24	2020-04-15 13:44:57,056351	1.20.0	host	USB	28	SET CONFIGURATION Response
      25	2020-04-15 13:44:57,872515	1.4.2	host	USB	32	URB_INTERRUPT in
      26	2020-04-15 13:44:57,872564	host	1.4.2	USB	27	URB_INTERRUPT in
      27	2020-04-15 13:44:57,888516	1.4.2	host	USB	32	URB_INTERRUPT in
      28	2020-04-15 13:44:57,888565	host	1.4.2	USB	27	URB_INTERRUPT in
      29	2020-04-15 13:44:57,896360	1.4.2	host	USB	32	URB_INTERRUPT in
      30	2020-04-15 13:44:57,896393	host	1.4.2	USB	27	URB_INTERRUPT in
      31	2020-04-15 13:44:57,904625	1.4.2	host	USB	32	URB_INTERRUPT in
      32	2020-04-15 13:44:57,904660	host	1.4.2	USB	27	URB_INTERRUPT in
      
      Frame 25: 32 bytes on wire (256 bits), 32 bytes captured (256 bits)
      USB URB
          [Source: 1.4.2]
          [Destination: host]
          USBPcap pseudoheader length: 27
          IRP ID: 0xffffc40218861050
          IRP USBD_STATUS: USBD_STATUS_SUCCESS (0x00000000)
          URB Function: URB_FUNCTION_BULK_OR_INTERRUPT_TRANSFER (0x0009)
          IRP information: 0x01, Direction: PDO -> FDO
          URB bus id: 1
          Device address: 4
          Endpoint: 0x82, Direction: IN
          URB transfer type: URB_INTERRUPT (0x01)
          Packet Data Length: 5
          [bInterfaceClass: HID (0x03)]
      Leftover Capture Data: 010000ff00
      
      Frame 26: 27 bytes on wire (216 bits), 27 bytes captured (216 bits)
      USB URB
          [Source: host]
          [Destination: 1.4.2]
          USBPcap pseudoheader length: 27
          IRP ID: 0xffffc40218861050
          IRP USBD_STATUS: USBD_STATUS_SUCCESS (0x00000000)
          URB Function: URB_FUNCTION_BULK_OR_INTERRUPT_TRANSFER (0x0009)
          IRP information: 0x00, Direction: FDO -> PDO
          URB bus id: 1
          Device address: 4
          Endpoint: 0x82, Direction: IN
          URB transfer type: URB_INTERRUPT (0x01)
          Packet Data Length: 0
          [Response in: 29]
          [bInterfaceClass: HID (0x03)]
      
      1 Reply Last reply Reply Quote 0
      • Schnup89
        Schnup89 last edited by

        Hi Aiouh,

        schick uns doch Mal bitte den Output von "lsusb" und den relevanten Part von "dmesg".

        Laut deinen Logs könnte sich das Teil als Eingabegerät melden "hid" device.

        In dmesg wirst du evtl. evtl ein Hinweis auf ein /dev/hid... finden. Wenn ja, lese Mal mit dem Befehl: "tail -f /dev/hid...".

        Gruß Schnup

        A 1 Reply Last reply Reply Quote 0
        • A
          Aiouh @Schnup89 last edited by

          @Schnup89
          Mit "HID" ist Nichts zu finden (habe auch weder Maus noch Keyboard angeschlossen, arbeite nur per ssh).

          pi@iobroker-pi:~ $ lsusb
          Bus 001 Device 004: ID 10c4:ea60 Cygnal Integrated Products, Inc. CP2102/CP2109 UART Bridge Controller [CP210x family]
          Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp. SMSC9512/9514 Fast Ethernet Adapter
          Bus 001 Device 002: ID 0424:9512 Standard Microsystems Corp. SMC9512/9514 USB Hub
          Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
          
          

          Hoffe das ist der relevante Teil den Du meinst

          [    3.493359] usb 1-1.2: new full-speed USB device number 4 using dwc_otg
          [    3.670090] usb 1-1.2: New USB device found, idVendor=10c4, idProduct=ea60, bcdDevice= 1.00
          [    3.688489] usb 1-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
          [    3.705645] usb 1-1.2: Product: CP2102 USB to UART Bridge Controller
          [    3.721828] usb 1-1.2: Manufacturer: Silicon Labs
          [    3.736249] usb 1-1.2: SerialNumber: 0001
          [   19.238062] usbcore: registered new interface driver usbserial_generic
          [   19.238216] usbserial: USB Serial support registered for generic
          [   19.323056] usbcore: registered new interface driver cp210x
          [   19.373667] usbserial: USB Serial support registered for cp210x
          [   19.427159] usb 1-1.2: cp210x converter now attached to ttyUSB0
          
          

          Hier der gesamte Output von dmesg SL400.txt

          Schnup89 1 Reply Last reply Reply Quote 0
          • Schnup89
            Schnup89 @Aiouh last edited by

            @Aiouh
            Der dmesg Output bring uns schonmal sehr viel weiter

            Das Gerät meldet sich als serielle Schnittstelle (/dev/ttyUSB0) CP210x Controller und sendet ! hoffentlich ! ungefragt seine Daten darüber.

            Wir können das prüfen mit dem Kommando:

            tail -f /dev/ttyUSB0
            oder
            sudo tail -f /dev/ttyUSB0
            

            Lass das mal ein paar Minuten laufen evtl. sendet das Gerät nur alle x Minuten die Daten.

            A 1 Reply Last reply Reply Quote 0
            • A
              Aiouh @Schnup89 last edited by Aiouh

              @Schnup89
              Sieht so aus, als ob das Gerät "freiwillig" keine Daten sendet.
              Bei Win10 verhält es sich auch so.
              Wenn ich die App nicht starte, läuft keine Kommunikation. Die fängt erst nach dem Starten der App an, was dann so aussieht.

              12c1e24e-b4c3-4a5f-b6d2-31f4368fc020-grafik.png

              Schnup89 1 Reply Last reply Reply Quote 0
              • Schnup89
                Schnup89 @Aiouh last edited by

                @Aiouh
                Das erschwert dann leider doch die Sache.
                Wenn es dir die Arbeit wert ist, dann könnte man versuchen mit einem com Port sniffer an das Protokoll zu kommen.

                https://github.com/Helgayork/serial-port-tools/blob/master/serial-port-monitor.md

                • Sniffersoftware installieren (ich hoffe die ist kostenlos)
                • im Gerätemanager oder in der Auslese-Software die Nummer des COM-Ports herausfinden
                • Auslesevorgang mit der Auslese-Software starten
                • In der Sniffersoftware das Sniffen starten und in dem Fenster "Terminal" erscheinen dann hoffentlich Daten/Befehle 🙂

                Gruß
                Schnup

                A 1 Reply Last reply Reply Quote 0
                • A
                  Aiouh @Schnup89 last edited by

                  @Schnup89 Dann werde ich das mal bei Gelegenheit versuchen. Bis hierhin schon mal Vielen Dank, jetzt ruft der Garten und das alkfreie Bierchen...

                  1 Reply Last reply Reply Quote 1
                  • First post
                    Last post

                  Support us

                  ioBroker
                  Community Adapters
                  Donate

                  940
                  Online

                  31.9k
                  Users

                  80.1k
                  Topics

                  1.3m
                  Posts

                  usb-port
                  2
                  7
                  588
                  Loading More Posts
                  • Oldest to Newest
                  • Newest to Oldest
                  • Most Votes
                  Reply
                  • Reply as topic
                  Log in to reply
                  Community
                  Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                  The ioBroker Community 2014-2023
                  logo