Docker - mappage d'un port avec cle Bluetooth HCI

J’ai un problème pour le plugin BLEA avec la selection du port USB

J’arrive clairement à identifier les ports USB de 3 clés USB sur les 4

image.png.b322f599b277b307d90dbc7200e4d3cc.png

/dev/ttyUSB1 = Bus 001 Device 009: ID 1a86:7523 QinHeng Electronics HL-340 USB-Serial adapter
/dev/ttyUSB0 = Bus 001 Device 006: ID 10c4:ea60 Cygnal Integrated Products, Inc. CP2102/CP2109 UART Bridge Controller [CP210x family]
/dev/ttyACM0 = Bus 001 Device 005: ID 0658:0200 Sigma Designs, Inc. Aeotec Z-Stick Gen5 (ZW090) - UZB

Par contre pour ma clé USB Bluetooth pour le plugin BLEA, je ne sais ou la trouver ?
Bus 001 Device 010: ID 0a12:0001 Cambridge Silicon Radio, Ltd Bluetooth Dongle (HCI mode)

Avez une idée ?

Hello @Didier3L,

Si je ne me trompe pas, tu as toutes tes clefs sur un hub auto alimenté, non?
As-tu testé de connecter la clef sur l’avant du NAS (si le hub est connecté à l’arrière)?
J’ai remarqué (je ne sais pas pourquoi et si cela est un hasard) que cela jouait un rôle. Mais je peux me tromper (car ce n’est pas forcément logique).

Bref, tester un autre port que celui du NAS.

Es-tu certain que la clef est reconnue par défaut?

As-tu redémarré le NAS après avoir branché la clef (cela joue également… dans mon cas du moins).

Bonjour @Kyoshi

Oui en effet, j’ai un Hub USB alimenté.
Sur mon installation en Docker mode Host, Ma clé SENA UD100 est parfaitement reconnu par le plugin BLEA
StrokesPlus_HWj3J8plKq

Sur une installation de test Docker avec un reseau macvlan, c’est la seule clé que je n’arrive pas à identifier
Le plugin me donne comme proposition que Aucun

Donc je me suis dit je vais mapper le port du syno vers celui du conteneur

Mais sur le syno, je n’y arrive pas. De plus les commandes en SSH sont limités sur le syno

Par exemple la commande lsusb -v n’existe pas :exclamation:

Heuresement que je peux uliser les commandes SSH de jeedom
lsusb.txt (800 Octets) lsusbt.txt (956 Octets) lsusbv.txt (34,4 Ko)

@Kyoshi voici avec ma clé SENA UD100 seule branché

Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 003: ID f400:f400  
Bus 001 Device 011: ID 0a12:0001 Cambridge Silicon Radio, Ltd Bluetooth Dongle (HCI mode)
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/6p, 5000M
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/7p, 480M
    |__ Port 4: Dev 11, If 0, Class=Wireless, Driver=btusb, 12M
    |__ Port 4: Dev 11, If 1, Class=Wireless, Driver=btusb, 12M
    |__ Port 5: Dev 3, If 0, Class=Mass Storage, Driver=usb-storage, 480M
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               3.00
  bDeviceClass            9 Hub
  bDeviceSubClass         0 Unused
  bDeviceProtocol         3 
  bMaxPacketSize0         9
  idVendor           0x1d6b Linux Foundation
  idProduct          0x0003 3.0 root hub
  bcdDevice            3.10
  iManufacturer           3 Linux 3.10.105 xhci_hcd
  iProduct                2 xHCI Host Controller
  iSerial                 1 0000:00:14.0
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           31
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0 
    bmAttributes         0xe0
      Self Powered
      Remote Wakeup
    MaxPower                0mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         9 Hub
      bInterfaceSubClass      0 Unused
      bInterfaceProtocol      0 Full speed (or root) hub
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0004  1x 4 bytes
        bInterval              12
        bMaxBurst               0
Hub Descriptor:
  bLength              12
  bDescriptorType      42
  nNbrPorts             6
  wHubCharacteristic 0x000a
    No power switching (usb 1.0)
    Per-port overcurrent protection
  bPwrOn2PwrGood       10 * 2 milli seconds
  bHubContrCurrent      0 milli Ampere
  bHubDecLat          0.0 micro seconds
  wHubDelay             0 nano seconds
  DeviceRemovable    0x60
 Hub Port Status:
   Port 1: 0000.02a0 5Gbps power Rx.Detect
   Port 2: 0000.02a0 5Gbps power Rx.Detect
   Port 3: 0000.02a0 5Gbps power Rx.Detect
   Port 4: 0000.02a0 5Gbps power Rx.Detect
   Port 5: 0000.02a0 5Gbps power Rx.Detect
   Port 6: 0000.02a0 5Gbps power Rx.Detect
