panStamp support

Begonnen von justme1968, 24 April 2013, 21:35:25

Vorheriges Thema - Nächstes Thema

klausw

#450
Hallo Andre,

beim auslesen der xml Dateien scheinen die Positionswerte nicht beachtet zu werden, sondern die Reihenfolge.
Bei den beiden folgenden Beispielen ist die Reihenfolge der Namen identisch, aber die Position ist jeweils umgekehrt.
Bei beiden Beispielen werden die Readings gleich angezeigt:

10.0-Zeitschaltuhr
10.1-Heizen
10.2-Frostschutz
10.3-leer
10.4-Pumpe_Boiler
2016-10-26 17:18:21
10.5-Pumpe_Heizkreis
10.6-Brenner
10.7-leer

obwohl sie eigentlich die Reihenfolge umkehren müssten.

    <reg name="Status" id="16">
      <endpoint name="Zeitschaltuhr" type="bin" dir="inp">
        <position>0.0</position>
        <size>0.1</size>
      </endpoint>
      <endpoint name="Heizen" type="bin" dir="inp">
        <position>0.1</position>
        <size>0.1</size>
      </endpoint>
      <endpoint name="Frostschutz" type="bin" dir="inp">
        <position>0.2</position>
        <size>0.1</size>
      </endpoint>
      <endpoint name="leer" type="bin" dir="inp">
        <position>0.3</position>
        <size>0.1</size>
      </endpoint>
      <endpoint name="Pumpe Boiler" type="bin" dir="inp">
        <position>0.4</position>
        <size>0.1</size>
      </endpoint>
      <endpoint name="Pumpe Heizkreis" type="bin" dir="inp">
        <position>0.5</position>
        <size>0.1</size>
      </endpoint>
      <endpoint name="Brenner" type="bin" dir="inp">
        <position>0.6</position>
        <size>0.1</size>
      </endpoint>
      <endpoint name="leer" type="bin" dir="inp">
        <position>0.7</position>
        <size>0.1</size>
      </endpoint>
    </reg>


    <reg name="Status" id="16">
      <endpoint name="leer" type="bin" dir="inp">
        <position>0.7</position>
        <size>0.1</size>
      </endpoint>
      <endpoint name="Brenner" type="bin" dir="inp">
        <position>0.6</position>
        <size>0.1</size>
      </endpoint>
      <endpoint name="Pumpe Heizkreis" type="bin" dir="inp">
        <position>0.5</position>
        <size>0.1</size>
      </endpoint>
      <endpoint name="Pumpe Boiler" type="bin" dir="inp">
        <position>0.4</position>
        <size>0.1</size>
      </endpoint>
      <endpoint name="leer" type="bin" dir="inp">
        <position>0.3</position>
        <size>0.1</size>
      </endpoint>
      <endpoint name="Frostschutz" type="bin" dir="inp">
        <position>0.2</position>
        <size>0.1</size>
      </endpoint>
      <endpoint name="Heizen" type="bin" dir="inp">
        <position>0.1</position>
        <size>0.1</size>
      </endpoint>
      <endpoint name="Zeitschaltuhr" type="bin" dir="inp">
        <position>0.0</position>
        <size>0.1</size>
      </endpoint>
    </reg>


Grüße
Klaus
RasPi B v2 mit FHEM 18B20 über 1Wire, LED PWM Treiber über I2C, Luchtdruck-, Feuchtesensor und ein paar Schalter/LED\'s zum testen
Module: RPI_GPIO, RPII2C, I2C_EEPROM, I2C_MCP23008, I2C_MCP23017, I2C_MCP342x, I2C_PCA9532, I2C_PCF8574, I2C_SHT21, I2C_BME280

justme1968


das ist absicht. im reading namen wird die laufende nummer des enpoints verwendet. nicht die bit position.

prinzipiell sind endpoints nicht auf ein einzelnes bit beschränkt und es kann auch überlappungen zwischen den endpoints geben.

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

klausw

Zitat von: justme1968 am 27 Oktober 2016, 11:27:54
das ist absicht. im reading namen wird die laufende nummer des enpoints verwendet. nicht die bit position.
Ich stehe noch auf dem Schlauch.
mit laufender Nummer meinst du die Reihenfolge?

