[Gelöst] SIGNALduino: Wie Manchester senden?

Begonnen von Beta-User, 11 Dezember 2016, 22:25:53

Vorheriges Thema - Nächstes Thema

Sidey

Probier mal Variante 2 aus. Wenn der 2. Sendebefehl funktioniert, dann bekommen wir die 1. Vairante auch noch hin.


Grüße Sidey
Signalduino, Homematic, Raspberry Pi, Mysensors, MQTT, Alexa, Docker, AlexaFhem

Maintainer von: SIGNALduino, fhem-docker, alexa-fhem-docker, fhempy-docker

Beta-User

Hallo Sidey,

ja, die 2. Variante funktioniert.

Kann ich außer Tests was beitragen?
Wie gehe ich das Reichweitenthema am besten an?

Gruß und Dank!
Beta-User
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

Sidey

Ich meinte mit Variante 2 die CC1101-Variante...

Da kannst Du die Frequenz anpassen, sofern es daran liegt.
Für eine bessere Reichweite kann man die Sendeleistung erhöhen.
Signalduino, Homematic, Raspberry Pi, Mysensors, MQTT, Alexa, Docker, AlexaFhem

Maintainer von: SIGNALduino, fhem-docker, alexa-fhem-docker, fhempy-docker

Beta-User

Ergebnisse der CC1101-Variante (update Modul+hex gerade eben):

Die Reichweite ist auch damit nicht befriedigend, mit x09 und Eingabe der Kommandos vom Laptop via serieller Konsole (Arduino IDE) klappt es mal, mal klappt es nicht, Entfernung ca. 4m. Geringfügige Änderungen an der Position bzw. Ausrichtung reichen manchmal aus, einen Wackelkontakt halte ich für eher unwahrscheinlich. An meinem Test-PI geht es gar nicht, von dort ist die Entfernung zwar etwas geringer, aber eine Wand dazwischen (aber uU. ein Power-Problem, das Netzteil ist nicht wirklich stark, es reicht aber für ein MySensors-GW, das ich für diese Tests ausgesteckt habe).

Frequenz ist lt. FB-Etikett 433,92 MHz, das habe ich bei cc1101_freq als Zahlenwert so eingegeben 433.92, sollte doch passen, oder?

Es ging wenn, dann wieder mit dem langen Befehl.

Verkabelt ist der CC1101 direkt, nur ein pullup für CSN war erforderlich wg. der Empfangsqualität. Hilft evtl. ein Kondensator zur Spannungsstabilisierung wie bei den NRF24-Modulen? Andere Einstellungen an dem CC1101 oder sonstige Ideen?

Zwischenzeitlich habe ich auch den Sender an dem "klassischen" Signalduino mal gegen einen STX882 getauscht, der erreicht aber den Zielort auch nicht einfach so... Werde das aber mal testen, wie das ist, wenn ich den noch umziehe.

Danke jedenfalls für alle Bemühungen,

Beta-User
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

Ralf9

ZitatDie Reichweite ist auch damit nicht befriedigend, mit x09 und Eingabe der Kommandos vom Laptop via serieller Konsole (Arduino IDE) klappt es mal, mal klappt es nicht, Entfernung ca. 4m.

Der Wert vom x Befehl hat beim Signalduino eine andere Bedeutung, der Wert wird direkt in die patable geschrieben.
x09 sind ca -23 dB. siehe www.ti.com/lit/an/swra151a/swra151a.pdf
Du kannst mit "set sduino cc1101_patable" die Sendeleistung verändern.

hier sind einige Werte:
my %patable433 = (
  "-10_dBm"  => '34',
  "-5_dBm"   => '68',
  "0_dBm"    => '60',
  "5_dBm"    => '84',
  "7_dBm"    => 'C8',
  "10_dBm"   => 'C0',
);


Gruß Ralf

FHEM auf Cubietruck mit Igor-Image, SSD und  hmland + HM-CFG-USB-2,  HMUARTLGW Lan,   HM-LC-Bl1PBU-FM, HM-CC-RT-DN, HM-SEC-SC-2, HM-MOD-Re-8, HM-MOD-Em-8
HM-Wired:  HMW_IO_12_FM, HMW_Sen_SC_12_DR, Selbstbau IO-Module HBW_IO_SW
Maple-SIGNALduino, WH3080,  Hideki, Id 7

