Firmata mit MCP23017

Begonnen von beSmart, 08 April 2018, 14:16:41

Vorheriges Thema - Nächstes Thema

Wzut

Zitat von: R1F800 am 28 November 2020, 12:50:53
Nicht falsch verstehen
ne,ne ist schon klar, alles was sofort funktioniert ist eh langweilig :) An deinem list sieht man das das noitify noch nie getriggert wurde, also kann man sich Fehlersuche intern erst einmal ersparen und sich auf die RegEx des Define konzentieren.
Ändere die doch mal ab auf define n_MCP_GPB0 notify NanoPortexpander:PortB0.*
es wird dann unnötig oft getriggert, aber das erseinmal egal da ja intern sehr genau unterschieden wird.
Du kannst auch am notify selbst noch verbose 5 setzen dann erzeugt es selbst einen Log Entrag des Aufrufs.
Maintainer der Module: MAX, MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK, readingsWatcher

R1F800

#61
Moin...
was soll ich sagen, manchmal liegt die  ??? Lösung derart Nahe das man 20 Mal drüberschaut...  :-[

Das Notify funktioniert nun sowohl mit .* als auch mit .o(n/ff) .... Erst einmal gut !! Jetzt kommts, man lenke sein Augenmerk mal von den was einem offendichtlich erscheint auf das unglaubwürdig fehlerhafte (ich hatte ja meine lists gepostet) :

Internals:
   DEF        define n_MCP_GPB0 notify NanoPortexpander:PortB0:.o(n|ff) {
CommandSet(undef, 'NanoPortexpander PortA7 on')  if ($EVTPART1 eq 'off');
CommandSet(undef, 'NanoPortexpander PortA7 off') if ($EVTPART1 eq 'on');
}


der Term gehört ja nicht in die Definition ... sondern Beschreibt ja eher das Device beim Anlegen ... Kopierfehler.

Trotzdem
Besten Dank !!


Jetz die allumfassend pghilosophische Frage... Wieso DOIF oder wieso NOTIFY ... beide machen hier ja das Gleiche ...

Wzut

Gegenfrage : warum Pepsi statt Coca Cola ? Kommen beide aus Amiland und sind schwarz mit Kohlensäure ....

Das ich das in deinem list übersehen habe ärgert mich jetzt richtig  :(
Maintainer der Module: MAX, MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK, readingsWatcher

R1F800


R1F800

#64
Noch einmal eine Nachfrage.
Ich habe jetzt ein Relaisboard 8fach am MCP23017 PORTA
als erstes sind schon einmal ALLE Relais beim Startup "an". OK das könnte man ja mit OnStartUp beheben ...
Wenn ich jetzt aber ein Relais ausschalte .. sagen wir A7 und dann im Nachgang A6 .. geht A7 wieder in den Initialwert "an"

Mir scheint als wäre das Logiklebvel genau invertiert ... Wie bekomme ich das "umgedreht" ?   
EDIT: kann man jaeigentlich mit leben.

viel irritierender ist die Tatsache, dass ich die Ports gegenseitig scheinbar beineinflussen .. A7 an andere Port A3 z.B. geht aus .. oder umgekehrt ..