Je suis dans le même cas : pas de PC ni Mac (une tablette iPad à la rigueur mais je n'aurai pas le temps d'apprendre Swift et la programmer).
Je préfère un gestionnaire qui ne fait que cela, reçoit tous les événements du réseau et commande les trains, les signaux et les aiguilles (voire beaucoup plus comme les animations du réseau). Le seul gestionnaire hors PC que je saurais maitriser et adapter est celui de Pierre59 à configurer dans le code ou en JSON (si ça arrive bientôt).
Le bus CAN est la meilleure solution pour séparer les entités fonctionnelles et réaliser des développements indépendants les uns des autres et j'affirme que ce n'est pas plus compliqué que gérer un port série, et surement avec moins de problèmes :
- tout le protocole CAN est géré dans un contrôleur qui est soit intégré (comme dans l'ESP32 et de plus en plus de circuits) soit extérieur comme le MCP2515 ou 2517FD.
- Il s'interface en bus SPI donc ce qu'il y a de plus rapide avec 3 pins (MISO, MOSI et CLK) + in CS (chip sélect) et une entrée INT interruptions. Donc plusieurs périphériques SPI en // possibles. C'est presque moins que 3 ports série (6 pins).
- le contrôleur contient des tas de buffets d'entrée et de sortie intégrés et il gère intelligemment la présence des autres entités dans le réseau (tu déconnectes un cable, ça s'arrête et l'émetteur est prévenu, tu reconnectes et ça repart.
- les données ne sont jamais perdues (pas comme le serial, qui n'a qu'un seul buffet et en perd souvent, très souvent)
- des cables de liaison n'ont besoin que de 2 fils (on utilise du fil téléphonique en général) et on peut ajouter l'alimentation comme le fait Christophe.
- plus rapides : jusqu'à 1Mb/s et même 8Mb/s en CAN FD (que je n'ai pas essayé). Chaque message CAN peut contenir jusqu'à 8 octets en Can classique (celui qu'on utilise en général) et jusqu'à 64 octets en Can FD
- tu n'es plus limité aux 3 ports série du Mega, le Can supporte plus de 100 entités sur le même bus !
- etc : il y a plein de choses écrites sur le Can dans Locoduino et même le bouquin de Pierre Molinaro qui fournit les bibliothèques.
Je n’y connais rien en CAN, j’ignore si une transmission en 9 bits 250.000 Bauds est possible !
Ci-joint un schéma bloc de mon installation.
Comme indiqué plus haut, ce sont des octets de 8 bits chacun, en messages de 1 à 8 octets qu'on peut combiner de toutes les façons possibles (64 bits)
Il faut essayer le Can avec pratiquement tous les microcontroleurs c'est possible : on en a parlé très souvent.
LaBox supporte le Can sans problème : elle contient déjà un fichier Can prévu pour les commandes Marklin. On peut définir d'autres messages si besoin en plus ou à la place.
Pour démarrer en CAN, le plus simple est de faire un montage de test et d'utiliser les exemples fournis dans la bibliothèque ACAN-ESP32 par exemple, LoopBackDemo pour commencer et vérifier les branchements avec le contrôleur Can. Après tu remplaces le mode LoopBack par le mode Normal et tu branches un autre circuit. Il n'y a qu'un instruction send et une instruction receive : c'est très simple !
En ce moment je fais joujou avec des satellites PICO de Jean-Luc et ça fonctionne très facilement avec un Pico et un MCP2515.
Dis nous si tas as des questions.