/dev/ttyUSB0 et /dev/ttyACM0 introuvable sur PI3+ avec NOOBS raspbian light

Vous avez réalisé ou vous voulez réaliser un truc impensable avec votre Raspberry Pi ? Cet endroit est pour vous...

Modérateur : Francois

Domdur
Messages : 7
Enregistré le : sam. 19 mai 2018 12:33

/dev/ttyUSB0 et /dev/ttyACM0 introuvable sur PI3+ avec NOOBS raspbian light

Message par Domdur » sam. 19 mai 2018 12:57

Bonjour à tous, je poste ce message sur framboise car c'est des meilleur site que j'ai trouvé sur le net (en français)

Os court !

Je développe des applis dépuis pas mal d'années sous linux et comme je suis proche de la retraite je me suis offert un PI3 et un Pi zero WE ...

je voudrait les connecter entre eux via USB pour qu'il dialogue ( parce qu'il me manque un port SPI il m'en faut Trois alors je délègue le TAF sur un pi zéro)

mais je désespère, impossible de trouver ces @grr.. de ports /dev/ttyUSB ou /dev/ttyACM0 !

j'ai essayé de désactiver bluetooth, marche pas, désactive UART marche pas, ni sur pi zero ni sur PI3. Evidemment j'ai fait apt-get update,apt-get upgrade et rpi-update, mais rien n'y fait ... j'ai lu de centaines de forum, tout le monde dit que c'est simple mais moi je ne trouve pas de soluce. Le pire c'est que je suis sûr que je trourne autour de la solution mais je trouve pas (snif)

