AskSin++ Library

Begonnen von papa, 08 September 2016, 11:11:25

Vorheriges Thema - Nächstes Thema

papa

Auf der CCU benutzen sie die Eigenschaft, dass der Aktor die Anzahl der vorhandenen Kanäle übermittelt. FHEM kennt dieses Konzept nicht. Dadurch hat der HM-LC-Sw1-Ba-PCB grundsätzlich in FHEM nur einen Kanal. Du könntest mal versuchen den Aktor als HM-LC-Sw4-Ba-PCB (Device Model auf 0x00,0xAB setzen) anzumelden. Dann fehlen allerdings der 3. und 4. Kanal. Keine Ahnung, ob das nicht wieder andere Probleme macht.
BananaPi + CUL868 + CUL433 + HM-UART + 1Wire

papa

Ich habe mal das AskSin++ Addon angepasst dort gibt es jetzt auch ein paar mehr Homebrew-Geräte.

https://github.com/pa-pa/AskSinPP/tree/master/examples/custom/contrib/FHEM
BananaPi + CUL868 + CUL433 + HM-UART + 1Wire

wolwin

Zitat von: papa am 15 Juli 2019, 20:31:49
Auf der CCU benutzen sie die Eigenschaft, dass der Aktor die Anzahl der vorhandenen Kanäle übermittelt. FHEM kennt dieses Konzept nicht. Dadurch hat der HM-LC-Sw1-Ba-PCB grundsätzlich in FHEM nur einen Kanal. Du könntest mal versuchen den Aktor als HM-LC-Sw4-Ba-PCB (Device Model auf 0x00,0xAB setzen) anzumelden. Dann fehlen allerdings der 3. und 4. Kanal. Keine Ahnung, ob das nicht wieder andere Probleme macht.

Danke erst einmal für diese Info zu den fehlenden Kanälen in FHEM - werde bei Gelegenheit mal das Device Model ändern ...

micky0867

Hallo,

ich bräuchte mal eure Hilfe.
Ich habe den HM-LC-SW4-SM nachgebaut und HM_SENSOR_RELAY gesetzt, um lokale Buttons zu nutzen.
Das Schalten über FHEM funktioniert soweit, aber wenn ich den Button1 am Aktor drücke, passiert nichts.
Im seriellen Log sehe ich aber:

debounce
pressed
released
-> 0B 13 02 40 ABC001 ABC001 01 0A  - 34021


Sieht für mich so aus, als würde der Aktor ABC001 sich selbst eine Nachricht senden ???

Wie sollte das denn eigentlich aussehen?
Schaltet der Aktor den Kanal und sendet den Zustand an die Zentrale?
Oder wird nur der gewünschte Zustand an die Zentrale geschickt und diese gibt dann das Kommando zum Schalten? ..macht eigentlich keinen Sinn....

Danke und Gruß
Micky





micky0867

Fehler gefunden, sitzt vor der Tastatur.
Der Aktor war nicht richtig gepaired!

Micky

Beetle2003

Guten Morgen,

ich habe eine Verständnisfrage.

Ich habe den HM-WDS40-TH-I-DHT22 nachgebaut.

Wenn ich den Sketch hochladen möchte, bekomme ich eine Fehlermeldung.
Arduino: 1.8.9 (Windows 10), Board: "Arduino Pro or Pro Mini, ATmega328P (3.3V, 8 MHz)"

Sketch wird kompiliert...
HM-WDS40-TH-I-DHT22:125:79: error: 'as::Channel<Hal, as::List1, as::EmptyList, as::List4, 6, as::List0>::DeviceType {aka class as::Device<Hal, as::List0>}' has no member named 'broadcastEvent'

       if (msgcnt % 20 == 1) device().sendPeerEvent(msg, *this); else device().broadcastEvent(msg, *this);

                                                                               ^

Bibliothek EnableInterrupt-master in Version 1.0.0 im Ordner: C:\Users\Ralf\Documents\Arduino\libraries\EnableInterrupt-master  wird verwendet
Bibliothek AskSinPP-master in Version 4.1.0 im Ordner: C:\Users\Ralf\Documents\Arduino\libraries\AskSinPP-master  wird verwendet
Bibliothek Low-Power-master in Version 1.6 im Ordner: C:\Users\Ralf\Documents\Arduino\libraries\Low-Power-master  wird verwendet
Bibliothek DHT-sensor-library-master in Version 1.3.7 im Ordner: C:\Users\Ralf\Documents\Arduino\libraries\DHT-sensor-library-master  wird verwendet
Bibliothek Adafruit_Sensor-master in Version 1.0.3 im Ordner: C:\Users\Ralf\Documents\Arduino\libraries\Adafruit_Sensor-master  wird verwendet
exit status 1
'as::Channel<Hal, as::List1, as::EmptyList, as::List4, 6, as::List0>::DeviceType {aka class as::Device<Hal, as::List0>}' has no member named 'broadcastEvent'


Dieses ist der Eintrag im Sketch:
msg.init(msgcnt, temp+OFFSETtemp, humidity+OFFSEThumi, device().battery().low());
      if (msgcnt % 20 == 1) device().sendPeerEvent(msg, *this); else device().broadcastEvent(msg, *this);
    }

Wo wird normalerweise der broadcastEvent erzeugt bzw angelegt?

Danke


Beetle2003

