Auteur Sujet: projet centrale "LaBox" wifi DCC++ Can  (Lu 555357 fois)

Thierry

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 810
    • Voir le profil
Re : projet centrale "LaBox" wifi DCC++ Can
« Réponse #690 le: novembre 22, 2022, 10:35:45 pm »
Voici une nouvelle version, avec un SSid qui s'appelle Labox_xxx, et un mot de passe Pass_xxx . Pas de moyen pour l'instant de supprimer complétement le mot de passe, ou de passer en mode WPA simple. C'est normalement tout le temps compatible WPA, WPA2 et même WPA3 !
J'ai mis en route aussi l'affichage voltage/courant. Par contre, les routines utilisées pour la remontée d'info de la voie ne semblent pas fonctionner... Ce qui fait que la lecture de CV ne marche pas. La loco vibre, mais rien ne remonte, malgré l'adaptation nécessaire à la lecture de CV sur la voie principale.

Est il prévu un jour d'avoir une Labox avec deux sorties, voie principale et voie de programmation ?

msport

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 2217
  • HO avec DCC++ en DIY Réseaux très éphémères
    • Voir le profil
Re : projet centrale "LaBox" wifi DCC++ Can
« Réponse #691 le: novembre 22, 2022, 11:21:17 pm »
Pas de succès avec mon vieil Android ... problème mot de passe conservé

Par contre avec celui que j'utilise connexion sur Labox_xxxxxx avec le mot de passe mis en dur dans le programme (pas encore testé à "" ) :
Affichage loco sur hmi qui suit EngineDriver
Courant et tension présents
Boutons inopérants
Cordialement

msport

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 2217
  • HO avec DCC++ en DIY Réseaux très éphémères
    • Voir le profil
Re : projet centrale "LaBox" wifi DCC++ Can
« Réponse #692 le: novembre 23, 2022, 10:49:08 am »
mon vieil Android ... a bien voulu passer le mot de passe et donc a repris du service.

Mettre à blanc le mot de passe WiFi ne fonctionne pas : LaBox ne génère pas d'AP, on reste sur un écran partiel.
C'est le mot de passe de ma Freebox que j'ai mis et qui est pris en compte.

Pour les boutons : où sont définis les GPIO correspondants ?
Cordialement

Thierry

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 810
    • Voir le profil
Re : projet centrale "LaBox" wifi DCC++ Can
« Réponse #693 le: novembre 23, 2022, 01:23:47 pm »
#define PIN_BTN_SEL             18
#define PIN_BTN_BTNUP           23
#define PIN_BTN_BTNDWN          19

dans hmiConfig.h

msport

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 2217
  • HO avec DCC++ en DIY Réseaux très éphémères
    • Voir le profil
Re : projet centrale "LaBox" wifi DCC++ Can
« Réponse #694 le: novembre 23, 2022, 02:56:12 pm »
Dans bibliothèque OneButton, on a :

OneButton::OneButton(const int pin, const boolean activeLow, const bool pullupActive)

dans hmi.cpp, on a :

  BtnUp = new OneButton(PIN_BTN_BTNUP, true);
  BtnDown = new OneButton(PIN_BTN_BTNDWN, true);
  BtnSelect = new OneButton(PIN_BTN_SEL, true);

est-ce qu'il ne faudrait pas pour activer les pullup, avoir ?

  BtnUp = new OneButton(PIN_BTN_BTNUP, true, true);
etc.



Cordialement

msport

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 2217
  • HO avec DCC++ en DIY Réseaux très éphémères
    • Voir le profil
Re : projet centrale "LaBox" wifi DCC++ Can
« Réponse #695 le: novembre 23, 2022, 03:35:44 pm »
... mais sur la version de pcb que j'ai ressorti j'ai un problème d'inversion de contact ...
Cordialement

Thierry

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 810
    • Voir le profil
Re : projet centrale "LaBox" wifi DCC++ Can
« Réponse #696 le: novembre 23, 2022, 03:45:07 pm »
Du côté HMI, c'est le code tel qu'il est utilisé dans Labox V1, à part quelques subtilités... Je n'ai rien changé au code des boutons.

msport

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 2217
  • HO avec DCC++ en DIY Réseaux très éphémères
    • Voir le profil
Re : projet centrale "LaBox" wifi DCC++ Can
« Réponse #697 le: novembre 23, 2022, 04:03:20 pm »
Autant pour moi, une fois les boutons dans le bon sens, j'ai accès aux menus. Le pullup doit être activé par ailleurs.
La détection d'adresse n'est pas encore implémentée ? Mais la voie est mise sous tension.
Cordialement

Thierry

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 810
    • Voir le profil
Re : projet centrale "LaBox" wifi DCC++ Can
« Réponse #698 le: novembre 23, 2022, 05:00:03 pm »
C'est implémenté, mais la remontée d'info par la lecture analogique de la broche 36 ne semble pas fonctionner dans ce cadre là...

Thierry

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 810
    • Voir le profil
Re : projet centrale "LaBox" wifi DCC++ Can
« Réponse #699 le: novembre 24, 2022, 10:16:07 am »
Et après réflexion, je pense que ce sont les facteurs de seuil et de valeur qui ne doivent pas correspondre à notre implémentation matérielle. A creuser.

msport

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 2217
  • HO avec DCC++ en DIY Réseaux très éphémères
    • Voir le profil
Re : projet centrale "LaBox" wifi DCC++ Can
« Réponse #700 le: novembre 24, 2022, 09:14:38 pm »
Du coté timings, c'est plus que bon ...

Moi aussi, j'ai des problèmes de version d'IDE après installation de la 2.0.2.