question :
1 faut -t'il branché un tty sur l'USR pour que le port apparraisse ?
2 y a t-il un driver special a instaler ? (jai mis en place sudo apt-get install python-dev python3-dev python-serial)
3 sinon , peut-on ajouter un spi sur raspberry (moins cher qu'un pi zero 1.3 a 5€)?

avec un grand merci par avance de me répondre si vous avez un solution ou même qq piste je suis preneur !

domi
Administrateur
Messages : 3230
Enregistré le : mer. 17 sept. 2014 18:12
Localisation : Seine et Marne

Re: /dev/ttyUSB0 et /dev/ttyACM0 introuvable sur PI3+ avec NOOBS raspbian light

Message par domi » sam. 19 mai 2018 17:30

Bonjour,

Dans un premier temps, il faut effectivement que quelque chose soit connecté au port USB pour le voir apparaitre.

Pour connecter deux Rpi via USB, il faut je crois effectuer une configuration réseau static sur l'interface USB0. A vérifier car je n'ai jamais fait.....
Si cela peut vous aiguiller ?
Autre solution, interface USB - Série.
Passionné de Raspberry, Arduino, ESP8266, ESP32, et objets connectés :
Spécial débutant, concevez vous-même votre domotique DIY : https://www.youtube.com/c/DomoticDIY
Conception d'une station météo DIY, et envoi des infos à votre Domotique.

destroyedlolo
Raspinaute
Messages : 1586
Enregistré le : dim. 10 mai 2015 18:44
Localisation : Dans la campagne à côté d'Annecy
Contact :

Re: /dev/ttyUSB0 et /dev/ttyACM0 introuvable sur PI3+ avec NOOBS raspbian light

Message par destroyedlolo » sam. 19 mai 2018 18:00

Salut,
Domdur a écrit :
sam. 19 mai 2018 12:57
je voudrait les connecter entre eux via USB pour qu'il dialogue ( parce qu'il me manque un port SPI il m'en faut Trois alors je délègue le TAF sur un pi zéro)
T'as 3 solutions pour les faire communiquer par USB, de la plus simple mais la plus lente à la plus compliquée mais plus rapide :
  • faire communiquer les 2 en simili RS-232 ce que je crois tu veux faire. Dans ce cas, il suffit en effet de faire communiquer l'USB0 et ttyACM0 par un câble croisé ... une fois les dits ports activés comme tu as pu le voir. Mais n'ayant pas de raspberry, je ne peux pas t'aider.
Pour les 2 suivantes, il faut jouer directement avec l'USB. Mais il faut se souvenir que l'USB est asymétrique donc il te faut un maitre et un esclave.
  • En créant un pseudo réseau entre les 2. D'un coté, il y aura le module g_ether qui fera passé ton PI comme un clef pouvant fournir un service réseau, et de l'autre les modules cdc_ether et usbnet qui, si compilés avec le noyaux, sont chargés automatiquement en présence d'un périph USB fournisant le réseau. Il ne reste donc qu'à configurer les nouvelles interface créées. Je l'ai fait pour faire communiqué une tablette et mon PC pendant des tests et maintenant avec ma Freebox.
  • la derniere est plus compliqué : faire communiquer les 2 par les couches bas niveau de l'USB. Il y a sans doute les infos sur "kernel.org", mais je n'ai jamais essayé.
  • BananaPI : Gentoo, disque SATA de 2 To
  • Domotique : 1-wire, TéléInfo, Tablette passée sous Gentoo, ESP8266
  • Multimedia par DNLA
  • Et pleins d'idées ... et bien sûr, pas assez de temps.
Un descriptif de ma domotique 100% fait maison.

spourre
Raspinaute
Messages : 735
Enregistré le : lun. 22 déc. 2014 16:50
Localisation : 67380 LINGOLSHEIM

Re: /dev/ttyUSB0 et /dev/ttyACM0 introuvable sur PI3+ avec NOOBS raspbian light

Message par spourre » sam. 19 mai 2018 18:57

Domdur a écrit :
sam. 19 mai 2018 12:57
...
je voudrait les connecter entre eux via USB pour qu'il dialogue ( parce qu'il me manque un port SPI il m'en faut Trois alors je délègue le TAF sur un pi zéro)
...
Bonjour,

Si c'est un choix uniquement imposé par le "manque" d'un 3 ème bus SPI, c'est un faux problème :twisted:
Contrairement aux idées reçues et répétées de manière récurrenbte dans tous les forum, le bus SPI accepte un mode adressage (comme l'I2C.
Je connaissais le mode daisy chain pour pallier ce défaut de SS (Slave Select) mais c'est lourd à câbler et le débit diminue avec le nombre d'esclaves.
C'est grâce à une remarque pertinente de Bud Spencer que j'ai découvert ce mode d'adressage (que je n'ai jamais pratiqué):
https://forums.framboise314.fr/viewtopi ... ain#p27176

Si cela peut vous aider à simplifier votre montage, n'hésitez pas à nous faire part de votre expérience.

Sylvain
Modifié en dernier par spourre le sam. 19 mai 2018 23:54, modifié 1 fois.

Domdur
Messages : 7
Enregistré le : sam. 19 mai 2018 12:33

Re: /dev/ttyUSB0 et /dev/ttyACM0 introuvable sur PI3+ avec NOOBS raspbian light

Message par Domdur » sam. 19 mai 2018 19:54

whaaaa merci a vous tous pour ces réactions rapides, je vais creuser tout cela ...

en fait j'ai mis un petit écran tft sur le pi qui mange les 2 spi(s) d'un coup , alors pour mettre un lecteur rfic RC522 en plus je n'ai plus de spi dispo ...

Je vais essayer de voir la solution du double esclave en priorité !

encor merci ...

je vous tiens au courrant ...

spourre
Raspinaute
Messages : 735
Enregistré le : lun. 22 déc. 2014 16:50
Localisation : 67380 LINGOLSHEIM

Re: /dev/ttyUSB0 et /dev/ttyACM0 introuvable sur PI3+ avec NOOBS raspbian light

Message par spourre » dim. 20 mai 2018 00:12

Domdur a écrit :
sam. 19 mai 2018 19:54
...
en fait j'ai mis un petit écran tft sur le pi qui mange les 2 spi(s) d'un coup , alors pour mettre un lecteur rfic RC522 en plus je n'ai plus de spi dispo ...

Je vais essayer de voir la solution du double esclave en priorité !
...
Pour ne rien vous cacher, çava être dur si jamais ça fonctionne:
1) le module RFID n'est pas configurable sur l'adresse SPI.
2) Le TFT qui bouffe vos 2 SPI en a certainement besoin pour:
-) transférer l'image écran (un frame buffer) vers le'afficheur (très gros débit, même à faible résolution, car sérialisation).
-) la partie résistive d du touch control (peu de débit).
Le bus SPI va donc être très sollicité. Sur un Arduino/ESP on aurait pas ce problème puisque n'importe quel GPIO disponible peut être utilisé en SS (cf. bout de code sur la doc GO TRONIC:
https://www.gotronic.fr/pj2-sbc-rfid-rc522-fr-1439.pdf

