Messages : 445 Date d'inscription : 30/01/2021 Age : 42 Localisation : Tarn
Sujet: Re: FTDX-3000 (Yaesu) Ven 14 Oct - 7:45
Non non tu as très bien compris, il s'agit d'un convertisseur de niveaux, c'est un MAX3232. Là je suis déjà sur mon chantier, les tentatives suivantes attendront ce soir ou demain soir mais je pense que vous avez raison, en dehors de ce détail de CTS et RTS il n'y a aucune raison que ça ne fonctionne pas vu que les commandes, très bien détaillées dans le PDF dédié, fonctionnent très bien en les envoyant par USB. Ce qui va dans le sens de vos suggestion, en plus. Affaire à suivre !
Dagui
Messages : 445 Date d'inscription : 30/01/2021 Age : 42 Localisation : Tarn
Sujet: Re: FTDX-3000 (Yaesu) Sam 15 Oct - 14:02
Ça fonctionne Bon, il va me falloir un moment avant de maîtriser les instructions nécessaires à ma bidouille, notamment celles qui concernent les données à mettre dans un tableau pour, par exemple, extraire "12345678" quand je reçois "FA12345678;" mais ce n'est rien d'autre que du temps à passer, je mettrai les évolutions ici. Bon samedi à tous
Messages : 445 Date d'inscription : 30/01/2021 Age : 42 Localisation : Tarn
Sujet: Re: FTDX-3000 (Yaesu) Sam 15 Oct - 16:08
Oui pardon, j'ai commenté un peu vite Ça fonctionne en ayant désactivé le RTS dans le menu du poste. Également, le convertisseur que j'ai mis en photo ne fonctionne pas mais je me suis fait dépanner un MAX3232 par une connaissance et maintenant les commandes sont reçues et prises en compte, et les réponses sont envoyées aussi
Ca ne marchait pas sans ton boitier d'interface ou tu n'as pas voulu risquer de péter l'UART du PC ? Au travers de la référence de ton boitier j'ai trouvé une note sympa d'Analog Devices
Il y a bien longtemps, j'ai développer un logiciel qui espionnait une jonction série (à l'endroit où tu es). J'avais dû faire une interface diodes/résitances pour adapter les niveaux qui étaient V23 (+15 -15). Le logiciel était écrit en C Borland et je gérais l'UART sur interruption car il fallait enregister, afficher etc en plus que de saisir les caractères. C'était avec une ancienne version de Windows qui nous laissait tripoter directement les UART (en fait on était sous le DOS). Lors de la mise au point, c'était laborieux car le moindre problème dans la gestion des interruptions plantait le programme et, de fait, le PC qu'il fallait arrêter/ redémarrer.
Maintenant avec le pseudo multi-tâche, ça ne plante plus QUE le programme mais, pour ça, Windows t'interdit de bricoler l'UART directement. Il faut développer un drivers conforme et ça, je ne sais pas faire.
Dagui
Messages : 445 Date d'inscription : 30/01/2021 Age : 42 Localisation : Tarn
Sujet: Re: FTDX-3000 (Yaesu) Sam 15 Oct - 17:36
Merci beaucoup pour ton intérêt, et pour le lien
Alors L'UART pour mes essais simples était celui d'un câble FTDI. Pour voir, dans un premier temps, si j'arrivais à dialoguer avec le port RS-232 du poste. Ce qui fut possible avec ce fameux DISABLE dans le menu du poste. J'ai envoyé des commandes comme 'fa;' (pour avoir en réponse la fréquence en cours sur le VFO A) depuis un terminal sous windows et j'avais ma réponse. Là je suis passé à un micro contrôleur Arduino. Je peux envoyer des commandes comme le 'fa;' en ayant programmé que ça s'envoie à l'appui d'une touche de mon clavier ou d'un passage à l'état bas sur une pin du uC. J'ai bien ma réponse en retour, qui s'affiche dans le terminal série Arduino ou un autre, et à l'appui d'une autre touche je peux changer la fréquence du poste. Ça, c'est bon.
La partie la plus délicate pour moi c'est de récupérer cette réponse qui est sensée être sous la forme "FA14120000;" et de l'attribuer à une variable. J'ai essayé de créer un tableau de caractères et de le remplir de tout ce qui vient du port série, ça se remplit bien, mais j'ai du mal à extraire uniquement ce qui m'intéresse. En gros, dégager le FA et le ; .
Car l'idée finale c'est un bouton VFO déporté, avec quelques options en plus. Donc je dois connaître la fréquence en cours dès le démarrage de l'arduino, pour savoir de quelle valeur je pars quand je tourne l'encodeur rotatif, puis mettre ça à jour dans ma variable à chaque incrémentation ou décrémentation.
Je suis parti sur un Arduino pro micro équipé d' un Atmega 32u4 car les cartes à base de Atmega 328 ne pourraient pas, si j'ai bien saisi, gérer les ressources nécessaires pour L'UART et l'encodeur rotatif.
Enfin, je raconte mes déboires mais je ne veux pas avoir l'air de demander à ce qu'on me fasse mes devoirs, j'aimerais me débrouiller de toute façon. Et puis ça me fait découvrir des trucs.
Ca te fait découvrir des trucs mais ça les fait assi découvrir aux autres. C'est l'intérêt de ce forum.
Je ne connais rien à Arduino pro (Atmega 32u4). Ca se programme comment ce truc là ? tu as un cross-compilateur sur un PC et tu transfères ensuite une image. Je lis ça ici.
Ca tourne sous Linux Auduino ?
Tu programmes, sur ton PC, en quel langage ? un pseudo assembleur ou un langage évolué comme le C ?
Dagui
Messages : 445 Date d'inscription : 30/01/2021 Age : 42 Localisation : Tarn
Sujet: Re: FTDX-3000 (Yaesu) Sam 15 Oct - 18:47
Alors il y a un IDE, qui ressemble davantage à Notepad++ qu'à un IDE et qui s'appelle Arduino IDE, et qui permet de programmer en C++ des petites cartes de développement qui intègrent un uC, un convertisseur USB-UART, un régulateur de tension, une LED ou deux... Des carte Arduino, dont la plus connue est la UNO. Certaines sont très limitées en nombre d'entrées sorties et tournent en 3,3V, pour faire de l'embarqué à faible consommation, d'autres comme la MEGA ont 54 E/S dont plusieurs UARTs, des ports I2c, SPI...
L'avantage est que c'est open source, c'est le postulat de base, software et cartes de développement, dans le but d'avoir des copies chinoises de leurs cartes pour 2€ et des dérivés de leur IDE. C'est ça en gros, l'univers Arduino. C'est pourquoi Aliexpress regorge des cartes Funduino, Penguino, et encore d'autres noms amusants. Ce sont des copies chinoises légales. Et elles fonctionnent très bien, en général le convertisseur usb UART est un CH341 don on a déjà les pilotes si on a déjà installé un câble de prog pour un poste ou un talkie quelconque.
Pour les gens comme moi ça permet de se lancer dans la programmation alors qu'on n'a jamais appris un langage, un tuto ou un bouquin suffit. Pour moi ce fut un bouquin, "Le grand livre d'Arduino".
Et il y a des tas de bibliothèques écrites et partagées par des utilisateurs pour piloter des afficheurs graphiques, des puces wifi, et d'autres machins plus complexes qu'un moteur CC ou une led ou un capteur analogique de température.
Le côté négatif est que ces bibliothèques, qui permettent de pondre un projet rapidement, empêchent de comprendre réellement ce qui se passe. On utilise et on modifie légèrement un exemple existant mais quand ça ne fait pas ce qui est espéré on n'a pas les bases de connaissances pour comprendre.
C'est mon cas ! J'ai fait quelques trucs avec des Arduinos, mais ça ne fait pas de moi un programmeur. Du tout. D'ailleurs, vu le temps nécessaire pour que je décortique la librairie "Serial" qui gère la communication UART et vu le peu de temps que j'ai de libre, le projet va durer longtemps.
un IDE et qui s'appelle Arduino IDE, et qui permet de programmer en C++
Je n'ai jamais fait de C++ mais je crois que C++ intègre C ANSI. Donc on doit pouvoir programer en C classique mais l'interface avec les bibliothèques est probablement défini en langage objet. J'en suis à programmer mes appli en C avec Android, parce qu'Android tourne au dessus d'un Linux et qu'il y a un complilateur C.
Je suis passé à C# mais ce n'est pas du tout fait pour ça. Le gros problème c'est que; quand tu commences à être bon dans un langage, et ça prends beaucoup de temps, il n'est plus "à la mode" et on finit par ne plus trouver de compilateur ou ce qui lui ressemble.
Bon courrage
Dagui aime ce message
Dagui
Messages : 445 Date d'inscription : 30/01/2021 Age : 42 Localisation : Tarn
Sujet: Re: FTDX-3000 (Yaesu) Sam 15 Oct - 19:32
L'avantage avec la programmation Arduino est que de ce côté là c'est stable, c'est le même langage pour toutes les cartes de dev et l'IDE permet aussi de programmer d'autres cartes à base de STM32, de uC de la famille ESP et je crois aussi de MSP430. Et puis la communauté Arduino respecte plutôt bien l'idée de partage, on ne compte plus le nombre de tutos, forums, pages perso, qui publient beaucoup de ressources.
Dagui
Messages : 445 Date d'inscription : 30/01/2021 Age : 42 Localisation : Tarn
Sujet: Re: FTDX-3000 (Yaesu) Mar 18 Oct - 19:29
Bonjour bonjour. Ça n'a pas beaucoup avancé ces derniers jours car je ne parviens pas à obtenir ce que je souhaites avec mon code. Puisqu'on parle de forum j'ai posé mon problème sur le forum officiel Arduino et on me donne des pistes intéressantes, dès que je réussis à me dégager un peu de temps je teste ça et je vous dis
Dagui
Messages : 445 Date d'inscription : 30/01/2021 Age : 42 Localisation : Tarn
Sujet: Re: FTDX-3000 (Yaesu) Sam 22 Oct - 20:08
Bonjour, ça a bien avancé. J'ai le code parfaitement fonctionnel pour mon bouton rotatif de VFO externe, avec deux boutons poussoirs pour déplacer le chiffre que l'on souhaite modifier (unité, dizaine, centaine, jusqu'à la dizaine de MHz). À brancher sur la prise RS-232 et la prise alim RCA. Me reste plus qu'à ajouter 8 LEDs pour indiquer la position et à intégrer le tout dans un boîtier plastique. Dès que c'est opérationnel je partage les photos du bazar et le code Arduino. Affaire à suivre
Dagui
Messages : 445 Date d'inscription : 30/01/2021 Age : 42 Localisation : Tarn
Sujet: Re: FTDX-3000 (Yaesu) Dim 2 Avr - 15:56
Bonjour bonjour, je m'aperçois que je n'ai jamais partagé la bidouille finale. J'ai intégré le tout dans un boîtier plastique et ajouté le "swap VFO" en pressant le bouton rotatif. Voici le bazar en fonction :
Les détails, le schéma (très simple) et le code sont disponibles en suivant le lien en commentaire, si ça peut servir à quelqu'un.