Binary Object Store Descriptor:
  bLength                 5
  bDescriptorType        15
  wTotalLength           15
  bNumDeviceCaps          1
  SuperSpeed USB Device Capability:
    bLength                10
    bDescriptorType        16
    bDevCapabilityType      3
    bmAttributes         0x02
      Latency Tolerance Messages (LTM) Supported
    wSpeedsSupported   0x0008
      Device can operate at SuperSpeed (5Gbps)
    bFunctionalitySupport   3
      Lowest fully-functional device speed is SuperSpeed (5Gbps)
    bU1DevExitLat          10 micro seconds
    bU2DevExitLat         512 micro seconds
Device Status:     0x0001
  Self Powered

Bus 001 Device 003: ID f400:f400  
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0        64
  idVendor           0xf400 
  idProduct          0xf400 
  bcdDevice            1.00
  iManufacturer           1 Synology
  iProduct                2 DiskStation
  iSerial                 3 6500623365A34F26
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           32
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0 
    bmAttributes         0x80
      (Bus Powered)
    MaxPower              200mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass         8 Mass Storage
      bInterfaceSubClass      6 SCSI
      bInterfaceProtocol     80 Bulk-Only
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x02  EP 2 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               0
Device Qualifier (for other device speed):
  bLength                10
  bDescriptorType         6
  bcdUSB               2.00
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0        64
  bNumConfigurations      1
Device Status:     0x0000
  (Bus Powered)

Bus 001 Device 011: ID 0a12:0001 Cambridge Silicon Radio, Ltd Bluetooth Dongle (HCI mode)
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass          224 Wireless
  bDeviceSubClass         1 Radio Frequency
  bDeviceProtocol         1 Bluetooth
  bMaxPacketSize0        64
  idVendor           0x0a12 Cambridge Silicon Radio, Ltd
  idProduct          0x0001 Bluetooth Dongle (HCI mode)
  bcdDevice           82.41
  iManufacturer           0 
  iProduct                0 
  iSerial                 0 
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength          177
    bNumInterfaces          2
    bConfigurationValue     1
    iConfiguration          0 
    bmAttributes         0xc0
      Self Powered
    MaxPower                0mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           3
      bInterfaceClass       224 Wireless
      bInterfaceSubClass      1 Radio Frequency
      bInterfaceProtocol      1 Bluetooth
      iInterface              0 
      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               1
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x02  EP 2 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               1
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x82  EP 2 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass       224 Wireless
      bInterfaceSubClass      1 Radio Frequency
      bInterfaceProtocol      1 Bluetooth
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x03  EP 3 OUT
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0000  1x 0 bytes
        bInterval               1
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0000  1x 0 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       1
      bNumEndpoints           2
      bInterfaceClass       224 Wireless
      bInterfaceSubClass      1 Radio Frequency
      bInterfaceProtocol      1 Bluetooth
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x03  EP 3 OUT
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0009  1x 9 bytes
        bInterval               1
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0009  1x 9 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       2
      bNumEndpoints           2
      bInterfaceClass       224 Wireless
      bInterfaceSubClass      1 Radio Frequency
      bInterfaceProtocol      1 Bluetooth
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x03  EP 3 OUT
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0011  1x 17 bytes
        bInterval               1
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0011  1x 17 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       3
      bNumEndpoints           2
      bInterfaceClass       224 Wireless
      bInterfaceSubClass      1 Radio Frequency
      bInterfaceProtocol      1 Bluetooth
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x03  EP 3 OUT
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0019  1x 25 bytes
        bInterval               1
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0019  1x 25 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       4
      bNumEndpoints           2
      bInterfaceClass       224 Wireless
      bInterfaceSubClass      1 Radio Frequency
      bInterfaceProtocol      1 Bluetooth
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x03  EP 3 OUT
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0021  1x 33 bytes
        bInterval               1
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0021  1x 33 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       5
      bNumEndpoints           2
      bInterfaceClass       224 Wireless
      bInterfaceSubClass      1 Radio Frequency
      bInterfaceProtocol      1 Bluetooth
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x03  EP 3 OUT
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0031  1x 49 bytes
        bInterval               1
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0031  1x 49 bytes
        bInterval               1
Device Status:     0x0001
  Self Powered

Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass            9 Hub
  bDeviceSubClass         0 Unused
  bDeviceProtocol         1 Single TT
  bMaxPacketSize0        64
  idVendor           0x1d6b Linux Foundation
  idProduct          0x0002 2.0 root hub
  bcdDevice            3.10
  iManufacturer           3 Linux 3.10.105 xhci_hcd
  iProduct                2 xHCI Host Controller
  iSerial                 1 0000:00:14.0
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           25
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0 
    bmAttributes         0xe0
      Self Powered
      Remote Wakeup
    MaxPower                0mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         9 Hub
      bInterfaceSubClass      0 Unused
      bInterfaceProtocol      0 Full speed (or root) hub
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0004  1x 4 bytes
        bInterval              12
