Je me suis cogné la tête sur la table pendant des jours pour essayer de comprendre cela. Pour la vie de moi, je narrive pas à obtenir mon port série Raspberry Pi 3 pour communiquer avec le Xbee Series 2.
Jai vérifié mon /boot/cmdline.txt
et il ny a aucune référence à AMA0 dans le fichier. Voici ce qui est courant là-dedans:
dwc_otg.lpm_enable=0 console=serial0,115200 console=tty1 root=/dev/mmcblkOp2 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait
EDIT: PI 3 nutilise pas AMA0. Il utilise S0. Jai supprimé lentrée console=serial0,115200
Puisquil sagit de la mise à jour Jessie, il ny a pas dinittab. Dans lequel jai lu que je devais faire ce qui suit (ce que jai fait):
sudo systemctl stop [email protected] sudo systemctl disable [email protected] sudo systemctl mask [email protected]
Après avoir fait tout cela, jouvre cutecom , réglez-le sur 9600 baud rate, lecture / écriture, données 8 bits, 1 bit stop, et réglez le périphérique sur / dev / ttyAMA0.
Quand je clique sur connect et tape:
+++
pour entrer dans le mode de configuration que jobtiens:
write returned 0 errno: 11 write : Resource temporarily unavailable
Je « ne sais pas ce que je » fais faux ici … Je sais que le Xbee est fonctionnel car je suis capable de le configurer à laide du logiciel XCTU via une carte de dérivation série-USB. Mais sur le Pi connecté via les broches série GPIO, je nobtiens aucune réponse.
Des idées?
Le Xbee est connecté à un explorateur régulé Spark Fun Xbee
Jai également des problèmes avec mon Raspberry Pi 2 (Cest là que le Pi 3 communiquera). Sur le Pi 2, jai édité le fichier cmdline.txt et supprimé les références à AMA0:
dwc_otg.lpm_enable=0 console=tty1 root=/dev/mmcblkOp2 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait
Et jai parcouru les commandes systemctl mentionnées précédemment sur le Pi2.
Actuellement, lorsque jouvre une session en utilisant cutecom (S0 pour Rpi3 AMA0 pour Rpi2), je nobtiens aucune sortie. Je tape +++
dans la ligne dentrée, je vois le voyant TX clignoter sur mon Regulated Explorer mais je nobtiens aucune sortie à lintérieur de cutecom, ni aucun message dans la fenêtre du terminal.
Commentaires
Réponse
Le Pi3 a permuté les ports série. /dev/ttyAMA0
est désormais utilisé pour Bluetooth. serial0
fait référence au port série non Bluetooth qui est sur /dev/ttyS0
par défaut.
Mon expérience si jessaie de utiliser serial0
nest pas bon. Cela fonctionne, mais de manière peu fiable, même si jai seulement essayé dutiliser un convertisseur série vers USB vers un PC et que je nai pas été testé de manière approfondie. Après une lecture plus approfondie, le miniUART utilise l «horloge de base» qui peut changer avec les changements de vitesse du processeur, ce qui peut expliquer le problèmes. Jai vu des suggestions pour corriger lhorloge avec: –
core_freq=250
MODIFIER Jai essayé depuis et cela semble résoudre les problèmes. Jusquà présent, je peux « Je ne vois aucun inconvénient.
Le miniUART
est également limité – il ne prend en charge que 8 bits de données et na pas de parité ainsi quun tampon plus petit.
Si vous nutilisez pas Bluetooth, il est possible de remplacer les ports dans larborescence des périphériques. Il y a un pi3-miniuart-bt
et pi3-disable-bt
module.
EDIT Jai maintenant réussi à faire fonctionner la série à ma satisfaction sur Pi 3 et je lai documenté dans How-do-i-make- serial-work-on-the-raspberry-pi3
Commentaires
- Oh, je vois … Cest bien savoir. Jimagine que cest la raison pour laquelle je nai jamais reçu de réponse de AMA0. Dois-je simplement désactiver serial0 alors?
- Et le ferais-je simplement en supprimant la référence dans cmdline.txt ou aurais-je également besoin dexécuter des commandes systemctl similaires?
- @ Myg0t sur le Pi3 apparemment, vous DEVRIEZ utiliser serial0 qui est lUART non BT. Je nai pas essayé cela moi-même.
console=serial0,115200
decmdline.txt
. Bien quil ne sagisse pas ' dune référence àAMA0
, il sagit bien évidemment dune référence à une console série, qui ne pourrait être que celle du GPIO. Assurez-vous de laisser ce fichier sur une seule ligne!ttyS0
w / the Xbee à la place également alors.sudo minicom -b 9600 -D /dev/ttyS0
Je ne ' pour rien obtenir. Il montre le message de bienvenue de minicom montrant les options et autres, mais aucun statut en bas du terminal et je peux ' t taper quoi que ce soit. Lorsque jutilise cutecom avec les mêmes paramètres, je ' nobtiens aucune sortie non plus (rien dans la console ne disant quil est indisponible ou autre).