Beta-User

Hallo Ralf,

Danke für die Infos, dann versuche ich das nochmal mit dem CC1101.

Fyi: Die Änderung der patable habe ich am PI mit FHEM schon über FHEMWEB vorgenommen, Ergebnis s.o.. Das mit "x09" war nur der Versuch vom Laptop (ohne FHEM) aus, weil ich da über die IDE ja nur raw-Codes eingeben kann. Mit "xC0" sollte das ja auch von der IDE aus einzustellen gehen, und wenn ich das richtig verstanden habe, schreibt der Arduino das so auf den CC1101, dass die pa-Angabe auch einen Neustart überlebt?

Wenn ja, würde ich einen Wunsch formulieren: es wäre m.E. hilfreich, wenn man in FHEMWEB sehen würde, was der aktuelle Wert der patable ist.

Und die knapp 30 mA bei voller Leistung sollten den Arduino auch nicht überfordern, zumal ich es vorher vom PI aus auch mit unterschiedlichen Zwischenwerten versucht hatte. Aber ich kann es ja auch nochmal mit einem anderen Arduino versuchen, das jetzt war ein CH340, habe aber noch welche mit PL2101 bzw. FTDI da.

Danke jedenfalls, Beta-User
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

Ralf9

ZitatWenn ja, würde ich einen Wunsch formulieren: es wäre m.E. hilfreich, wenn man in FHEMWEB sehen würde, was der aktuelle Wert der patable ist.
schau mal hier:
https://forum.fhem.de/index.php/topic,58396.msg497921.html#msg497921

Beim Neustart wird die Konfiguration aus dem EEPROM geholt.

Gruß Ralf
FHEM auf Cubietruck mit Igor-Image, SSD und  hmland + HM-CFG-USB-2,  HMUARTLGW Lan,   HM-LC-Bl1PBU-FM, HM-CC-RT-DN, HM-SEC-SC-2, HM-MOD-Re-8, HM-MOD-Em-8
HM-Wired:  HMW_IO_12_FM, HMW_Sen_SC_12_DR, Selbstbau IO-Module HBW_IO_SW
Maple-SIGNALduino, WH3080,  Hideki, Id 7

Beta-User

Kaum macht man es richtig, funktioniert es!

Die PA-Befehle hatte ich aus der cul-commandref, da ich den link oben nicht kannte...

Dann mach ich mich nächste Woche mal dran, den CC1101 mit einem FTDI-Arduino zu verlöten ;D. Und dann an die notify's für den HM-Taster 8).

Herzlichen Dank an alle Beteiligten!

Wenn ich noch was beitragen kann (kurze Befehle testen oä.) bitte melden.

Gruß, Beta-User
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

Sidey

Es wäre ganz schön, wenn Du deinen Anwendungsfall und den Lösungsweg beschreiben würdest.
Quasi für andere. :)

Signalduino, Homematic, Raspberry Pi, Mysensors, MQTT, Alexa, Docker, AlexaFhem

Maintainer von: SIGNALduino, fhem-docker, alexa-fhem-docker, fhempy-docker

Beta-User

#24
Anwendung:
Eine Dunstabzugshaube italienischer Herkunft mit (unbekanntem) 433MHz-Protokoll.

Probleme:
- Protokoll unbekannt
- Reichweite des "klassischen" Signalduino nicht ausreichend (ca. 7 m, quer durch ein Flachdach, Empfänger im Blechgehäuse)
(- Arduino: China-Klon mit nicht auf Ground geführtem PIN (Lösung: mit benachbartem PIN lt. anderem Forumsbeitrag verlöten))

Lösungsweg:
- Der Signalduino (ursprünglich RXB12+FS1000A) lieferte in der Einstellung verbose 4 unbekannte Manchester-Codes und die entsprechenden RAW-Sequenzen
- Der korrekte Sendebefehl für die Codes war dann ein raw-Befehl nach folgendem Muster SR;R=7;P0=-334;P1=709;P2=-152;P3=-663;P4=379;P5=-15226;D=<raw-Code nach Auslesen>;
- Die Reichweite wurde erheblich verbessert, indem ein Signalduino mit CC1101-Modul aufgebaut wurde und die patable auf +10dB (xC0 per seriellem Monitor der Arduino-IDE) eingestellt.