Hub Descriptor:
  bLength               9
  bDescriptorType      41
  nNbrPorts             7
  wHubCharacteristic 0x000a
    No power switching (usb 1.0)
    Per-port overcurrent protection
    TT think time 8 FS bits
  bPwrOn2PwrGood       10 * 2 milli seconds
  bHubContrCurrent      0 milli Ampere
  DeviceRemovable    0xc0
  PortPwrCtrlMask    0xff
 Hub Port Status:
   Port 1: 0000.0100 power
   Port 2: 0000.0100 power
   Port 3: 0000.0100 power
   Port 4: 0000.0103 power enable connect
   Port 5: 0000.0503 highspeed power enable connect
   Port 6: 0000.0100 power
   Port 7: 0000.0100 power
Device Status:     0x0001
  Self Powered

@Didier3L

Voici, je viens faire un tour sur le post.

Je ne sais pas si tu te souviens, mais je ne suis pas trop calé en mode « Synology ».
Quand tu dis que tu as une install en mode Host et une en Macvlan, les 2 sont sur Synology ?

De plus, la clé BT, en mode macvlan est le seul matériel que tu n’arrives pas à voir sur ton Synology. Ai-je bien tout saisi ?

@Gsyltc

J’ai créé mon container avec docker compose


version: '2'

networks:
    default:
        external:
             name: mymacvlan

services:
    jeedom:
        container_name: jeedom-macvlan
        image: jeedom/jeedom:master
        privileged: true
        hostname: jeedom
        mac_address: a0:ca:ab:cd:ef:01
        networks:
             default:
                ipv4_address: 192.168.1.240
        volumes:
             - "/volume1/docker/jeedom-macvlan/html/:/var/www/html"
             - "/dev/bus/usb:/dev/bus/usb"
        devices:
             - "/dev/ttyUSB0:/dev/ttyUSB0"
             - "/dev/ttyUSB0:/dev/ttyUSB1"
             - "/dev/ttyACM0:/dev/ttyACM0"
        restart: unless-stopped
        environment:
             - PUID=1032
             - PGID=101
             - SSH_PORT=22
             - APACHE_PORT=80
             - SSH_PASSWORD=Jeedom
             - ROOT_PASSWORD=Jeedom
             - SHELL_ROOT_PASSWORD=Mjeedom96
             - PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

Oui ma clé usb Bluetooth est la seule que je ne vois pas dans le conteneur Jeedom

So let’s sum up.

Can you see the device in the Jeedom Docker instance? (/dev/bus… lsub…)

I’d like to understand whether you have a Docker issue or a Jeedom issue. :slight_smile:

Hello @Rpi

Oui c’est un conteneur Jeedom créé avec docker compose

version: '2'

networks:
    default:
        external:
             name: mymacvlan

services:
    jeedom:
        container_name: jeedom-macvlan
        image: jeedom/jeedom:master
        privileged: true
        hostname: jeedom
        mac_address: a0:ca:ab:cd:ef:01
        networks:
             default:
                ipv4_address: 192.168.1.240
        volumes:
             - "/volume1/docker/jeedom-macvlan/html/:/var/www/html"
             - "/dev/bus/usb:/dev/bus/usb"
        devices:
             - "/dev/ttyUSB0:/dev/ttyUSB0"
             - "/dev/ttyUSB0:/dev/ttyUSB1"
             - "/dev/ttyACM0:/dev/ttyACM0"
        restart: unless-stopped
        environment:
             - PUID=1032
             - PGID=101
             - MODE_HOST=0
             - SSH_PORT=22
             - APACHE_PORT=80
             - SSH_PASSWORD=Jeedom
             - ROOT_PASSWORD=Jeedom
             - SHELL_ROOT_PASSWORD=Mjeedom96
             - PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

image

image

image
image
image

image

image

Alors, pour le moment, je dois dire que j’ai pas beaucoup d’idée pour t’aider.
C’est werid quand même d’avoir, dans le conteneur, le mapping device ok, et mais non reconnu dans Jeedom.

Voyons ce que l’on a :
1°) Libraires bluez et cie : Check car ton plugin blea les à installées
2°) Mapping du devices dans le conteneur : Check car tu le vois
3°) As tu essayer de lancer le contrôleur à la main (avec bluetoothctl etc) et de faire des manipulations ? bluetoothctl arrive-t-il à initialiser le device ?

P.S : Après, de mon côté, j’utilise docker avec un orchestrateur. Donc, impossible d’utiliser --device pour mapper le matériel. Pour Blea, j’ai juste déployer l’antenne sur l’hôte, et ai configuré blea en conséquence. Ca marche très bien :wink:

It’s surprising hcitool dev doesn’t return anything. That may be interesting to solve this.

