Hello Marc
Merci pour les info
J'ai en grande partie resolu certains des "sauts" visuel dans la gestion de mes effects lumineux en adoptant pour tous les timings utilises dans mon code l usage de micros()
J avais constaté que lorsque certains blocs tournent sur millis() et d autres sur micros() j avais parfois des "sauts" disgracieux.
Cette ajustement semble avoir au moins visuellement fortement estompé ce qui etait visuellement percu.
Pour le moment la loop génère le PWM BIT BANGING, les timings sont basés sur micros() qui est affecté à un timer hardware spécifique selon le modèle de CPU. Cela tourne bien avec en moteur pour la trame DCC la lib de AIKO PRA qui est lui aussi sur un timer hardware dédié.
La cohabitation tourne bien!
Grosso modo il y a une 20 aine de steps entre l'effet FULL OFF et FULL ON et 18 canaux en parallèle tournent bien. ( PWM, effet lumineux différencies)
Avec des effets de fondus lumineux ( UP ou DOWN) il y a de léger décalages ( pas de synchro inter canaux) mais rien de gênant à ce que j'en perçois.
Je dois faire des essais pour aller au delà de ce nombre et voir si des limites perturbatrices apparaissent. ( je pense plus à une extension de latence visuelle sur les effets de fondus)
J ai réglé mes "AVR" pour tourner à 20MHz( parfois 16) . Certains peuvent aller encore au delà (24Mhz) de façon stable ce qui apporte quelques ressources en "overclocking" si cette piste devait être considérée. ( et on reste loin des 120Mhz et au delà de CPU plus véloces!)
Pour ce qui est de quitter les AVR pour des ARM... l'idée est plaisante mais il y a encore peu de bibliothèque pour les exploiter ( traitement du signal DCC hormis la lib DCCNMRA,...)
Disposer de plus de ressources est toujours un gage de solution et d'ouverture vers des solutions enrichies ( la fuite en avant!)
J'ai néanmoins lu avec attention les dernières réalisation de Geoff BUNZA...
https://forum.mrhmag.com/post/sma47-wild1-wireless-onboard-for-dc-and-dcc-locos-and-devices-from-any-browser-12570559?pid=1334570851Conceptuel! Et sur une base "frenchie"! Cocorico!!
Base ESP32 TINY PICO. Chapeau l'artiste!
Une mine d'inspiration.
Il va falloir que je me penche sur les ESP32 car je n'y ai pas consacré de temps jusqu'ici.
J'avais déjà dessiné ce qui était "utile" pour intégrer le RP2040 comme alternative mais une customisation vers de l'ESP32 embarqué m'ouvre quelques idées et perspectives
Laurent