Nicht erfolgreich:
- Anderer Sender (STX882) auf dem "alten" Signalduino.
- Senden von raw-Codes im Hex-Format (in der kurzen Darstellungsform beim Auslesen der Codes)

todo für den TE:
- restliche Codes austesten (sollte aber nicht dramatisch sein).
- Sauber einbinden in FHEM und WAF-kompatible Eingabemethode ergänzen (2 Tasten kurz bzw. lang auf 6-fach HM-Taster)
- Arduino gg. eine FTDI-Variante tauschen, das ganze verlöten und per by-id-Methode definieren :)

offen/nicht im Detail untersucht:
- wie kommt man genau von den vollen raw-Codes auf die einzelnen Parameter (für andere FB-Varianten/Geräte)

Hoffe, das hilft so jemand weiter ;).
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

Freibeuter

#25
Hallo,
habe einen Garagentorsender der vom SIGNALduino (nanoCC1101) wie folgt erkannt wird:

2017.12.18 18:13:07 4: SIGNALduino/msg READ: MC;LL=-1178;LH=1149;SL=-594;SH=573;D=DAB568;C=582;L=21;R=0;
2017.12.18 18:13:07 4: SIGNALduino/msg READ: MC;LL=-1177;LH=1153;SL=-594;SH=575;D=DAB568;C=583;L=21;R=0;
2017.12.18 18:13:07 4: SIGNALduino/msg READ: MC;LL=-1163;LH=1142;SL=-598;SH=577;D=DAB568;C=579;L=21;R=0;
2017.12.18 18:13:07 4: SIGNALduino/msg READ: MC;LL=-1175;LH=1147;SL=-597;SH=567;D=DAB568;C=580;L=21;R=0;
2017.12.18 18:13:07 4: SIGNALduino/msg READ: MC;LL=-1172;LH=1149;SL=-592;SH=577;D=DAB568;C=581;L=21;R=0;
2017.12.18 18:13:07 4: SIGNALduino/msg READ: MC;LL=-1172;LH=1157;SL=-589;SH=573;D=DAB568;C=581;L=21;R=0;
2017.12.18 18:13:07 4: SIGNALduino/msg READ: MC;LL=-1173;LH=1159;SL=-583;SH=577;D=DAB568;C=581;L=21;R=0;
2017.12.18 18:13:08 4: SIGNALduino/msg READ: MC;LL=-1178;LH=1158;SL=-587;SH=569;D=DAB568;C=581;L=21;R=0;
2017.12.18 18:13:08 4: SIGNALduino/msg READ: MC;LL=-1184;LH=1156;SL=-589;SH=569;D=DAB568;C=582;L=21;R=0;
2017.12.18 18:13:08 4: SIGNALduino/msg READ: MC;LL=-1168;LH=1167;SL=-577;SH=582;D=DAB568;C=582;L=21;R=0;
2017.12.18 18:13:08 4: SIGNALduino/msg READ: MC;LL=-1179;LH=1146;SL=-600;SH=562;D=DAB568;C=581;L=21;R=0;
2017.12.18 18:13:08 4: SIGNALduino/msg READ: MC;LL=-1174;LH=1154;SL=-597;SH=570;D=DAB568;C=582;L=21;R=0;
2017.12.18 18:13:08 4: SIGNALduino/msg READ: MC;LL=-1183;LH=1137;SL=-604;SH=567;D=DAB568;C=581;L=21;R=0;
2017.12.18 18:13:08 4: SIGNALduino/msg READ: MC;LL=-1173;LH=1153;SL=-598;SH=573;D=DAB568;C=582;L=21;R=0;
2017.12.18 18:13:08 4: SIGNALduino/msg READ: MC;LL=-1179;LH=1147;SL=-601;SH=573;D=DAB568;C=583;L=21;R=0;
2017.12.18 18:13:08 4: SIGNALduino/msg READ: MC;LL=-1183;LH=1144;SL=-595;SH=563;D=DAB568;C=580;L=21;R=0;
2017.12.18 18:13:08 4: SIGNALduino/msg READ: MC;LL=-1203;LH=1131;SL=-616;SH=553;D=DAB568;C=583;L=21;R=0;
2017.12.18 18:13:08 4: SIGNALduino/msg READ: MC;LL=-1167;LH=1149;SL=-595;SH=572;D=DAB568;C=580;L=21;R=0;
Bei MC disabled:
MU;P0=126;P1=-260;P2=-1184;P3=1233;P4=-888;P5=512;D=0102343434345434543434343434545454343454343434543454345434343434345434543454345434345454545;CP=5;R=227;

