mehrere TC420? #11
Replies: 6 comments
-
Hallo Matrix1000, Adams Klasse TC420 kann (bisher) nur mit einem Controller umgehen. Da ich nur einen einzigen davon besitze und keine Erfahrung mit usb.core habe, kann ich nicht abschätzen oder testen, ob von mehreren Controllern nur der erste/ein zufälliger erkannt, oder mit Fehler abgebrochen wird. Bisher hatte das keine Priorität, genug andere Baustellen ... Das Verhalten mit mehreren Controllern müsstest du berichten können ... ? Die Klasse TC420 in diese Richtung zu erweitern, kann aber nicht allzu schwer sein. Aus deinen anderen Repositories vermute (!) ich, dass du nicht viel Erfahrung mit Python hast. Ich würde das (schon aus Eigennutz) einbauen, wenn du mir einen Controller für ein paar Tage ausleihen kannst. Aus reiner Neugier: was machst du mit 3 TC420? Nutzt du das CLI oder die Klasse direkt? Markus |
Beta Was this translation helpful? Give feedback.
-
Hi Markus, ich versuche mal nächste Woche nochmal einen Test zu starten um dir das genauere Verhalten besser erklären zu können. Können auch gern über einen Geräteaustausch sprechen, aber Adressen tauscht man ja nicht öffentlich aus. :-) Viele Grüße |
Beta Was this translation helpful? Give feedback.
-
Hatte inzwischen deinen Diskussionsbeitrag in Adams Repo gesehen. Demnach stürzten deine TCs ab, wenn mehr als einer verbunden war. Ist das immer noch so? Wie man mit dem Python Paket usb.core mehrere gleiche Geräte erkennt und auseinander hält, habe ich mir inzwischen angesehen. Übrigens sind die zwei Onboard PWM Kanäle des Raspi viel höherwertig; da sind keine Dimmstufen mehr erkennbar. Dafür muss man halt eine MOSFET Leistungsstufe hinter den GPIO setzen. |
Beta Was this translation helpful? Give feedback.
-
Hi Markus, wenn mehrere TCs verbunden sind und ich z.b. ein Timesync ausführe kommt es unregelmäßig zu Hängern und Bustimeouts. Und hier ist das Ergebnis incl. eines lsusb: Das Auseinanderhalten der verschiedenen TCs dürfte schwierig werden. Was hällst du davon? Hast du bei den MOSFETs schon gute fertige Boards getestet? |
Beta Was this translation helpful? Give feedback.
-
Hallo (wie ist eigentlich dein echter Name?) Meine Vermutung war offensichtlich falsch, du verstehst das Handwerkszeug ;-) Umso besser 👍 Wie deine zwei Controller meldet auch meiner "1 LEYNEW" als Seriennummer, damit ist einer von deinen in einem anderen Nest geschlüpft. Ist nicht sonderlich überraschend, dass so ein Billigteil keine serialisierte Firmware bekommt. Das ist allerdings kein Problem, denn USB Bus und Device Nummer weden vom USB Host eindeutig vergeben. Das bedeutet für aquaPi, dass eine spezifische Buchse den Controller identifiziert; tauscht man zwei USB Buchsen, tauschen die beiden Controller ihre Rollen, ansonsten ist alles stabil. usb.core.Device.hash() wird sogar genau dafür passend berechnet. Man kann nur nicht einfach vorhersagen, welche USB Buchse den ersten Controller treiben wird (bei echten Seriennummern auch nicht wirklich). Für Zeit-Sync ist dir das sowieso egal. Was die Hänger angeht, hoffe ich, dass das mit den bisher fehlenden Timeouts zusammen hängt. Adam hatte (nachvollziehbar) angenommen, dass eine Erfolgsmeldung des Controllers auch bedeutet, dass er bereit für die nächsten Befehle ist. Dem ist leider nicht so; je nach Befehl braucht er eine unterschiedliche, zusätzliche Wartezeit. Siehe mein PR #13. Boards für MOSFETs nutze ich nicht. Habe mir ein Prototype Hat für meinen Zero2 besorgt und dort die MOSFETs direkt - und bisher ungekühlt!! - eingelötet. Davon eine ganze Batterie für 2 PWM Kanäle und GPIO Schalter für 12V CO2 Ventil, Heiz- und Pumpenrelais. Markus PS: wir können gerne auf PM wechseln, denn nicht alles hier ist von öffentlichem Interesse ... aquaPi (at) kuhn-clan.de |
Beta Was this translation helpful? Give feedback.
-
The support for multiple TC420 controllers connected in parallel (as discussed in German above) is implemented. |
Beta Was this translation helpful? Give feedback.
-
Hallo Markus,
bin gerade auch dein Projekt gestoßen.
Momentan nutze ich ebenfalls die tc420 tools von Adam.
Leider ist es mir bis jetzt noch nicht gelungen mehrere tc420 an einem Raspberry zu nutzen.
Mein erstes Ziel ist, alle meine tc420 (3 Stück) an einen Raspberry anzuschließen und regelmäßig bei
allen die Zeit zu syncronisieren. Hättest du zufällig eine Idee?
Viele Grüße
Beta Was this translation helpful? Give feedback.
All reactions