Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. [gelöst] SerialPort-Adapter

    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

    [gelöst] SerialPort-Adapter

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

      Ich bin weitergekommen, siehe Screenshots. Ich kann jetzt über NodeRed den String vom SerialPort auslesen und zeige die Wert mit Lämpchen im Vis an. In der Funktion "String kürzen" hab ich den ankommen String um die letzten 14 Zeichen kastiert und den Rest ausgewertet. Wie kann ich denn die 3te und 4te Stelle beibehalten und der Rest abschneiden ?

      6863_home.png
      6863_alarm.png

      [
          {
              "id": "d665df92.a8c25",
              "type": "debug",
              "z": "76975916.adb69",
              "name": "Basis_Kontaktalarm",
              "active": false,
              "tosidebar": true,
              "console": false,
              "tostatus": false,
              "complete": "true",
              "x": 1080,
              "y": 160,
              "wires": []
          },
          {
              "id": "6c9e2666.153f5",
              "type": "inject",
              "z": "76975916.adb69",
              "name": "Status-Simulation",
              "topic": "",
              "payload": "ff11223344556677",
              "payloadType": "str",
              "repeat": "",
              "crontab": "",
              "once": false,
              "onceDelay": 0.1,
              "x": 260,
              "y": 360,
              "wires": [
                  [
                      "ea2b95f3.9c4028",
                      "afc3fe12.31ec4"
                  ]
              ]
          },
          {
              "id": "ea2b95f3.9c4028",
              "type": "debug",
              "z": "76975916.adb69",
              "name": "Input_komplett",
              "active": true,
              "tosidebar": true,
              "console": false,
              "tostatus": false,
              "complete": "true",
              "x": 500,
              "y": 320,
              "wires": []
          },
          {
              "id": "309df3ac.edcb6c",
              "type": "function",
              "z": "76975916.adb69",
              "name": "BAS (Byte0) Splitten",
              "func": "var bas_int = parseInt(msg.payload, 16);  //ankommende Hex-Nachricht (Basis 16) in Integer wandeln\n\nvar kal = false;\nif((bas_int & 1) == \"1\")    //Maskierung und gleichzeitig in Boolean ändern\n{\n    kal = true;\n}\n\nvar val = false;\nif((bas_int & 2) == \"2\")    //Maskierung und gleichzeitig in Boolean ändern\n{\n    val = true;\n}\n\nvar alm = false;\nif((bas_int & 4) == \"4\")    //Maskierung und gleichzeitig in Boolean ändern\n{\n    alm = true;\n}\nvar als = false;\nif((bas_int & 8) == \"8\")    //Maskierung und gleichzeitig in Boolean ändern\n{\n    als = true;\n}\n\nvar alf = false;\nif((bas_int & 16) == \"16\")    //Maskierung und gleichzeitig in Boolean ändern\n{\n    alf = true;\n}\nvar sab = false;\nif((bas_int & 32) == \"32\")    //Maskierung und gleichzeitig in Boolean ändern\n{\n    sab = true;\n}\n\nreturn [{payload: kal}, {payload: val},{payload: alm}, {payload: als},{payload: alf}, {payload: sab}];",
              "outputs": 6,
              "noerr": 0,
              "x": 740,
              "y": 400,
              "wires": [
                  [
                      "d665df92.a8c25",
                      "b4bbe9ae.a197c8"
                  ],
                  [
                      "2e0b683c.237ba",
                      "e4ab4b11.ab95c8"
                  ],
                  [
                      "d2a054fe.433cd8",
                      "8bcd1eb8.3d7d68"
                  ],
                  [
                      "88604a1a.15a0d8",
                      "4f1f1d24.90d26c"
                  ],
                  [
                      "3837e7f5.08496",
                      "3db3352.e7464ca"
                  ],
                  [
                      "c28aebd4.38c72",
                      "99006ef6.25d0b"
                  ]
              ]
          },
          {
              "id": "2e0b683c.237ba",
              "type": "debug",
              "z": "76975916.adb69",
              "name": "Basis_Voralarm",
              "active": false,
              "tosidebar": true,
              "console": false,
              "tostatus": false,
              "complete": "true",
              "x": 1060,
              "y": 280,
              "wires": []
          },
          {
              "id": "d2a054fe.433cd8",
              "type": "debug",
              "z": "76975916.adb69",
              "name": "Basis_Alarm",
              "active": false,
              "tosidebar": true,
              "console": false,
              "tostatus": false,
              "complete": "true",
              "x": 1050,
              "y": 400,
              "wires": []
          },
          {
              "id": "88604a1a.15a0d8",
              "type": "debug",
              "z": "76975916.adb69",
              "name": "Basis_Anlage_Start",
              "active": false,
              "tosidebar": true,
              "console": false,
              "tostatus": false,
              "complete": "true",
              "x": 1080,
              "y": 520,
              "wires": []
          },
          {
              "id": "3837e7f5.08496",
              "type": "debug",
              "z": "76975916.adb69",
              "name": "Basis_Anlage_Scharf",
              "active": false,
              "tosidebar": true,
              "console": false,
              "tostatus": false,
              "complete": "true",
              "x": 1080,
              "y": 640,
              "wires": []
          },
          {
              "id": "c28aebd4.38c72",
              "type": "debug",
              "z": "76975916.adb69",
              "name": "Basis_Sabotagekontakt",
              "active": false,
              "tosidebar": true,
              "console": false,
              "tostatus": false,
              "complete": "true",
              "x": 1090,
              "y": 760,
              "wires": []
          },
          {
              "id": "8bcd1eb8.3d7d68",
              "type": "ioBroker out",
              "z": "76975916.adb69",
              "name": "Basis.Alarm",
              "topic": "HAA_BAS_ALM",
              "ack": "false",
              "autoCreate": "true",
              "x": 1050,
              "y": 340,
              "wires": []
          },
          {
              "id": "b4bbe9ae.a197c8",
              "type": "ioBroker out",
              "z": "76975916.adb69",
              "name": "Basis.Kontaktalarm",
              "topic": "HAA_BAS_KAL",
              "ack": "false",
              "autoCreate": "true",
              "x": 1070,
              "y": 100,
              "wires": []
          },
          {
              "id": "4f1f1d24.90d26c",
              "type": "ioBroker out",
              "z": "76975916.adb69",
              "name": "Basis.Anlage.Start",
              "topic": "HAA_BAS_ALS",
              "ack": "false",
              "autoCreate": "true",
              "x": 1070,
              "y": 460,
              "wires": []
          },
          {
              "id": "e4ab4b11.ab95c8",
              "type": "ioBroker out",
              "z": "76975916.adb69",
              "name": "Basis.Voralarm",
              "topic": "HAA_BAS_VAL",
              "ack": "false",
              "autoCreate": "true",
              "x": 1060,
              "y": 220,
              "wires": []
          },
          {
              "id": "3db3352.e7464ca",
              "type": "ioBroker out",
              "z": "76975916.adb69",
              "name": "Basis.Anlage.Scharf",
              "topic": "HAA_BAS_ALF",
              "ack": "false",
              "autoCreate": "true",
              "x": 1080,
              "y": 580,
              "wires": []
          },
          {
              "id": "99006ef6.25d0b",
              "type": "ioBroker out",
              "z": "76975916.adb69",
              "name": "Basis.Sabotagekontakt",
              "topic": "HAA_BAS_SAB",
              "ack": "false",
              "autoCreate": "true",
              "x": 1090,
              "y": 700,
              "wires": []
          },
          {
              "id": "be2c1f1f.729f48",
              "type": "serial in",
              "z": "76975916.adb69",
              "name": "Statusempfang",
              "serial": "e6a27cfb.a5b5d8",
              "x": 260,
              "y": 400,
              "wires": [
                  [
                      "ea2b95f3.9c4028",
                      "afc3fe12.31ec4"
                  ]
              ]
          },
          {
              "id": "afc3fe12.31ec4",
              "type": "function",
              "z": "76975916.adb69",
              "name": "String kürzen",
              "func": "var string = msg.payload;\nvar string_teil = string.substring(0, string.length-14);\n\nreturn [{payload: string_teil}];",
              "outputs": 1,
              "noerr": 0,
              "x": 510,
              "y": 400,
              "wires": [
                  [
                      "309df3ac.edcb6c",
                      "826b6f45.9d0c4"
                  ]
              ]
          },
          {
              "id": "826b6f45.9d0c4",
              "type": "debug",
              "z": "76975916.adb69",
              "name": "Input_kurz",
              "active": false,
              "tosidebar": true,
              "console": false,
              "tostatus": false,
              "complete": "true",
              "x": 710,
              "y": 320,
              "wires": []
          },
          {
              "id": "caf57100.634f4",
              "type": "serial out",
              "z": "76975916.adb69",
              "name": "Kommandos",
              "serial": "e6a27cfb.a5b5d8",
              "x": 670,
              "y": 200,
              "wires": []
          },
          {
              "id": "e9e750d6.bdb68",
              "type": "inject",
              "z": "76975916.adb69",
              "name": "Status abfragen",
              "topic": "",
              "payload": "0000000000000000",
              "payloadType": "str",
              "repeat": "",
              "crontab": "",
              "once": false,
              "onceDelay": 0.1,
              "x": 240,
              "y": 220,
              "wires": [
                  [
                      "caf57100.634f4"
                  ]
              ]
          },
          {
              "id": "9f686444.287978",
              "type": "inject",
              "z": "76975916.adb69",
              "name": "Anlage einschalten",
              "topic": "",
              "payload": "8000000000000000",
              "payloadType": "str",
              "repeat": "",
              "crontab": "",
              "once": false,
              "onceDelay": 0.1,
              "x": 230,
              "y": 180,
              "wires": [
                  [
                      "caf57100.634f4"
                  ]
              ]
          },
          {
              "id": "33a945b8.0fb592",
              "type": "ioBroker in",
              "z": "76975916.adb69",
              "name": "Kommando",
              "topic": "HAA_BAS_KOM",
              "payloadType": "value",
              "onlyack": "",
              "func": "all",
              "gap": "",
              "x": 230,
              "y": 120,
              "wires": [
                  [
                      "686fad33.b01804"
                  ]
              ]
          },
          {
              "id": "686fad33.b01804",
              "type": "function",
              "z": "76975916.adb69",
              "name": "Status oder einschalten",
              "func": "var einschalten = msg.payload;\nvar befehl = \"0000000000000000\";\n\nif (einschalten == \"true\")\n{\n    befehl = \"8000000000000000\";\n}\n\nreturn [{payload: befehl}];",
              "outputs": 1,
              "noerr": 0,
              "x": 450,
              "y": 120,
              "wires": [
                  [
                      "21dad7c7.a4bb08",
                      "caf57100.634f4"
                  ]
              ]
          },
          {
              "id": "21dad7c7.a4bb08",
              "type": "debug",
              "z": "76975916.adb69",
              "name": "Output_komplett",
              "active": false,
              "tosidebar": true,
              "console": false,
              "tostatus": false,
              "complete": "true",
              "x": 690,
              "y": 120,
              "wires": []
          },
          {
              "id": "e6a27cfb.a5b5d8",
              "type": "serial-port",
              "z": "76975916.adb69",
              "serialport": "/dev/ttyAMA0",
              "serialbaud": "9600",
              "databits": "8",
              "parity": "none",
              "stopbits": "1",
              "newline": "16",
              "bin": "false",
              "out": "count",
              "addchar": true
          }
      ]
      
      
      1 Reply Last reply Reply Quote 0
      • P
        pfuhsy last edited by

        Schon gefunden.

        http://www.knaupes.net/java-substring/

        1 Reply Last reply Reply Quote 0
        • G
          Garf last edited by

          @pfuhsy:

          Schon gefunden. `
          War ja auch nicht wirklich schwer im Inet zu finden. 😄

          Diese Seiten sind auch immer sehr informativ:

          https://www.mediaevent.de/javascript/strings.html

          https://www.w3schools.com/js/js_string_methods.asp

          Da hast Du ja schon einen riesen Schritt nach Vorne gemacht. Irgendwie ist die miese Stimmung, wie sie noch auf der ersten Seite dieses Threads zu lesen war, verschwunden. 😉

          1 Reply Last reply Reply Quote 0
          • P
            pfuhsy last edited by

            Allerdings. Ich hab mittlerweile fast die komplette Alarmanlage abgebildet, inkl. Zustandsmeldungen der Fenster und Türen und Ansteuern per Button. Ich hab noch weitere Ideen die ich nach und nach einbringe. Ein paar Inspirationen für die Visualisierung habe ich mir aus dem Forum geholt. Blöderweise hab ich heute Abend daran weiter gearbeitet, als es ohne Vorwarnung abgeschmiert ist und mir die ganze Arbeit zunichte machte. Ich denke im muss die Exportfunktion öfter benutzen 😛

            1 Reply Last reply Reply Quote 0
            • M
              mike1976 @Garf last edited by

              @Garf
              Hallo, darf ich fragen wie du die sleep und work befehle hinbekommen hast?
              Habe den gleichen sensor einlesen geht aber dadurch das ich das ich den Sleep nicht hinbekomme läuft er immer durch.

              1 Reply Last reply Reply Quote 0
              • oberstel
                oberstel @Jey Cee last edited by

                Wichtige Info für alle, die (wie ich) auf diesen Thread bei der Suche nach Informationen über ioBroker und SerialPort stoßen...

                Die Syntax für die Verwendung der SerialPort JavaScript Library hat sich mit Sprung auf die Version 10.x geändert. Die Nutzung wie von @jey-cee beschrieben funktioniert dann nicht und bringt folgende Fehlermeldung:

                TypeError: SerialPort is not a constructor
                

                Die richtige Syntax (aber Version 10.x) wäre:

                var { SerialPort } = require('serialport')
                

                Und dann, für die Bindung mit der entsprechenden Schnittstelle:

                var port = new SerialPort({ path: '/dev/ttyUSB0', baudRate: 9600 });
                

                Details dazu findet man hier: https://serialport.io/docs/guide-upgrade#upgrading-from-9x-to-10x

                PackElend 1 Reply Last reply Reply Quote 1
                • PackElend
                  PackElend @oberstel last edited by PackElend

                  ich versuche mich gerade auch mit USB2RS232 und bin somit hier gelandet

                  Ich habe das Testskriopt übernommen bekomme aber

                  Error: Error: Permission denied, cannot open /dev/ttyUSB0
                  

                  aber die Hardware ist da

                  root@iobroker:/opt/iobroker# dmesg | grep "usb 1-1.4"
                  [    2.243577] usb 1-1.4: new full-speed USB device number 3 using xhci_hcd
                  [    2.349783] usb 1-1.4: New USB device found, idVendor=0403, idProduct=6001, bcdDevice= 6.00
                  [    2.349797] usb 1-1.4: New USB device strings: Mfr=1, Product=2, SerialNumber=3
                  [    2.349808] usb 1-1.4: Product: FT232R USB UART
                  [    2.349819] usb 1-1.4: Manufacturer: FTDI
                  [    2.349829] usb 1-1.4: SerialNumber: A10K5SV4
                  [    5.173412] usb 1-1.4: Detected FT232RL
                  [    5.185287] usb 1-1.4: FTDI USB Serial Device converter now attached to ttyUSB0
                  

                  hier ist der Pfad

                  root@iobroker:/opt/iobroker# ls /dev/tty*
                  /dev/tty  /dev/ttyUSB0
                  

                  da iobroker im Docker läuft bin ich auch ls -l /dev/serial/by-id gefolgt:

                  version: '2'
                  
                  services:
                    iobroker:
                      restart: always
                      image: buanet/iobroker:latest
                      container_name: iobroker
                      hostname: iobroker
                      ports:
                        - "8081:8081"
                        - "1882:1882"
                        - "1883:1883"
                        - "8082:8082"
                      volumes:
                        - /storage/system/data-containers/iobroker:/opt/iobroker
                      networks:
                        - lsio
                      devices:
                        - /dev/ttyUSB0:/dev/ttyUSB0
                  
                  networks:
                    lsio:
                      external: true     
                  

                  hier noch der USBtoRS232 Adapter auf dem Host

                  LibreELEC:~ # dmesg | grep "usb 1-1.4"
                  [    2.243577] usb 1-1.4: new full-speed USB device number 3 using xhci_hcd
                  [    2.349783] usb 1-1.4: New USB device found, idVendor=0403, idProduct=6001, bcdDevice= 6.00
                  [    2.349797] usb 1-1.4: New USB device strings: Mfr=1, Product=2, SerialNumber=3
                  [    2.349808] usb 1-1.4: Product: FT232R USB UART
                  [    2.349819] usb 1-1.4: Manufacturer: FTDI
                  [    2.349829] usb 1-1.4: SerialNumber: A10K5SV4
                  [    5.173412] usb 1-1.4: Detected FT232RL
                  [    5.185287] usb 1-1.4: FTDI USB Serial Device converter now attached to ttyUSB0
                  

                  auf dem Host

                  LibreELEC:~ # ls -l /dev/serial/by-id
                  total 0
                  lrwxrwxrwx    1 root     root            13 Feb  2  2021 usb-FTDI_FT232R_USB_UART_A10K5SV4-if00-port0 -> ../../ttyUSB0
                  

                  in ioBroker

                  root@iobroker:/opt/iobroker# ls -l /dev/serial/by-id
                  ls: cannot access '/dev/serial/by-id': No such file or directory
                  

                  scheint er wird nicht richtig installiert

                  ? Glasfaser 2 Replies Last reply Reply Quote 0
                  • ?
                    A Former User @PackElend last edited by

                    @packelend

                    Moin,

                    wem (user) gehört das Device und zu welcher gruppe?
                    Hat der User im Docker deswegen keinen Zugriff, zeig mal mit ls -la.

                    $ ls -la /dev/tty*
                    crw-rw-rw- 1 nobody nobody   5, 0 Mar 17 10:25 /dev/tty
                    crw--w---- 1 root   tty    136, 1 Mar 16 11:32 /dev/tty1
                    crw--w---- 1 root   tty    136, 2 Mar 16 11:32 /dev/tty2
                    ---------- 1 root   root        0 Mar 16 11:32 /dev/ttyACM0
                    crw-rw-rw- 1 nobody nobody 166, 3 Mar 19 18:06 /dev/ttyACM3
                    

                    VG
                    Bernd

                    PackElend 1 Reply Last reply Reply Quote 0
                    • PackElend
                      PackElend @Guest last edited by

                      @dp20eic
                      habe mal testweise die compose file angepasst

                          devices:
                            - /dev/ttyUSB0:/dev/ttyUSB1
                      

                      nun

                      root@iobroker:/opt/iobroker# ls -la /dev/tty*
                      crw-rw-rw- 1 root root   5, 0 Mär 19 18:12 /dev/tty
                      crw-rw---- 1 root   18 188, 0 Mär 19 18:12 /dev/ttyUSB1
                      

                      aber nhier ist noch ttyUSB0

                      root@iobroker:/opt/iobroker# dmesg | grep "usb 1-1.4"
                      [    2.243577] usb 1-1.4: new full-speed USB device number 3 using xhci_hcd
                      [    2.349783] usb 1-1.4: New USB device found, idVendor=0403, idProduct=6001, bcdDevice= 6.00
                      [    2.349797] usb 1-1.4: New USB device strings: Mfr=1, Product=2, SerialNumber=3
                      [    2.349808] usb 1-1.4: Product: FT232R USB UART
                      [    2.349819] usb 1-1.4: Manufacturer: FTDI
                      [    2.349829] usb 1-1.4: SerialNumber: A10K5SV4
                      [    5.173412] usb 1-1.4: Detected FT232RL
                      [    5.185287] usb 1-1.4: FTDI USB Serial Device converter now attached to ttyUSB0
                      
                      ? 1 Reply Last reply Reply Quote 0
                      • ?
                        A Former User @PackElend last edited by

                        @packelend

                        Moin,

                        einmal auseinander halten.

                        Host:

                        ls -la /dev/tty*
                        

                        Dann erst einmal schauen, wem das Device gehört, siehe bei mir oben

                        Beispiel:
                        crw-rw-rw- 1 nobody nobody 166, 3 Mar 19 18:06 /dev/ttyACM3
                        
                        1) rw- = read/write user -> nobody
                        2) rw- = read/write gruppe -> nobody
                        3) rw- = read/write other -> alle
                        
                        Wobei:
                        c = Caracter device
                        r = read
                        w = write
                        - = kann ein x sein und bedeutet ausführbar
                        

                        VG
                        Bernd

                        PackElend 1 Reply Last reply Reply Quote 0
                        • Glasfaser
                          Glasfaser @PackElend last edited by

                          @packelend sagte in SerialPort-Adapter:

                          /dev/tty /dev/ttyUSB0
                          da iobroker im Docker läuft bin ich auch ls -l /dev/serial/by-id gefolgt:
                          version: '2'

                          services:
                          iobroker:
                          restart: always
                          image: buanet/iobroker:latest
                          container_name: iobroker
                          hostname: iobroker
                          ports:
                          - "8081:8081"
                          - "1882:1882"
                          - "1883:1883"
                          - "8082:8082"
                          volumes:
                          - /storage/system/data-containers/iobroker:/opt/iobroker
                          networks:
                          - lsio
                          devices:
                          - /dev/ttyUSB0:/dev/ttyUSB0

                          networks:
                          lsio:
                          external: true

                          da iobroker im Docker läuft

                          Keine Ahnung was du da für ein System hast ..

                          aber der

                          environment:
                          USBDEVICES: /dev/ttyUSB0
                          

                          fehlt !

                          PackElend 1 Reply Last reply Reply Quote 0
                          • PackElend
                            PackElend @Guest last edited by

                            @dp20eic die Frage nach dem Benutzer hat bei mir was klingeln lassen, ich hatter übersehen, dass folgdendes gesetzer werden muss

                                environment:
                                  USBDEVICES: /dev/ttyUSB0
                            

                            Fehler ist nun

                            javascript.0
                            2023-03-19 20:39:40.059 error Error: Error Resource temporarily unavailable Cannot lock port
                            javascript.0
                            2023-03-19 20:39:40.058 error Error: Error Resource temporarily unavailable Cannot lock port
                            javascript.0
                            2023-03-19 20:39:40.057 error An error happened which is most likely from one of your scripts, but the originating script could not be detected.

                            In Zigbee iobroker Error while opening serialport und Error Resource temporarily unavailable Cannot lock port wird über ähnliches gesprochen und es heisst, dass das Gerät woanders schon verwendet wird.
                            Wenn ich aber linux - How to find processes using serial port - Unix & Linux Stack Exchange folge, bekomme ich
                            HOST:

                            LibreELEC:~ # ls -l /proc/[0-9]*/fd/* |grep /dev/ttyUSB0
                            ls: /proc/6165/fd/10: No such file or directory
                            ls: /proc/6165/fd/3: No such file or directory
                            lrwx------    1 1000     1000            64 Mar 19 21:04 /proc/30962/fd/27 -> /dev/ttyUSB0
                            
                            LibreELEC:~ # ps | grep 30962
                             6472 root      0:00 grep 30962
                            30962 1000      0:22 io.javascript.0
                            

                            so ich sehe hier mein JaveScript-Adapter aus dem ioBroker-Docker?


                            Hier die bisherigen Befehle

                            • DOCKER COMPOSE

                               devices:
                                - /dev/ttyUSB0:/dev/ttyUSB0
                               environment:
                                 USBDEVICES: /dev/ttyUSB0
                              
                            • DOCKER INSPECT

                              {
                              ...
                               ],
                               "Config": {
                                   ...
                                   "Env": [
                                       "USBDEVICES=/dev/ttyUSB0",
                               ...
                                   "Devices": [
                                       {
                                           "CgroupPermissions": "rwm",
                                           "PathInContainer": "/dev/ttyUSB0",
                                           "PathOnHost": "/dev/ttyUSB0"
                                       }
                              
                            • HOST

                              LibreELEC:~ # ls -la /dev/tty*
                              crw-rw-rw-    1 root     tty         5,   0 Feb  2  2021 /dev/tty
                              ....
                              crw--w----    1 root     tty         4,   9 Feb  2  2021 /dev/tty9
                              crw-rw----    1 root     dialout   204,  64 Mar 17 22:37 /dev/ttyAMA0
                              crw-rw----    1 root     dialout   188,   0 Feb  2  2021 /dev/ttyUSB0
                              
                              LibreELEC:~ # dmesg | grep "usb 1-1.4"
                              [    2.243577] usb 1-1.4: new full-speed USB device number 3 using xhci_hcd
                              [    2.349783] usb 1-1.4: New USB device found, idVendor=0403, idProduct=6001, bcdDevice= 6.00
                              [    2.349797] usb 1-1.4: New USB device strings: Mfr=1, Product=2, SerialNumber=3
                              [    2.349808] usb 1-1.4: Product: FT232R USB UART
                              [    2.349819] usb 1-1.4: Manufacturer: FTDI
                              [    2.349829] usb 1-1.4: SerialNumber: A10K5SV4
                              [    5.173412] usb 1-1.4: Detected FT232RL
                              [    5.185287] usb 1-1.4: FTDI USB Serial Device converter now attached to ttyUSB0
                              
                              LibreELEC:~ # ls -l /dev/serial/by-id
                              total 0
                              lrwxrwxrwx    1 root     root            13 Feb  2  2021 usb-FTDI_FT232R_USB_UART_A10K5SV4-if00-port0 -> ../../ttyUSB0
                              
                            • IOBROKER CONTAINER (dsmeg ist identisch mit Host?)

                              root@iobroker:/opt/iobroker# ls -la /dev/tty*
                              crw-rw-rw- 1 root root      5, 0 Mär 19 20:28 /dev/tty
                              crw-rw---- 1 root dialout 188, 0 Mär 19 20:31 /dev/ttyUSB0
                              
                              root@iobroker:/opt/iobroker# dmesg | grep "usb 1-1.4"
                              [    2.243577] usb 1-1.4: new full-speed USB device number 3 using xhci_hcd
                              [    2.349783] usb 1-1.4: New USB device found, idVendor=0403, idProduct=6001, bcdDevice= 6.00
                              [    2.349797] usb 1-1.4: New USB device strings: Mfr=1, Product=2, SerialNumber=3
                              [    2.349808] usb 1-1.4: Product: FT232R USB UART
                              [    2.349819] usb 1-1.4: Manufacturer: FTDI
                              [    2.349829] usb 1-1.4: SerialNumber: A10K5SV4
                              [    5.173412] usb 1-1.4: Detected FT232RL
                              [    5.185287] usb 1-1.4: FTDI USB Serial Device converter now attached to ttyUSB0
                              
                              root@iobroker:/opt/iobroker# ls -l /dev/serial/by-id
                              ls: cannot access '/dev/serial/by-id': No such file or directory
                              
                            ? 1 Reply Last reply Reply Quote 0
                            • PackElend
                              PackElend @Glasfaser last edited by

                              @glasfaser said in SerialPort-Adapter:

                              aber der ...
                              fhelt

                              dein Antwort habe ich ganz übersehen, hätte mir so mnaches grübeln erspart 🙂

                              @glasfaser said in SerialPort-Adapter:

                              Keine Ahnung was du da für ein System hast ..

                              Ist bei mir LibreELEC mit der Dockererweiterung.
                              Ich möchte hierüber meinen Surround Receiver und TV mittels ioBroker steuern.
                              Hardware ist ein Pi 4.

                              1 Reply Last reply Reply Quote 0
                              • ?
                                A Former User @PackElend last edited by

                                @packelend

                                Moin,

                                ich zitiere mal nicht, sondern sage Dir nur, dass der Host, die Infrastruktur hat, also alles was unter /dev/serial hat, das wird aber nicht an den Docker weitergereicht, im Docker wirst Du nur das Device haben, aber nicht die Infrastruktur.
                                Ob Du auch das /dev/serial an den Docker durchreichen kannst, weiß ich gerade nicht.

                                Dann solltest Du um den Zugriff auf das Device im Docker den User noch in die Gruppe dialout packen, denn sonst hat der keine Berechtigung zum Lesen und Schreiben, oder Du musst das Device im Host so anlegen, dass, wie ich oben schon beschrieben habe, alle Zugriff bekommen, also User, Gruppe und Other -> crw-rw-rw-, aktuell dürfen nur root = User und dialout = Gruppe auf das Device zugreifen.

                                Ich würde erst mal versuchen auf dem Host sauber auf das Device zugreifen zu können, und mich dann mit dem Durchreichen an den Docker beschäftigen.

                                Ich habe da nichts mehr um das zu testen, aber diese Anleitung scheint ganz gut zu sein, um die Kommunikation auf dem Host zu testen.

                                VG
                                Bernd

                                PackElend 2 Replies Last reply Reply Quote 0
                                • PackElend
                                  PackElend @Guest last edited by

                                  @dp20eic said in SerialPort-Adapter:

                                  Ich würde erst mal versuchen auf dem Host sauber auf das Device zugreifen zu können,

                                  das wird nicht so einfach, es hat keine programm, um damit zu arbeiten und LibreELEC lässt auch nicht zu weitere Linux Pacakges zu installieren.
                                  Zumindest hat es LIRC - Linux Infrared Remote Control, was auch mit meinem FT232R arbeiten könnne sollte: FTDI driver --> FTDI USB driver .
                                  Ic habe aber noch nicht herausgefunden, wie ich das bewerkstellige. Ich hoffe auf Antwort in how to do / test RS232 communication to control surround receiver - General Support - LibreELEC Forum.

                                  1 Reply Last reply Reply Quote 0
                                  • PackElend
                                    PackElend @Guest last edited by PackElend

                                    @dp20eic glck gehapt, screen ist verfügbar.
                                    Hier was mir screen anzeigt, wenn ich am Rotel etwas einstelle:

                                    ��� PRODOGY 49������ VIDEO 2 49�\�� VIDEO 2 49 ������ TAPE 49��� TAPE 49 �}����TP 5 �u� TAPE 54 �y�

                                    somit funktioniert es prinzipiel, ergbeniss ist das gleiche, wenn ich mich in Windoof ein Terminal aufmache mit
                                    4b9daf4d-6205-4229-828c-e60e3d0b2316-grafik.png
                                    aus Microsoft Word - RSX1057 Protocol.docx - RSX1057 Protocol.pdf

                                    ? 1 Reply Last reply Reply Quote 0
                                    • ?
                                      A Former User @PackElend last edited by

                                      @packelend

                                      Moin,

                                      na dann ist das ja schon einmal ein Teilerfolg 👍

                                      So jetzt, muss nur noch das Device richtig durchgereicht werden, da hattest Du ja schon Ansätze, wie gesagt, das /dev/serial Verzeichnis wirdt Du im Docker nicht haben nur das /dev/ttyUSB0 und das sollte auch die richtigen Lese/Schreibrechte haben.

                                      Also wenn auf dem Host crw-rw---- und User = root und Gruppe = dialout, dann sollte das jetzt im Docker auch so aussehen, es sei denn, es gibt im Docker die Gruppe = dialout nicht.

                                      Aus dem letzten Post von Dir

                                      IOBROKER CONTAINER (dsmeg ist identisch mit Host?)
                                      root@iobroker:/opt/iobroker# ls -la /dev/tty*
                                      crw-rw-rw- 1 root root      5, 0 Mär 19 20:28 /dev/tty
                                      crw-rw---- 1 root dialout 188, 0 Mär 19 20:31 /dev/ttyUSB0
                                      

                                      Sehe ich jetzt, das es im Docker identisch zum Host ist, jetzt musst Du nur noch den User iobroker berechtigen das Device auch zu benutzen.

                                      Was sagt:

                                      id iobroker
                                      

                                      Ist der User in der Gruppe dialout?
                                      Wenn ja, sollte der Test mit screen auch aus dem Docker funktionieren.

                                      VG
                                      Bernd

                                      PackElend 1 Reply Last reply Reply Quote 0
                                      • PackElend
                                        PackElend @Guest last edited by

                                        @dp20eic

                                        id iobroker

                                        root@iobroker:/opt/iobroker# id iobroker
                                        uid=1000(iobroker) gid=1000(iobroker) groups=1000(iobroker),5(tty),20(dialout),29(audio),44(video)
                                        

                                        screen war gar nicht verfügbar, da bin ich IoBroker Raspberry Image, minicom Installation gefolgt.
                                        Dessen Einstellung entsprechend angepasst und es wird auch etwas gelesen:

                                        Lockfile is stale. Overriding it..
                                        Welcome to minicom 2.8                                                                                                
                                                                                                                                                              
                                        OPTIONS: I18n                                                                                                         
                                        Port /dev/ttyUSB0, 20:59:31                                                                                           
                                                                                                                                                              
                                        Press CTRL-A Z for help on special keys                                                                               
                                                                                                                                                              
                                        þþÇ TAPE      44  xþÇ TAPE      43  wþÇ TAPE      42  vþÇ TAPE      41  uþÇ TAPE      40  tþÇ TAPE      39  |þ
                                        

                                        aber ich habe weiterhin im Log:

                                        javascript.0
                                        2023-03-20 21:05:34.602 error Error: Error Resource temporarily unavailable Cannot lock port
                                        javascript.0
                                        2023-03-20 21:05:34.602 error Error: Error Resource temporarily unavailable Cannot lock port
                                        javascript.0
                                        2023-03-20 21:05:34.600 error An error happened which is most likely from one of your scripts, but the originating script could not be detected.

                                        ? 1 Reply Last reply Reply Quote 0
                                        • ?
                                          A Former User @PackElend last edited by

                                          @packelend

                                          Moin,

                                          keine Ahnung, was da mit dem javascript - Adapter falsch läuft. Hast Du denn irgendwelche Skripte am Laufen?

                                          VG
                                          Bernd

                                          PackElend 1 Reply Last reply Reply Quote 0
                                          • PackElend
                                            PackElend @Guest last edited by PackElend

                                            @dp20eic said in SerialPort-Adapter:

                                            Hast Du denn irgendwelche Skripte am Laufen?

                                            mir nicht bekannt,, habe erst gerade mit Skripten angefangen
                                            d08e6584-8eca-4728-899a-8ac82bf1eb75-image.png

                                            Ich werde es neu installieren, auch mit nodeRED probieren, dann ioBroker neu aufsezten.

                                            PackElend ? 2 Replies Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate
                                            FAQ Cloud / IOT
                                            HowTo: Node.js-Update
                                            HowTo: Backup/Restore
                                            Downloads
                                            BLOG

                                            932
                                            Online

                                            31.7k
                                            Users

                                            79.9k
                                            Topics

                                            1.3m
                                            Posts

                                            10
                                            61
                                            11220
                                            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