Jump to content

Recommended Posts

Geschrieben

Hallo Administratoren,

 

beim Industrial Quad Relay kann man aktuell beim setMonoflop jeden Switch einzeln ansteuern über eine Bitmaske, die angibt welche Schalter vom Befehl "betroffenen" sind.

 

Beim setValue() geht das aber leider nicht. Der setValue setzt immer alle 4 Switches auf den angegebenen Zustand.

 

Daher mein Verbesserungswunsch:

zusätzlich zum setValue() noch ein setValue() welches auch eine Bitmaske akzeptiert und nicht immer zwingend alle 4 Switches auf einen neuen Zustand setzt. Das benötigt wohl neue Brickletfirmware.

 

Mein Anwendungsfall:

Ich wollte zwei Schalter als Monoflop verwenden und zwei andere "normal". Die kommen sich aber in die Quere: wenn der Monoflop aktiv ist (ein) und ich mit getValue() den Zustand auslese, dann ein weiteres Bit setze, dann wieder setValue() aufrufe => der Monoflop ist abgeschaltet und der eine Switch des Monoflop ist nun dauerhaft an.

 

Außerdem brauche ich zwingend getValue() Aufruf, wenn ich nur ein Bit ändern will (getValue -> Bit ändern -> setValue).

Mit einer anderen setValue-Funktion wäre das einfacher, der getValue kann entfallen und damit ein Befehlspaket.

Wenn es ein setValue mit Bitmaske gibt, ist das Ansteuern einzelner Schalter effizienter: der getValue kann entfallen.

Geschrieben

Ich finde es ehrlich gesagt auch (schon seit dem Dual Relay) etwas störend, dass man einzelne Relays nicht schalten kann ohne vorher alle Relays auszulesen. Da wäre eine Ansteuerung wie beim Servo-Brick (servoId -> relayId) deutlich schicker. Natürlich sollte die Variante des gleichzeitigen Ansteuerns erhalten bleiben ^^

Geschrieben

Wie das geht nicht?

 

Beim IO4 geht das doch auch! Ich konnte mein QuadSolid noch nicht in Betrieb nehmen, aber das gibt arge Probleme, spaetestens wenn 2 verschiedene Computer UNABHAENGIG jeweils (s)ein Relay schalten muessen.

 

Das waere praktisch unmoeglich, da zwischen auslesen und schreiben nicht klar ist ob ein anderer Rechner den Wert veraendert hat.

 

Also bitte aendern.

 

Danke.

 

Der Loetkolben

Geschrieben

Klingt sinnvoll. Wir würden dann dafür einfach zusätzlich API hinzufügen. Was haltet ihr von "setValueSelective(pin_mask, value_mask)" oder "setPartialValue(pin_mask, value_mask)"?

 

Wie würdet ihr es nennen?

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Gast
Reply to this topic...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Clear editor

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...