MU;P0=-22226;P1=1239;P2=-892;P3=514;P4=2814;P6=-596;P7=-4252;D=01212121232123212121212423232121232121212321232123212121212123212321232123212123232323012121212321232121212121232323212123212121232123212321212121212324612321232121232323237101212121232123212121212123232321212321212123212321232121212121232123212321232121;CP=3;R=225;O;

MS;P0=2226;P2=538;P3=-4165;P4=-2096;P6=-9112;D=2624042423242424232424242424242424242424232423232323242324242423232424242323;CP=2;SP=6;R=223;O;

MU;P0=961;P1=-1010;P2=461;P3=-507;P4=312;D=0101010123032101010101010101012303210123010101032101012301010321230103210123032123032123032101230103214;CP=2;R=222;

MU;P0=-15776;P1=910;P2=-1060;P3=-553;P4=402;P5=2424;P6=92;D=012121212121212121212121212121213424313424312134212124313424312134243134212121212121243134212431212121212121342125313424313426;CP=1;R=220;

MU;P0=-23864;P1=937;P2=-1033;P3=-520;P4=449;P5=2896;P6=264;D=012121212121212121212121212121213424313424312134212124313424312134243134212121212121243134212431212121212121342121243134243134212121212431342121212121212121243134212431212121342121243121213424312134212431342431342431342124353426;CP=1;R=220;

habe den Sender auf +10dbm gestellt
aber das Tor reagiert leider auf keines der Signalvarianten:

([Taster:state] eq "S1") (set SIGNALduino raw SC;;R=1;;SM;;C=580;;D=DAB568;;)
DOELSEIF ([Taster:state] eq "S2") (set SIGNALduino raw SC;;R=2;;SR;;P0=-15200;;D=0;;SM;;C=580;;D=DAB568;;)
DOELSEIF ([Taster:state] eq "S3") (set SIGNALduino raw SC;;R=3;;SR;;P0=-15200;;D=0;;SM;;C=580;;R=25;;D=DAB568;;)
DOELSEIF ([Taster:state] eq "S4") (set SIGNALduino raw SC;;R=3;;SR;;P0=-15200;;D=0;;SM;;C=580;;L=21;;D=DAB568;;)


Log des sendens:
2017.12.18 19:10:26 4: set SIGNALduino raw SC;R=1;SM;C=580;D=DAB568;
2017.12.18 19:10:26 4: SIGNALduino SendrawFromQueue: msg=SC;R=1;SM;C=580;D=DAB568;
2017.12.18 19:10:27 4: SIGNALduino/msg READ: SC;R=1;SM;C=580;D=DAB568;
2017.12.18 19:10:27 4: SIGNALduino/read sendraw answer: SC;R=1;SM;C=580;D=DAB568;
2017.12.18 19:10:27 4: SIGNALduino/HandleWriteQueue: nothing to send, stopping timer
2017.12.18 19:10:29 4: set SIGNALduino raw SC;R=2;SR;P0=-15200;D=0;SM;C=580;D=DAB568;
2017.12.18 19:10:29 4: SIGNALduino SendrawFromQueue: msg=SC;R=2;SR;P0=-15200;D=0;SM;C=580;D=DAB568;
2017.12.18 19:10:29 4: SIGNALduino/msg READ: SC;R=2;SR;P0=-15200;D=0;SM;C=580;D=DAB568;
2017.12.18 19:10:29 4: SIGNALduino/read sendraw answer: SC;R=2;SR;P0=-15200;D=0;SM;C=580;D=DAB568;
2017.12.18 19:10:29 4: SIGNALduino/HandleWriteQueue: nothing to send, stopping timer
2017.12.18 19:10:30 4: set SIGNALduino raw SC;R=3;SR;P0=-15200;D=0;SM;C=580;R=25;D=DAB568;
2017.12.18 19:10:30 4: SIGNALduino SendrawFromQueue: msg=SC;R=3;SR;P0=-15200;D=0;SM;C=580;R=25;D=DAB568;
2017.12.18 19:10:31 4: SIGNALduino/msg READ: SC;R=3;SR;P0=-15200;D=0;SM;C=580;R=25;D=DAB568;
2017.12.18 19:10:31 4: SIGNALduino/read sendraw answer: SC;R=3;SR;P0=-15200;D=0;SM;C=580;R=25;D=DAB568;
2017.12.18 19:10:31 4: SIGNALduino/HandleWriteQueue: nothing to send, stopping timer
2017.12.18 19:10:32 4: set SIGNALduino raw SC;R=3;SR;P0=-15200;D=0;SM;C=580;L=21;D=DAB568;
2017.12.18 19:10:32 4: SIGNALduino SendrawFromQueue: msg=SC;R=3;SR;P0=-15200;D=0;SM;C=580;L=21;D=DAB568;
2017.12.18 19:10:32 4: SIGNALduino/msg READ: SC;R=3;SR;P0=-15200;D=0;SM;C=580;L=21;D=DAB568;
2017.12.18 19:10:32 4: SIGNALduino/read sendraw answer: SC;R=3;SR;P0=-15200;D=0;SM;C=580;L=21;D=DAB568;
2017.12.18 19:10:32 4: SIGNALduino/HandleWriteQueue: nothing to send, stopping timer