Zitat von: jp112sdl am 18 August 2019, 13:28:02
Ist im aktuellen master drin.
https://github.com/pa-pa/AskSinPP/blob/6796f35eea71e8ed0baf826375d3a554b4a25992/Device.h#L539

Hallo,

danke das war es.

Was bewirkt diese Funktion?
Ist es richtig, dass bei jeder Temp / Luftfeuchtigkeitsübertragung auch der Batteriestatus übertragen wird?
Wäre es nicht sparsamer, wenn der Batteriestatus nur alle paar Stunden übertragen wird?


jp112sdl

Zitat von: Beetle2003 am 18 August 2019, 14:04:32
Was bewirkt diese Funktion?
Dass an die Broadcastadresse 000000 gesendet wird, was dem Standardverhalten eines HM Sensors entspricht.

Zitat von: Beetle2003 am 18 August 2019, 14:04:32
Ist es richtig, dass bei jeder Temp / Luftfeuchtigkeitsübertragung auch der Batteriestatus übertragen wird?
Ja

Zitat von: Beetle2003 am 18 August 2019, 14:04:32
Wäre es nicht sparsamer, wenn der Batteriestatus nur alle paar Stunden übertragen wird?
Nein. LowBat ist nur ein Bit im Temperatur-Byte, das gedreht wird.

Was sollte man sparen können?

Btw: Meine ersten gebauten Sensoren mit SHT10, freiluftverdrahtet am Pro Mini, laufen seit 2017 bereits immer noch mit den ersten Batterien.

Beetle2003

Zitat von: jp112sdl am 18 August 2019, 15:07:02
Dass an die Broadcastadresse 000000 gesendet wird, was dem Standardverhalten eines HM Sensors entspricht.
Ja
Nein. LowBat ist nur ein Bit im Temperatur-Byte, das gedreht wird.

Was sollte man sparen können?

Btw: Meine ersten gebauten Sensoren mit SHT10, freiluftverdrahtet am Pro Mini, laufen seit 2017 bereits immer noch mit den ersten Batterien.

Hallo,

danke für die Erklärung.

Ich dachte, dass wenn nicht jedes Mal der Batteriestatus mit übertragen wird, die Batterien länger halten. Das g´hast Du mit deiner Aussage wiederlegt :-).

ext23

Hallo,

kann mir bitte jemand helfen die Batterie Messung in den HB-GEN-SENS Sketch im Anhang zu bauen, ich bekomme es irgendwie nicht hin. Ich möchte die Spannung von einem Spannungsteiler (7,4V auf 3,3V) an einem Pin X mit dem Teilungsverhältnis Y messen und übertragen. Ich müsste also den BatterySensorExt benutzen richtig? Aber ich bekomme das irgendwie nicht so ganz zum Laufen was da jetzt an welche Stelle muss.

/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)

papa

Im Master oder im V4 ? Welche Werte hat der Spannungsteiler ? Wie ist er angeschlossen ? So wie hier https://github.com/pa-pa/HMSensor/blob/master/HMSensor-StepUp/files/HMSensor-StepUp.pdf ?
BananaPi + CUL868 + CUL433 + HM-UART + 1Wire

ext23

#1287
Ich habe glaube noch die alte V2 oder was das ist. Würde dann aber die neuste nehmen, also V4 wenn es OK ist (Und nicht 2000 neue Kompiler Fehler kommen ;-) )

Spannungsteiler ist ganz normal, GND gegen VCC der Akkus und Mittelabgriff geht an den Eingang X (Mit egal welcher, kann ich ja einstellen dann). 100 / 80 wollte ich nehmen so dass 7,4V reichlich 3,3V entspricht. Ich brauche also kein "enable". Bei 180kOhm fließt da kaum was. Aber ich kann es auch gerne so machen wie in deinem Beispiel, das ist mir im Prinzip egal. Wenn das häufig so genutzt wird mache ich das auch so. Also elektrisch bin ich da offen für alles, ich bin nur irgendwie zu blöde das Softwareseitig einzubauen weil ich diesen ganzen Kram mit dem Klassen etc. nicht verstehe und mein Gefrickel hat bis jetzt leider nicht zum Erfolg geführt, nichtmal mit dem internen VCC zum test.

Danke.

Update:
Bibliothek AskSinPP in Version 4.0.3 (lässt sich kompilieren, also nehme ich die.)

/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)

papa

Also V4. Probier mal (nicht weiter getestet)


#define SENSPIN X
#define ACTIVATIONPIN 0 // disable
#define AVRVCC 3300 // AVR VCC is 3.3V
typedef BatterySensorUni<SENSPIN,ACTIVATIONPIN,AVRVCC> ExtBat;
typedef AskSin<StatusLed<9>,ExtBat,Radio<RadioSPI,2> > Hal;


und dann an das Ende von setup()


hal.battery.init(seconds2ticks(60UL*60),sysclock,22);  // 180/80*10


Sollte auch mit V2 gehen.
BananaPi + CUL868 + CUL433 + HM-UART + 1Wire

ext23

Danke,

muss ich irgendwo noch für sorgen, dass der Wert auch übermittelt wird? Ich hab das attr jetzt auf:
   
valuesformat 4:Kaltwasser:2 4:Warmwasser:2 1:batVoltage:10

ob die 10 nun passt oder nicht, aber zumindest sollte ich damit doch ein Wert bekommen oder?

/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)