Zitat von: justme1968 am 27 Oktober 2016, 11:27:54
prinzipiell sind endpoints nicht auf ein einzelnes bit beschränkt und es kann auch überlappungen zwischen den endpoints geben.
Das ist mir klar.
Das mit der Überlappung allerdings nicht. Wenn ich die Anfangsposition nicht aus der "position" nehme kann ich doch auch nicht herausfinden, was sich überlappen soll.
Ich habe auch nur den Teil gepostet bei dem es mir aufgefallen ist und das war dieses eine Byte mit 8 booleschen Endpoints.
Beispielsweise das xml vom Binout Sketch zeigt die Eingänge in SWAPdmt in umgekehrter Reihenfolge im Vergleich zu FHEM.

RasPi B v2 mit FHEM 18B20 über 1Wire, LED PWM Treiber über I2C, Luchtdruck-, Feuchtesensor und ein paar Schalter/LED\'s zum testen
Module: RPI_GPIO, RPII2C, I2C_EEPROM, I2C_MCP23008, I2C_MCP23017, I2C_MCP342x, I2C_PCA9532, I2C_PCF8574, I2C_SHT21, I2C_BME280

justme1968

ja. die reihenfolge im xml.

der rgb controller sketch verwendet ein 4 byte register für die farbe und darin jeweils 1 byte breite endpoints für die einzelnen farben. (r, g, b und w) zusätzlich könnte man noch mal ein 3 byte endpoint definieren der rgb enthält. dann hättest du den r endpoint und den rgb endpoint an der gleichen postion.

bei regSet und regGet gibts du nach dem punk auch nicht die bit position an sondern die laufende nummer. wenn man die bit position angeben würde wäre das nicht immer eindeutig (siehe rgb beispiel).

aber das ist doch nur die angezeigte reihenfolge. fhem sortiert nicht nach bit position sondern nach reihenfolge im xml.
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

klausw

Ich sehe gerade, das ich einen Fehler in meinem Beispiel hatte, ich habe es korrigiert...vermutlich haben wir aneinander vorbei gesprochen.
Das Problem war nicht die Reihenfolge, oder Bit Nummer.

Die Endpoint-Blöcke sind in beide male identisch (nur einmal steht der Block von bit7 oben und das andere mal der Block von bit0)
Unter SWAPdmt wird bei beiden Varianten, wenn ich Bit0 auf "1" setze auch 10.0-Zeitschaltuhr "1"
Unter FHEM wird, wenn der Endpoint von Bit7 oben steht 10.7-leer auf "1" gesetzt
und wenn der Endpoint von Bit1 oben steht ist 10.0-Zeitschaltuhr = "1"

Aber ich bin jetzt trotzdem etwas verunsichert...  8)
Ich muss es bei Gelegenheit noch einmal reproduzieren.
RasPi B v2 mit FHEM 18B20 über 1Wire, LED PWM Treiber über I2C, Luchtdruck-, Feuchtesensor und ein paar Schalter/LED\'s zum testen
Module: RPI_GPIO, RPII2C, I2C_EEPROM, I2C_MCP23008, I2C_MCP23017, I2C_MCP342x, I2C_PCA9532, I2C_PCF8574, I2C_SHT21, I2C_BME280

justme1968

10.7 ist nicht der endpoint der zu bit 7 gehört sondern der endloint der an 7. stelle unter dem register 10 kommt.

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

ext23

André, kannst du mir das mal eben kompilieren?

Zitat von: ext23 am 26 Oktober 2016, 15:53:52
Nabend,

kann mir mal bitte jemand ein hex schicken für das alte Battery Board mit DHT22 und AKTIVIERTEM A7 Pin... Bei meinen ist das Flag wohl nicht gesetzt daher sehe ich immer nur die 3,3V. (AVR panstamp)

Ich dachte ich kann den Sketch mal eben mit ino unter Linux kompilieren aber ich gebs auf *kotz*

/Daniel
HM, KNX, FS20, 1-Wire, PanStamp, AVR-NET-IO, EM1000EM, PCA301, EC3000, HM-LAN, CUL868, RFXtrx433, LGW, DMX @Ubuntu-Server (Hauptsystem) & Raspberry Pi (Satellit)

justme1968

ich schicke es dir wenn ich am anderen rechner bin. wenn ich es vergesse erinnert mich am wochenende bitte noch mal.

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

justme1968

schau mal on die angehängte version tut was du willst.

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

ext23

Super danke, das wars!

/Daniel
HM, KNX, FS20, 1-Wire, PanStamp, AVR-NET-IO, EM1000EM, PCA301, EC3000, HM-LAN, CUL868, RFXtrx433, LGW, DMX @Ubuntu-Server (Hauptsystem) & Raspberry Pi (Satellit)