Arduino Nano clone et usb-serie CH341

Bonjour,

Le sujet a été traité dans plusieurs fils de ce forum mais je n'ai pas trouvé de solution à mon problème.

Je suis sous Linux Debian Stretch et IDE Arduino 1.6.11.

Les 2 nouveaux Arduino Nano reçus recemment sont bien vus dans Linux avec un port /dev/ttyUSB0, le driver CH341 est bien chargé à la connexion de l'Arduino.

Impossible pourtant de charger un sketch, j'ai les erreurs habituelles de avrdrude qui ne communique pas avec l'arduino.

J'ai tenté plusieurs solution:

  • Faire le reset manuellement dés le lacement de l'upload au cas ou il n'y aurai pas d'autoreset.
  • Reflashé le bootloader avec un programmateur USBTiny, flashage ok mais toujours impossible d'uploader un sketch.

  • j'ai pu testé les Arduino Nano en flashant un sketch avec avrdrude et l'USBtiny et cela fonctionne mais pas trés pratique.

Les solutions vus sur ce forum parlent d'installer le driver du ch341 mais, celui-ci fait déjà parti du noyau récent.

Me voilà au bout de mes solutions possibles.

si quelqu'un aurait une idée ?

merci

Les solutions vus sur ce forum parlent d'installer le driver du ch341 mais, celui-ci fait déjà parti du noyau récent.

Non l'installation c'est pour windaube uniquement. Sous Linux le pilote est intégré au noyau depuis des lustres, il n'y a rien à faire.

Par contre fait tu partie du groupe "dialout" ?

PS : Stretch est encore en développement, c'est comme si aujourd'hui tu travaillait avec Windows 11. Si tu veux mon avis sur Stretch c'est qu'il y a encore du boulot avant qu'elle puisse sortir en version stable. Je la teste mais j'ai toujours une Jessie (stable) sous la main.

Puisque tu arrives à charger un programme avec une sonde USBTiny, tu pourrais essayer de mettre un programme qui envoie quelques caractères sur la ligne série pendant le setup() et qui dans loop() lise la ligne série et la recopie en sortie. Tu pourrais ainsi vérifier si la chaine AVR + CH341 est fonctionnelle hors programmation.

68tjs: Non l'installation c'est pour windaube uniquement. Sous Linux le pilote est intégré au noyau depuis des lustres, il n'y a rien à faire.

Par contre fait tu partie du groupe "dialout" ?

PS : Stretch est encore en développement, c'est comme si aujourd'hui tu travaillait avec Windows 11. Si tu veux mon avis sur Stretch c'est qu'il y a encore du boulot avant qu'elle puisse sortir en version stable. Je la teste mais j'ai toujours une Jessie (stable) sous la main.

Pas de problème de droit pour les ports série (groupe dialoout ok), j'ai d'autres Arduinos dont un Nano qui fonctionnent tres bien.

Je suis sous Stretch depuis plus d'un an sur 2 postes avec KDE en utilisation quotidienne, c'est trés stable. Mais tu as raison on est pas à l'abri d'un probleme de pilote.

Testé sur une Debian jessie est prévu si on s'oriente vers un problème linux.

fdufnews: Puisque tu arrives à charger un programme avec une sonde USBTiny, tu pourrais essayer de mettre un programme qui envoie quelques caractères sur la ligne série pendant le setup() et qui dans loop() lise la ligne série et la recopie en sortie. Tu pourrais ainsi vérifier si la chaine AVR + CH341 est fonctionnelle hors programmation.

C'est en partie fait avec mon sketch que j'ai flashé, j'ai fait clignoter la led et ecrit sur le port série. Et cela a fonctionné. Faudrait que j'essaie une lecture aussi

Testé sur une Debian jessie est prévu si on s’oriente vers un problème linux.

Non pas de Linux, ce serait juste un problème de Stretch qui est encore en développement il ne faut pas l’oublier. Ou de KDE 5 qui peine à fonctionner pleinement. J’ai un son qui fonctionne parfaitement bien en KDE4 (Jessie) mais pas en KDE5, y compris avec la version KDE 5 d’Ubuntu que j’ai installé pour voir si le pb venait de Stretch ou de KDE.

fdufnews:
Puisque tu arrives à charger un programme avec une sonde USBTiny, tu pourrais essayer de mettre un programme qui envoie quelques caractères sur la ligne série pendant le setup() et qui dans loop() lise la ligne série et la recopie en sortie.
Tu pourrais ainsi vérifier si la chaine AVR + CH341 est fonctionnelle hors programmation.

Effectivement ce pourrait être un problème d’un CI défectueux.

Pense passe pas à un CI defectueux car j'ai les 2 Nano qui se comportent pareils.

Je vais programmé un sketch avec l'USBtiny pour tester le port série dans les 2 sens. Voir mettre une version plus recente du kernel si il y a sinon testé avec une Jessie (faut que je refasse une install)

je vous tiens au courant si intéressés.

merci pour votre aide

Voir mettre une version plus recente du kernel

Pas bien utile, le CH340/1 était déjà géré avec Jessie en testing !

Pense passe pas à un CI defectueux car j'ai les 2 Nano qui se comportent pareils.

Si elles proviennent du même lot de fabrication le CI défectueux est envisageable. Tu as un lien vers l'endroit où tu les as acheté ?

dialout ok, driver linux Ok, d'autres Ardinos OK sur ce même port USB.......

câble utilisé avec ces clones nanos ?? aspect des soudures et de l'embase USB sur ces clones ??

Bon pas très optimiste, je viens de vérifier que mon ancien Arduino Nano qui fonctionne avec le même cable USB utilise aussi le driver ch341-uart donc le problème ne vient pas de là.

J'ai flashé un sketch avec le programmateur ISP qui teste le port série en lecture/ecriture, cela fonctionne mais la réception se ne fait pas comme attendu, je recois les caractères par "lots" comme si un buffer intermédiaire se vidait.

Le meme sketch sur l'Arduino Nano fonctionnel m'affiche bien caractère par caractere pour chaque println.

Probleme identique pour les 2 Nanos achetés ici: http://www.banggood.com/fr/ATmega328P-Nano-V3-Controller-Board-Compatible-Arduino-p-940937.html?rmmds=search

Je me vois mal les retourner en chine. Toujours possible de les flacher en ISP à défaut !