Я использую контейнер docker на Raspberry Pi 3 и пытаюсь прочитать данные с устройства I2 C из контейнера. Когда я использую i2cdetect
внутри docker, я вижу устройства. Опция запуска, которую я использую, - sudo docker run --device /dev/i2c-1 --name <name> <image>
, но когда я пытаюсь прочитать с устройства I2 C, все проверки CR C завершаются неудачно, как если бы файл /dev/i2c-1
не был подключен правильно. Похоже, каталог только что был скопирован при запуске и не связывался. Кто-нибудь еще испытывал это?
Я также попробовал опцию --privileged
и связал папку -v -v /dev:/dev
.
Я не могу использовать i2cget
для тестирования устройства, потому что оно использует 16-битную адресацию
Я использую библиотеку wiringPi для C https://github.com/WiringPi/WiringPi.
При запуске я получаю следующие сообщения:
backup:x:34:34:backup:/var/backups:/usr/sbin/nologin
list:x:38:38:Mailing List Manager:/var/list:/usr/sbin/nologin
irc:x:39:39:ircd:/var/run/ircd:/usr/sbin/nologin
gnats:x:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/usr/sbin/nologin
nobody:x:65534:65534:nobody:/nonexistent:/usr/sbin/nologin
systemd-timesync:x:100:103:systemd Time Synchronization,,,:/run/systemd:/bin/false
systemd-network:x:101:104:systemd Network Management,,,:/run/systemd/netif:/bin/false
systemd-resolve:x:102:105:systemd Resolver,,,:/run/systemd/resolve:/bin/false
systemd-bus-proxy:x:103:106:systemd Bus Proxy,,,:/run/systemd:/bin/false
_apt:x:104:65534::/nonexistent:/bin/false
Вывод из i2cdetect -y 1
в docker:
0 1 2 3 4 5 6 7 8 9 a b c d e f
00: -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- 68 -- -- -- -- -- -- --
70: 70 -- -- -- -- -- -- --