Bon courage

Sylvain

Bud Spencer
Raspinaute
Messages : 1089
Enregistré le : lun. 15 août 2016 21:38

Re: /dev/ttyUSB0 et /dev/ttyACM0 introuvable sur PI3+ avec NOOBS raspbian light

Message par Bud Spencer » dim. 20 mai 2018 09:37

A ma connaissance, ce type d’écran n’utilise pas 2 bus SPI, mais un seul (SPI0) et ses 2 /cs dispo (spi0_ce0_n et spi0_ce1_n , Il ne faut pas confondre nombre de bus SPI et nombre de /CS par bus SPI). Si on se contente du hardware, des config et libs fournies par defaut, il est très compliqué voir impossible d’utilise un autre composant en plus de ces écrans sur le bus SPI0.
Domdur a écrit :
sam. 19 mai 2018 12:57

3 sinon , peut-on ajouter un spi sur raspberry (moins cher qu'un pi zero 1.3 a 5€)?
...
Oui, on peut le faire et ça ne coute pas un rond …

Ce qu’il faut savoir, c’est que le soc dispose de 3 bus SPI distinct, que seulement 2 sont cablés et seulement 1 est initialisé avec raspbian (2 avec windows 10 IoT). Il est toutefois possible d’initialiser ce second bus SPI (SPI1) sous raspbian depuis les dernières versions Jessie en modifiant le fichier boot/config. Les fonctions du bus SPI1 sont dispo sur les GPIO16 à GPIO20 (notation Broadcom) et c’est utilisable sur tous les PI qui disposent d’un connecteur GPIO 40 pins.

Toutes ces infos sont facilement trouvable sur le net.
exemple : https://elinux.org/RPi_SPI
Le premier ennemi de la connaissance n’est pas l’ignorance, c’est l’illusion de la connaissance (S. Hawking).

spourre
Raspinaute
Messages : 735
Enregistré le : lun. 22 déc. 2014 16:50
Localisation : 67380 LINGOLSHEIM

Re: /dev/ttyUSB0 et /dev/ttyACM0 introuvable sur PI3+ avec NOOBS raspbian light

Message par spourre » dim. 20 mai 2018 11:57

Bud Spencer a écrit :
dim. 20 mai 2018 09:37
A ma connaissance, ce type d’écran n’utilise pas 2 bus SPI, mais un seul (SPI0) et ses 2 /cs dispo (spi0_ce0_n et spi0_ce1_n , Il ne faut pas confondre nombre de bus SPI et nombre de /CS par bus SPI). Si on se contente du hardware, des config et libs fournies par defaut, il est très compliqué voir impossible d’utilise un autre composant en plus de ces écrans sur le bus SPI0.
...
Ce qu’il faut savoir, c’est que le soc dispose de 3 bus SPI distinct, que seulement 2 sont cablés et seulement 1 est initialisé avec raspbian (2 avec windows 10 IoT). Il est toutefois possible d’initialiser ce second bus SPI (SPI1) sous raspbian depuis les dernières versions Jessie en modifiant le fichier boot/config. Les fonctions du bus SPI1 sont dispo sur les GPIO16 à GPIO20 (notation Broadcom) et c’est utilisable sur tous les PI qui disposent d’un connecteur GPIO 40 pins.

Toutes ces infos sont facilement trouvable sur le net.
exemple : https://elinux.org/RPi_SPI
Salut Bud,

Toujours aussi intéressant de te lire :twisted:
Tu as entièrement raison (comme d'habitude) en précisant ce point. Seulement, pour 99 % de ceux qui s'attaquent au bus SPI (soit très peu de participants ici), le bus SPI c’est MOSI, MISO, CLK et SS (CE).

Théoriquement, la gestion de SPI1 est possible avec la lib BCM 2835 mais ça ne semble pas trivial.
A la question posée sur le site qui devrait être le site de référence, un posteur s'est vu renvoyé vers .... Google goups :
https://www.raspberrypi.org/forums/view ... p?t=152691
Je suis allé voir, c’est pas beaucoup plus clair avec des patchs parus en janvier de cette année. Je n'ai pas regardé si le patch est intégré dans la dernière version:
https://groups.google.com/forum/#!forum/bcm2835
Cordialement.

Sylvain
Modifié en dernier par spourre le dim. 20 mai 2018 23:32, modifié 1 fois.

Bud Spencer
Raspinaute
Messages : 1089
Enregistré le : lun. 15 août 2016 21:38

Re: /dev/ttyUSB0 et /dev/ttyACM0 introuvable sur PI3+ avec NOOBS raspbian light

Message par Bud Spencer » dim. 20 mai 2018 18:58

Salut Sylvain.

Le support du bus SPI1 a été ajouté à la lib bcm2835 dans les dernières versions qui date de janvier 2018 (c’est tout frais) avec les instructions bcm2835_aux_spi_........ Je t’avouerais que je n’ai pas testé ce SPI1 avec une distri linux, mais je l’ai déjà utilisé sous windows 10 IoT et il est parfaitement fonctionnel.

http://www.airspayce.com/mikem/bcm2835/group__spi.html

La petite combine du jour pour les electrogeeks qui chechent des idées : Avec un simple cmos 4071 ou un ttl 7432 (Quad 2 Input OR Gates), il est très facile de multiplier par 4 l’adressage d’un /CS de bus SPI en utilisant en conjointement n’importe quelles autres IO en sortie ;) ...
Le premier ennemi de la connaissance n’est pas l’ignorance, c’est l’illusion de la connaissance (S. Hawking).

Domdur
Messages : 7
Enregistré le : sam. 19 mai 2018 12:33

Re: /dev/ttyUSB0 et /dev/ttyACM0 introuvable sur PI3+ avec NOOBS raspbian light

Message par Domdur » mar. 22 mai 2018 11:00

merci à tous et plus particulièrement a Bud, effectivement je confondais le nombre de bus SPI et nombre de /CS par bus SPI, j'ai donc activé le SPI1 par l'ajout de la ligne :

dtoverlay=spi1-3cs

à la fin de /boot/config.txt et aprés reboot on obtient :

/dev/spidev0.0
/dev/spidev0.1
et
/dev/spidev1.0
/dev/spidev1.1
/dev/spidev1.2


le /dev/spidev1.2 est pratique pour le câblage car permet de regrouper le branchement sur la même partie du connecteur 40 broches

MOSI 38 SPI1_MOSI
MISO 35 SPI1_MISO
SCLK 40 SPI1_SCLK
CE0 12 SPI1_CE0_N
CE1 11 SPI1_CE1_N
CE2 36 SPI1_CE2_N

Voila donc le RFID fonctionne maintenant sur le SPI1 en CS2 via /dev/spidev1.2 , il me reste plus qu'a tester maintenant avec l'écran TFT,

Exit donc la solution de brancher un esclave raspi zero via USB :)
à suivre ...

Répondre

Retourner vers « Utilisateurs avancés »