Vielen Dank für jeden Tip :-)

Sidey

Hallo Freibeuter,

pack deinen Code doch mal in ein Code tag. Dann kann man das auch viel leichter lesen...

Grüße Sidey
Signalduino, Homematic, Raspberry Pi, Mysensors, MQTT, Alexa, Docker, AlexaFhem

Maintainer von: SIGNALduino, fhem-docker, alexa-fhem-docker, fhempy-docker

Sidey


Ich würde es mal mit folgendem Sende Befehl probieren:

set SIGNALduino raw  SR;;R=5;;P0=-22226;;P1=1239;;P2=-892;;P3=514;;D=01212121232123212121212123232321212321212123212321232121212121232321232123212123232323;;


Manchester ist das nicht wirklich. Das ist ein Bug in der Firmware. Welche hast Du denn genommen (Version und von wo).

Grüße Sidey
Signalduino, Homematic, Raspberry Pi, Mysensors, MQTT, Alexa, Docker, AlexaFhem

Maintainer von: SIGNALduino, fhem-docker, alexa-fhem-docker, fhempy-docker

Freibeuter

Hallo Sidey,
vielen Dank für die Hilfe.
Wegen Krankheit kommt erst jetzt meine Antwort und die auch erst in Teilen.

Die Version ist.
version: V 3.3.1-dev SIGNALduino cc1101 - compiled at Mar 10 2017 22:54:50

Quelle ist nach Wiki https://wiki.fhem.de/wiki/SIGNALduino

Habe eben ein Update gemacht und erneut geflashed ,es ist bei der Version geblieben.

Den Test mit dem Tor kann ich erst später machen.
Gruß Peter F.

fhemjcm

Guten Abend,
hat die Steuerung der Dunstabzugshaube final funktioniert? Ich habe einen Signalduino und eine Neff-Haube mit exakt der gleichen Fernbedienung.
Ich empfange z.B. bei Licht an:

MC;LL=-496;LH=492;SL=-240;SH=256;D=2A954AA552A954AA552A954AA552A954AA552A95440;C=247;L=169;R=238;

Wenn ich versuche zu senden bekomme ich:
2018.11.21 21:14:19 4: set sduino868 raw SR;R=7;P0=-334;P1=709;P2=-152;P3=-663;P4=379;P5=-15226;D=2A954AA552A954AA552A954AA552A954AA552A95440
2018.11.21 21:14:19 4: sduino868 SendrawFromQueue: msg=SR;R=7;P0=-334;P1=709;P2=-152;P3=-663;P4=379;P5=-15226;D=2A954AA552A954AA552A954AA552A954AA552A95440
2018.11.21 21:14:21 4: sduino868/HandleWriteQueue: sendraw no answer (timeout)
2018.11.21 21:14:21 4: sduino868/HandleWriteQueue: nothing to send, stopping timer

Kann mir jemand gg.f einen Schubs in die richtige Richtung geben?

Danke und einen schönen Abend,

fhemjcm