La 1.8.19 termine la compilation avec : 'struct esp_wps_config_t' has no member named 'crypto_funcs'
alors que la 2.0.2 la traite correctement

mais cette 2.0.2 refuse de téléverser DCCInspector-EX, heureusement j'ai une précédente installation de la 1.8.19 sur un autre ordinateur.


Cordialement

Dominique

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 3039
  • 100% Arduino et N
    • Voir le profil
Re : projet centrale "LaBox" wifi DCC++ Can
« Réponse #701 le: novembre 24, 2022, 10:14:54 pm »
De mon côté la 2.0.2 a fonctionné nickel (compile et televersement)
Cordialement,
Dominique

Thierry

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 810
    • Voir le profil
Re : projet centrale "LaBox" wifi DCC++ Can
« Réponse #702 le: avril 22, 2023, 02:40:33 pm »
Bonjour à tous

Nouvelle version 2.1.0 aujourd'hui. Le protocole Z21 a été appliqué et les applis Z21 sont donc devenues compatibles. Je travaille toujours sur la partie lecture de CV, mais je patine...

Thierry

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 810
    • Voir le profil
Re : projet centrale "LaBox" wifi DCC++ Can
« Réponse #703 le: mai 04, 2023, 08:49:43 pm »
Et voilà, une nouvelle version 2.2.0 est poussée sur Github, et elle permet enfin de lire l'adresse de la loco sur le réseau.

Le chemin a été long, jusqu'à ce que je me demande si l'original CommandStation-ex fraichement téléchargée de leur Github sait, elle, déjà lire les CVs. Et là, surprise, en utilisant l'entrée par la console via la commande <R 1 2 3> et en configurant la voie de programmation, ça marche ! Et même plutôt bien puisque trois locos différentes avec des décodeurs différents ont été testées avec un taux de réussite de plus de 90%.
Boosté par cette découverte, alors que je commençais à émettre des doutes sur mon matériel ou sur la capacité d'un ESP32 à lire une donnée analogique, je suis reparti de plus belle à la chasse au fautif dans Labox v2. Et je me suis aperçu après moultes essais que c'est la mise à jour de l'affichage sur l'écran Oled qui nuit à la qualité de réception des Ack (acknowledgement) , ces petites consommations de la loco qui font vibrer la machine et répondent à la centrale. Je pense que les timings de rafraîchissement de l'écran décalait d'autant les mesures de consommation, et on devait louper la plupart des acks qui ont un timing très précis. Et en bloquant le rafraîchissement de l'écran, par ailleurs inutile à ce moment, le temps de la lecture d'un CV le problème est résolu !
Je tente alors de faire fonctionner la lecture de CV sur la voie principale puisque la carte Labox n'a pas de sortie pour une voie de programmation. Là encore je rencontre un mur, j'ai tout tenté en essayant de leurrer le moteur de lecture des Ack, la génération des signaux DCC, mais rien n'y a fait. Je me suis alors rabattu sur une honteuse astuce pour contourner le problème. Ce n'est pas élégant, mais ça marche.
Impossible de contourner la lecture pour la convaincre de fonctionner sur la voie principale, la lecture ne marche que si dans la configuration on déclare une voie de programmation. Et cette configuration est fabriquée au lancement de l'ESP32... Vous me voyez venir ? J'ai tout simplement fait redémarrer l'ESP pour le changer de mode. Le mode est stocké tout au bout de la mémoire EEPROM pour ne pas gêner un éventuel usage par le moteur DCC, un seul et unique octet qui est soit un 'M' soit un 'P' qui dit dans quel mode sera la centrale lorsqu'elle redémarrera. Si rien n'a jamais été écrit là, on reste en mode pilotage ou 'M'.
En mode 'M', tout fonctionne correctement avec les applis compatibles. Les trains sont pilotés, ainsi que les accessoires comme sait le faire le successeur de DCC++. Lorsque l'on va dans le menu et que l'on demande à lire une CV, un 'P' est écrit dans l'EEPROM, et ESP.restart() est appelé ce qui redémarre le microcontrôleur. Pendant ce démarrage en mode 'P', je n'ai pas réussi à enlever la connexion Wifi qui est pourtant inutile pour ce mode, par contre l'affichage reste sur l'écran de lecture avec un ---- qui représente la valeur non lue. Dès que possible la lecture est lancée et la valeur remplace le '----'. Si l'on appuie sur le bouton 'Select' de la centrale, un 'M' est écrit dans l'EEPROM puis l'ESP est redémarré, et on revient dans le mode de pilotage.
C'est à peu près transparent, mais avec le redémarrage on a perdu les valeurs courantes des vitesses et des fonctions de la loco... Mais ça vaut mieux que de ne pas avoir de lecture de CV. Ca veut dire aussi que les commandes série de lecture/écriture (comme le <R 1 2 3>) ne fonctionneront pas en mode pilotage.

A noter que j'ai mis à jour la partie CommandStation-ex avec leur dernière version qui apporte notamment des corrections sur la lecture pour certains décodeurs récalcitrants.

En espérant que vous pourrez tester.
« Modifié: mai 04, 2023, 08:51:33 pm par Thierry »

Dominique

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 3039
  • 100% Arduino et N
    • Voir le profil
Re : projet centrale "LaBox" wifi DCC++ Can
« Réponse #704 le: mai 04, 2023, 11:11:35 pm »
Un grand BRAVO à toi, Thierry !
Quel progrès et quel boulot, surtout avec toutes ces explications.

Je vais tester dès que possible, avec impatience.

Amitiés.
Dominique
Cordialement,
Dominique