Hallo,
ich wollte einen meiner JeeLink-Clones (Arduino nano & RFM12B) mal mit den PCA301-Steckdosen zum Einsatz bringen....leider bisher ohne Erfolg.
Das Teil hängt an einem RasPi, ist mit dem PCA301-Sketch aus dem Contrib-Verzeichnis geflasht und sieht in FHEM so aus:
Internals:
Clients :PCA301:EC3000:RoomNode:LaCrosse:ETH200comfort:CUL_IR:HX2272:FS20:AliRF:Level:EMT7110
DEF /dev/serial/by-id/usb-FTDI_FT232R_USB_UART_A9MDTZVZ-if00-port0@57600
DeviceName /dev/serial/by-id/usb-FTDI_FT232R_USB_UART_A9MDTZVZ-if00-port0@57600
FD 5
NAME myJeeLink
NR 22
PARTIAL
RAWMSG > FREQ set to: A703
STATE Initialized
TYPE JeeLink
model [pcaSerial.10.1]
myJeeLink_MSGCNT 2
myJeeLink_TIME 2015-07-17 23:17:45
Matchlist:
1:PCA301 ^\S+\s+24
2:EC3000 ^\S+\s+22
3:RoomNode ^\S+\s+11
4:LaCrosse ^(\S+\s+9 |OK\sWS\s)
5:AliRF ^\S+\s+5
6:EMT7110 ^OK\sEMT7110\s
Readings:
2015-07-17 23:17:43 state opened
Attributes:
flashCommand avrdude -p atmega328P -c arduino -P [PORT] -D -U flash:w:[HEXFILE] 2>[LOGFILE]
initCommands 0xA703 h
verbose 5
Ich habe zwei PCA301 hier, der JeeLink reagiert auf keine der beiden. Nichts im Log, keine Events, kein AutoCreate.
Frequenz habe ich (gemäß Wiki) mal zwischen A703 und A715 hin- und herbewegt, keine Änderung.
Zum (Hardware-)Test habe ich mal den LaCrosse-Sketch geflasht - meine Sensoren werden erkannt und angelegt (nach LaCrossePairForSec).
Seriell sehe ich das 'Willkommens-Menü' des JeeLink, aber keine eingehenden Pakete.
Was übersehe ich? Oder habe ich zwei defekte PCA301 erhalten (Lieferung am 16.07.)?
Danke, Stefan
Hallo Stefan,
bei mir hat es auch nicht auf anhieb geklappt.
Kann es sein dass du die Frequenz falsch eingibst?
Bei mir sieht ein List folgendermaßen aus:
Internals:
Clients :PCA301:EC3000:RoomNode:LaCrosse:ETH200comfort:CUL_IR:HX2272:FS20:AliRF:Level:EMT7110
DEF /dev/serial/by-id/usb-FTDI_FT232R_USB_UART_AL00DAYP-if00-port0@57600
DeviceName /dev/serial/by-id/usb-FTDI_FT232R_USB_UART_AL00DAYP-if00-port0@57600
FD 15
JeelinkPCA301_MSGCNT 123851
JeelinkPCA301_TIME 2015-07-17 23:47:43
NAME JeelinkPCA301
NR 65
NR_CMD_LAST_H 1
PARTIAL
RAWMSG OK 24 1 4 2 81 16 0 0 0 0 113
STATE Initialized
TYPE JeeLink
model [pcaSerial.10.1]
Matchlist:
1:PCA301 ^\S+\s+24
2:EC3000 ^\S+\s+22
3:RoomNode ^\S+\s+11
4:LaCrosse ^(\S+\s+9 |OK\sWS\s)
5:AliRF ^\S+\s+5
6:EMT7110 ^OK\sEMT7110\s
Readings:
2015-06-24 21:50:14 state opened
XMIT_TIME:
1437120615.69586
Attributes:
flashCommand avrdude -p atmega328P -c arduino -P [PORT] -D -U flash:w:[HEXFILE] 2>[LOGFILE]
initCommands 0xA706h
room Haus,PCA301
Vor allem sehe ich einen Unterschied bei mir: initCommands 0xA706h
und bei Dir:initCommands 0xA703 h
Ich weis nicht ob es etwas ausmacht, aber lass mal die Freizeile vor dem h weg.
Gruß
Ralf
Hallo Ralf,
danke für Deine Antwort - hab's gerade probiert (mit shutdown restart, auch mit set raw 0c/set raw 2c), leider keine Änderung.
Bastle jetzt schon den zweiten Abend daran rum....so langsam nervt's... :-)
Könnte es evtl. sein, daß es zwischen dem LaCrosse-Sketch und dem PCA301-Sketch Unterschiede im Anschluss des RFM12B an den Arduino nano gibt?
Gruß, Stefan
Hallo Stefan,
nein es gibt keinen Unterschied in der Anschlussweise des RFM12B
an den Arduino.
Ich habe noch einen "Bausatz" hier liegen, bin aber noch nicht zum löten gekommen.
Hatte einen "verbrutzelt" und mir, zur Sicherheit, 2 von Locutus gekauft.
Die sind beide Baugleich, ich habe mit einem mal beide Sketche ausprobiert. Funktioniert einwandfrei.
Nun habe ich einen für LaCrosse und einen für PCA301 im Einsatz.
Allerdings habe ich meine Jeelink-Clone einzeln am Raspi geflasht, ohne das zusätzliche geräte angeschlossen waren.
Dann habe ich sie so eingebunden:
Aus dem DEF:/dev/serial/by-id/usb-FTDI_FT232R_USB_UART_AL00D3DR-if00-port0@57600
Da alles an einem aktiven USB-Hub hängt!
Gruß
Ralf
mir gehts gerade genauso, ich könnte heulen und bringe es nicht zum laufen. Geht es bei Dir mittlerweile?
Hallo,
nee, leider nein - bin im Moment aber auch in Urlaub und kann nichts testen.
Das Define habe ich auch so wie Ralf, halt mit angepasster serial id. Der Jeelink funktioniert ja auch mit dem Lacrosse Sketch, aber sobald der PCA301 Sketch geflasht ist, kommen (auch auf der seriellen Console) keinerlei Pakete rein.
Hatte mich per set myJeeLink raw + durch den im Wiki angegebenen Frequenz-Bereich geklickt, keine Änderung.
Würde es evtl. Sinn machen, zum Testen mal einen älteren Sketch zu flashen? Wo findet man die älteren Versionen? Im Contrib-Verzeichnis ist ja nur die 10.1 drin, oder?
Gruß,
Stefan
Bei mir hat es gereicht,
attr myJeelink initCommands 0xA706h
zu setzen, shutdown restart und dann hatte ich die Steckdose.
set myJeelink raw + habe ich, glaube ich, gar nicht ausprobiert.
Gruß
Ralf
Hallo,
ist gelöst, siehe http://forum.fhem.de/index.php/topic,11648.msg318161.html#msg318161 (http://forum.fhem.de/index.php/topic,11648.msg318161.html#msg318161).
Problem: Mit einem JeeLink Clone auf Arduino-Basis ging PCA301 nicht, LaCrosse aber schon.
Mit einem originalen JeeLink V3 Classic werden nun auch PCA301-Steckdosen erkannt.
Hallo Zusammen,
ich möchte das Thema nochmal aufgreifen, da es so ähnlich wie meinem Problem klingt.
Ich habe mir (auch) einen JeeLink-Clone selbst zusammengelötet (Arduino Nano mit C340 und RFM12B).
Am Anfang dachte ich auch, dass er nicht funktionieren könnte, aber ich habe nach langem Testen folgendes herausgefunden:
-der JeeLink funktioniert (gut für mich :) )
-das Anlernen einer PCA301 wollte zu Beginn nicht, aber es lag an der Frequenz, die im Sketch hinterlegt ist. (Hintergrund: die RFM12B variieren wohl untereinander, so dass man die Frequenz noch "nachjustieren" muss)
die Frequenz kann man in Fhem mit "set myJeeLink raw +" anpassen. Ich wiederholte den Befehl so lange bis die PCA auf einmal reagierte (mein idealer Wert war dann Frequenz "A709")
so läuft es dann sehr stabil bei mir und auch die Reichweite ist ziemlich gut (Keller nach Garten funktioniert top)
Nun kommt aber mein Problem:
nach einem Neustart von Fhem ist diese Frequenzanpassung "verloren" und ich muss die Frequenz wieder manuell anpassen.
Ich dachte dann man könne es mit "attr myJeeLink initCommands 0xA709h" dauerhaft hinterlegen, aber das funktioniert eben nicht!
Hat da vlt. noch jemand eine Lösungsidee? Mach ich mit dem initCommands was falsch? hab da auch schon alle Variationen durchgespielt > ohne Erfolg)
VG
Danke schonmal im Voraus...
PS: hab auch schon überlegt den Sketch anzupassen und den JeeLink nicht über Fhem, sondern über die Arduino-Software zu flashen. Dann ist die Freq aber wieder fest hinterlegt und ich kann diese auch nicht in Fhem anpassen.
Zitat von: friesenjung am 23 September 2015, 14:45:08
Hallo Zusammen,
ich möchte das Thema nochmal aufgreifen, da es so ähnlich wie meinem Problem klingt.
Ich habe mir (auch) einen JeeLink-Clone selbst zusammengelötet (Arduino Nano mit C340 und RFM12B).
nach einem Neustart von Fhem ist diese Frequenzanpassung "verloren" und ich muss die Frequenz wieder manuell anpassen.
Ich dachte dann man könne es mit "attr myJeeLink initCommands 0xA709h" dauerhaft hinterlegen, aber das funktioniert eben nicht!
Hat da vlt. noch jemand eine Lösungsidee? Mach ich mit dem initCommands was falsch? hab da auch schon alle Variationen durchgespielt > ohne Erfolg)
PS: hab auch schon überlegt den Sketch anzupassen und den JeeLink nicht über Fhem, sondern über die Arduino-Software zu flashen. Dann ist die Freq aber wieder fest hinterlegt und ich kann diese auch nicht in Fhem anpassen.
Das Steht dazu in der Jeelink FHEM-Wiki!
PCA301 SketchUnter Umständen werden die Signale der PCA301 nicht empfangen. Insbesondere mit selbst erstellten "JeeLinks" durch wahrscheinlich hohe Bauteiltoleranzen der RF12B Sendeeinheiten. Mit dem im Sketch voreingestellten rf12_center_freq = 0xA6FE (868,9500 MHz) bekommt man in diesem Fall keine Steckdose angelernt.
Frequenzanpassung über modifizierten SketchDurch Tests mittels set <myJeeLink> raw + bzw set <myJeeLink> raw - kann man dann ermitteln, ob die Funksignale z.B. ab A703 bis A715 empfangen werden. Das entspricht einem Frequenzbereich zwischen 868,9750 MHz und 869,0550 MHz. Die Mitte ist die Lösung, die man dann im Sketch ändern muss:
static uint16_t rf12_center_freq = 0xA70C;
Anschließend auf den JeeLink neu flashen.
Frequenzanpassung über Attribut initCommandsÜber das initCommands lässt sich die gefundene Frequenz einstellen, ohne dass die Firmware verändert werden muss.
attr <JeeLinkDevice> initCommands <hhhh>h
Gruß Billy
Hallo Billy,
vielen Dank für Deine Antwort.
Das Wiki habe ich schon gelesen, bevor ich meine Frage gestellt habe und bin auch nach dieser Anleitung vorgegangen.
Mein Problem ist, dass es so bei mir nicht funktioniert. Ich gebe folgendes ein:
attr myJeeLink initCommands A709h
Es wir übernommen und ich speichere die fhem.cfg.
Leider nimmt er die Frequenz nicht an. Also gebe ich direkt den Befehl im raw ein > also set myJeeLink raw + (so lange bis die Frequenz stimmt)
Das funktionier so lange gut, bis ein reboot (z.B. des Raspberry) bzw. der Befehl shutdown restart in Fhem abgesetzt wird. Danach ist die Frequenz wieder auf Anfangszustand und ich muß wieder manuel umstellen.
Ich habe auch schon unterschiedliche Schreibweisen beim initCommands ausgeteste, aber keine davon hat funktioniert.
Bin etwas ratlos...
VG
Daniel
Zitat von: friesenjung am 25 September 2015, 12:15:15
Hallo Billy,
vielen Dank für Deine Antwort.
Bin etwas ratlos...
VG
Daniel
Ich würde das so lösen! --> Frequenzanpassung über modifizierten Sketch
Wie du dann flashst ist egal.
Billy
OK,
so werd ichs wohl machen.
Falls jemand mal rausfindet warum das mit dem initCommands nicht funzt, würde mich interessieren.
Danke und Grüße...
Hallo,
bei mir funktioniert
attr JeelinkPCA301 initCommands 0xA706h
anscheinend.
Jetzt kann ich die Steckdose schalten.
obwohl im LOG
JeelinkPCA301: Unknown code > FREQ set to: A706, help me!
nach einem neustart von fhem kommt.
Gruß
Ralf
Hallo Ralf,
das steht bei mir auch im LOG und das Schalten funktioniert auch wenn man nach dem Anlegen des initCommand NICHT nochmal FHEM neu startet. Dann ist die Frequenz wieder auf "Grundeinstellung".
Bleibt die Frequenz bei Dir nach einem Neustart erhalten?
VG
Daniel
Hallo Leute,
muss jetzt doch mal fragen, ich komme nicht weiter, sitze seit dem Wochenende und versuche mit meinem Arduino Nano mit Funkmodul RFM12B-868-S Sende-/Empfangsmodul von Pollin und dem pca301serial Sketch, den ich auf 0xA70Ch angepasst habe (auch schon mit mehreren anderen Frequenzen versucht) zum "laufen" zu bringen.
Die Kommunikation scheint zu funktionieren, komme mit minicom drauf und kann auch darüber die Frequenz einstellen, wird mir dann im fhem angezeigt.
Meine Vorgehensweise:
set myJeeLink raw +
set myJeeLink LaCrossPairForSec 60
drücken der Taste an der PCA301
nichts wird erkannt, und das von A70C ausgehend, mind. 30 mal + gemacht, und auch -
jedesmal das Pairing wieder aktiviert.... aber ums verrecken erscheint bei mir keine Steckdose?
mein JeeLink Clone:
Internals:
CFGFN /opt/fhem/cfg/00_config.cfg
Clients :PCA301:EC3000:RoomNode:LaCrosse:ETH200comfort:CUL_IR:HX2272:FS20:AliRF:Level:EMT7110:KeyValueProtocol
DEF /dev/ttyUSB0@57600
DeviceName /dev/ttyUSB0@57600
FD 18
NAME myJeeLink
NR 35
PARTIAL
RAWMSG > FREQ set to: A706
STATE Initialized
TYPE JeeLink
initMessages
model [pcaSerialcc.10.1a]
myJeeLink_MSGCNT 1
myJeeLink_TIME 2015-12-21 11:49:45
Matchlist:
1:PCA301 ^\S+\s+24
2:EC3000 ^\S+\s+22
3:RoomNode ^\S+\s+11
4:LaCrosse ^(\S+\s+9 |OK\sWS\s)
5:AliRF ^\S+\s+5
6:EMT7110 ^OK\sEMT7110\s
7:KeyValueProtocol ^OK\sVALUES\s
Readings:
2015-12-21 11:49:43 state opened
Attributes:
flashCommand avrdude -p atmega328P -c arduino -b 57600 -P [PORT] -D -U flash:w:[HEXFILE] 2>[LOGFILE]
icon cul
initCommands 0xA706h
room DarkRoom
verbose 5
Muss ich zwischen meinen Aktionen evtl irgendwas neu starten? Oder greift jede Eingabe sofort?
Flashing über die Fhem Oberfläche geht auch, habe extra im Sketch Modell und Version angepasst, damit ich sehen konnte, das auch mein Sketch geflasht wurde, was auch geklappt hat.
Aber warum findet der JeeLink Clone meine Steckdose nicht?
Bin neu in dem Thema und das ist mein erstes Device, was ich zum laufen bekommen möchte.
Bin für jeden Tip dankbar,
gruss
Ralf
Hallo Ralf,
wenn alle Stricke reißen, dann kann ich dir leihweise einen Jeelink-Clone aus meiner Testumgebung schicken. Möglicherweise liegt es an dem Transceiver.
LG
/robin
Hallo coolcat,
was mir aufgefallen ist, ist dass bei Deiner "RAWMSG" sowas mit der Frequenz steht. Das sieht bei mir anders aus: "RAWMSG: OK 24 9 4 3 ...usw."
Ich vermute es hat mit Deiner Freuenzanpassung zu tun. Lass am besten auch mal das Attribut "initcommands" weg und gib direkt im FHEM-Web-Interface des Jeelink die "raw +"-Befehle ein. Also beim "set"-Button "raw" wählen und im Eingabefeld ein "+" oder "-" eingeben, bis z.B. wie bei mir "A70C" steht. Ich glaube das "h" hinter die Frequenz zu schreiben hab ich am Anfang auch probiert, funktioniert in FHEM direkt aber nicht.
Bei mir steht bei "model" auch [pcaSerialcc.10.1], also ohne "a" dahinter.
Hast Du lang genug auf den Knopf des Zwischensteckers gedrückt? Ein paar Sekunden sollten es schon sein.
Wenn es funktioniert sollteautomatisch ein neuer Raum "PCA301" angelegt werden. Darunter werden die Stecker zu Beginn gelistet.
Ach ja noch was. Hast Du in der fhem.cfg folgende Einträge (oder ähnliches)?
"attr global autoload_undefined_devices 1"
und
"define autocreate autocreate
attr autocreate autosave 1
attr autocreate filelog ./log/%NAME-%Y.log"
Ansonsten hätte ich vorerst keine weitere Idee...
Gruß
Daniel
Zitat von: fh168 am 21 Dezember 2015, 21:09:27
Hallo Ralf,
wenn alle Stricke reißen, dann kann ich dir leihweise einen Jeelink-Clone aus meiner Testumgebung schicken. Möglicherweise liegt es an dem Transceiver.
LG
/robin
Hallo fh168,
vielen Dank für das Angebot. Ich warte noch auf eine Lieferung dieser Module. Wenn es dann auch nicht funktioniert, würde ich auf das Angebot zurückkommen.
Hallo friesenjung,
deine RAWMSG sieht aus, wie von einem originalen JeeLink, ein Freund hat auch einen originalen und da sieht es aus, wie bei dir beschrieben.
Die Versionskennung habe ich im Sketch modifiziert, um zu erkennen, das auch wirklich mein Sketch geflasht wird, das passt schon.
Die Kommunikation funktioniert, aus Fhem oder direkt in minicom werden verarbeitet, d.h. ich kann die Frequenz über minicom anpassen und die wird dann auch in Fhem angezeigt.
Ich werde jetzt mir die von Benutzern meisst verwendeten Frequenzen raussuchen und sie nacheinander auf den Arduino flashen, evtl hab ich Glück und ich treffe eine richtige....
Ansonsten sieht alles bei mir so aus, wie bei dir beschrieben (autocreate......)
Gruss
Ralf
Hi,
also ich habe auch einen JeeLink-Clone!
Geht es mittlerweile?
Beste Grüße
Ja, läuft einwandfrei. :D
sorry, das ich den beitrag nochmal nach vorne hole.
habe das gleiche problem.
wie hast du es gelöst bekommen?
Hallo zusammen,
ich habe aktuell das selbe Problem. Ich bekomme meine PCA301 nicht angebunden.
Internals:
Clients :PCA301:EC3000:RoomNode:LaCrosse:ETH200comfort:CUL_IR:HX2272:FS20:AliRF:Level:EMT7110:KeyValueProtocol
DEF /dev/serial/by-id/usb-SHK_JeeLink_PCA301-if00-port0@57600
DeviceName /dev/serial/by-id/usb-SHK_JeeLink_PCA301-if00-port0@57600
FD 13
FUUID 5cc428c5-f33f-d1be-d48b-3fcdef3fe468ae25
JeeLinkPCA301_MSGCNT 11
JeeLinkPCA301_TIME 2019-04-27 12:37:13
NAME JeeLinkPCA301
NR 31
PARTIAL
RAWMSG > FREQ-: A70C
STATE initialized
TYPE JeeLink
initMessages
model [pcaSerial.10.1]
MatchList:
1:PCA301 ^\S+\s+24
2:EC3000 ^\S+\s+22
3:RoomNode ^\S+\s+11
4:LaCrosse ^(\S+\s+9 |OK\sWS\s)
5:AliRF ^\S+\s+5
6:EMT7110 ^OK\sEMT7110\s
7:KeyValueProtocol ^OK\sVALUES\s
READINGS:
2019-04-27 12:37:13 state initialized
Attributes:
flashCommand avrdude -p atmega328P -c arduino -P [PORT] -D -U flash:w:[HEXFILE] 2>[LOGFILE]
icon cul_868
initCommands 0xA706h
room Geräte