Have you properly started the bluetooth daemons?

Can you also:
$ hciconfig -a
$ cat //var/lib/bluetooth//config

Bonjour @Gsyltc @Rpi
image
image

Conteneur
pas de répertoire bluetooth
image

Hote
image

So…

The good/bad news is this has nothing to do with Jeedom but only with using your bluetooth device inside Docker. (yay for Jeedom, sad trumpets for you)

I am sorry but it’s a bit hard for me to investigate this without your hardware… Your best chance is out there buddy… Look for people who have tried to use bluetooth inside a Docker container. :frowning_face:

Comme le dis Rpi, sans avoir la même config matérielle, cela risque d’être difficile.
Pour ma part, je sais que l’intégration matériel dans du docker peut s’avérer complexe dans certain cas (orchestrateur).
Tu utilises le logciel du synology pour lancer ton conteneur je suppose ? As tu essayé en mode overlay ?
Pourquoi ? cela afin de savoir si le fait d’être en mode host (ou cela fonctionne) en mode macvlan ou en mode overlay change quelque chose. Au final, tu bluetooth à besoin aussi d’une adresse mac pour fonctionner. Ne serais-ce pas lié ?

Non.
Docker compose en ssh

Ah !!! Dans ce cas, il faudrait que tu vérifie un petit truc.

Est-tu certains que tu mappes le bon devices à chaque redémarrage. Je m’explique, avec compose etc… il peux arrivé (surtout avec un hub) que le numléro de mappage oit différent. En effet, la numérotation est fonction de la détection du matériel et peux, parfois changer. D’où le fait que tu cherches à mapper un device qui en fait, n’existe pas.

As tu vérifiez à chaque fois la numérotation ?

Sinon, il y a un truc qui m’interpelles également.

Le privilieged: true. Il me semble que ça pose problème pour les device aussi. Je crois que j’avais un soucis avec ça, il me semble. Essaye de virer le privilieged pour voir.

Bonsoir @Gsyltc

Le privilieged ne change rien
j’ai fait des test avec la clé usb bluetooth seule

Quand je parcours le web, on lit toujours la m^me chose
Passez le conteneur en mode HOST

Ou une autre solution, c’est de creer un mini conteneur en mode Host rien que pour la clé
https://forum.jeedom.com/viewtopic.php?f=157&t=24980&sid=1e44d1f0f59819a1afa73fdb297af6c1&start=80

Ok pour privilieged. C’était jsute pour être sur. De plus, normalement le mode privileged ne t’oblige pas à mapper le device, il te donne accès a tout, device compris.

si tu fais un docker run -dit --privileged -p XX:XX image:tag, tu verras ton device sans avoir besoin de le mapper. Le problème c’est que tu donne accès à tout dans ton conteneur. et ce n’est pas safe.

Après pour l’obligation d’être en mode host, je ne suis pas d’accord. tu peux mapper des devices sans être en mode host.

As-tu essayé de lancer avec un commande docker normale ? juste comme cela

docker run -dit --device /dev/ttyUSBX -p XX:XX image:tag ?

vois tu ton bluetooth ?

Bonjour @Gsyltc

Mon problème est la …
Mon conteneur n’est pas en Host

Donc on en revient à mon message initiale …

Tu me demandes de faire une commande

docker run -dit --device /dev/ttyUSBX -p XX:XX image:tag ?

oui mais quel USB ? puisque je ne vois pas ma clé Bluetooth …

Attends il y a un truc que je pige pas.

Sur ton hôte (le syno), tu vois bien ta clé non ? C’est dans le conteneur que tu ne la vois pas ? Du moins, c’est ce que j’ai compris au fil des messages.

la commande étant à lancer sur l’hôte (en ssh par exemple), c’est l’usb de l’hôte qu’il faut mettre

J’ai exactement le même soucis que j’essaie de résoudre depuis plus d’une semaine … sans succès !

  • soit je crée mon conteneur en mode « host » avec privilèges et je mappe « /dev/bus/usb » et ça fonctionne, mais mon conteneur n’est plus accessible via une IP distincte avec tous les problèmes que ça pose, de plus le SSH ne fonctionne pas,
  • soit je crée mon conteneur en bridge ou en macvlan, mais je ne peux plus accéder à la clé USB Bluetooth

Pour résumer, les clés Bluetooth USB ne ‹ montent › pas de périphérique virtuel du style « ttyUSBx » dans /dev/
D’après ce que j’ai compris, le driver xhci qu’elles utilisent fait que le Bluetooth est plutôt considéré comme une sorte de carte réseau que comme un périphérique USB classique.

C’est probablement là que le bas blesse, car du coup on ne sait pas comment mapper ce périphérique vers le conteneur Docker :frowning:

Si quelqu’un a une solution QUI MARCHE, je suis preneur également :slight_smile: