Signalduino Entwicklung

Begonnen von thoffma3, 05 Juli 2015, 23:01:00

Vorheriges Thema - Nächstes Thema

hjgode

Hallo Tim

ich habe nur einen ESP-01 mit nem Nano verbunden. Der Nano kriegt 5V von einem Netzteil und der ESP-01 wird über einen LM2940 3V3 von den 5V versorgt.

gruss

josef
Debian SID mit aktuellem FHEM, nanoCUL 866, JeeLink EC3000, fhemduino, SIGNALduino,
3 x TFA TH Sensor, 1 x TFA TH Arduino Sender, 3 x EC3000, 4 x Elro Schaltsteckdosen, ESA2000
offline: Wibo Funkthermostat, 2 x ELV Funkthermostat FHT80, 2 FS20 ST4 Funksteckdose

Ralf9

Zitat von: hdp1999 am 26 Oktober 2016, 06:23:46
Was mir allerdings aufgefallen ist das die THGR228N nicht mehr so oft Empfangen werden wie in Vergleich zu meiner alten 41_Oregon.pm habe für die Sensoren die alte Checksummenberechnung eingefügt !

Kannst Du vom THGR228N einige RAW Nachrichten posten?

Ich habe die Checksum Routine vom BTHR918 nochmals angepasst
sub OREGON_checksum5plus {
  my $hash = $_[1];
  my $c = ($_[0]->[10]) & 0x7f;
  my $s = ((OREGON_nibble_sum(10,$_[0]) - 0xa) & 0x7f);
  Log3 $hash, 5, "OREGON: checksum5plus = $c berechnet: $s";
  $s == $c;
}


Damit wird für die Checksum nur noch 7 Bit verwendet.
So wies aussieht ist beim Signalduiono das achte Bit der checksum immer 1. Beim Fhemduino passt es.

@Sidey
Mir ist beim BTHR918 aufgefallen, daß bei den Nachrichen, die mit AAAA anfangen, die Länge passt (88 Bit)
MC;LL=-953;LH=1077;SL=-420;SH=517;D=AAAAAAA99A666A6555555A65566595955565656565A96956A660;C=494;L=205;

Die Nachrichen die mit 555555 sind zu kurz (80 Bit)
MC;LL=-953;LH=1078;SL=-400;SH=522;D=55555555334CCD4CAAAAAB4CAACCB2B2AAACACACACB52D2AD4CC;C=492;L=208;

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

Kuzl

Zitat von: Cruiser79 am 26 Oktober 2016, 13:31:29
Wenn ich @Kuzl seinen Satz richtig deute, scheint er ja den NodeMCU mit Strom zu versorgen und den Arduino über 3.3V angeschlossen zu haben.
So geht es, genau.
Ich hab sogar ein MySensors-Gateway und den Signalduino in ein Gehäuse gepackt und dann für den Signalduino einen ESP-01 genommen.
Arduino, ESP-01, Sender und Empfänger werden von den 3.3V der NodeMCU mit versorgt.

Cruiser79

Zitat von: Kuzl am 27 Oktober 2016, 07:54:54
So geht es, genau.
Ich hab sogar ein MySensors-Gateway und den Signalduino in ein Gehäuse gepackt und dann für den Signalduino einen ESP-01 genommen.
Arduino, ESP-01, Sender und Empfänger werden von den 3.3V der NodeMCU mit versorgt.

Da ihr beide den ESP-01 nutzt und ich das ganze mit dem NodeMCU-Developer Board probiert habe, könnte ja schon daran meine Fehlerquelle liegen. Auf dem Teil sind ja noch ein paar weitere Bauteile verbaut, die die Kommunikation stören könntet, oder liege ich da falsch?

Kann man jeden Arduino mit 3,3V ansteuern und der läuft? Ich benutze einen Arduino Nano für meinen Signalduino.

Gruß,
Tim
FHEM auf Raspberry Pi
HM-CFG-LAN mit HM-TC-IT-WM-W-EU, HM-CC-RT-DN, HM-WDS10-TH-O, HM-LC-SW1-FM, HM-LC-Bl1-FM
Signalduino mit Elro AB440, LOGILINK WS0002, IT CMR-1000

hdp1999

#2134
Zitat von: Ralf9 am 26 Oktober 2016, 23:45:26
Kannst Du vom THGR228N einige RAW Nachrichten posten?

Ich habe die Checksum Routine vom BTHR918 nochmals angepasst
sub OREGON_checksum5plus {
  my $hash = $_[1];
  my $c = ($_[0]->[10]) & 0x7f;
  my $s = ((OREGON_nibble_sum(10,$_[0]) - 0xa) & 0x7f);
  Log3 $hash, 5, "OREGON: checksum5plus = $c berechnet: $s";
  $s == $c;
}


Damit wird für die Checksum nur noch 7 Bit verwendet.
So wies aussieht ist beim Signalduiono das achte Bit der checksum immer 1. Beim Fhemduino passt es.

@Sidey
Mir ist beim BTHR918 aufgefallen, daß bei den Nachrichen, die mit AAAA anfangen, die Länge passt (88 Bit)
MC;LL=-953;LH=1077;SL=-420;SH=517;D=AAAAAAA99A666A6555555A65566595955565656565A96956A660;C=494;L=205;

Die Nachrichen die mit 555555 sind zu kurz (80 Bit)
MC;LL=-953;LH=1078;SL=-400;SH=522;D=55555555334CCD4CAAAAAB4CAACCB2B2AAACACACACB52D2AD4CC;C=492;L=208;

Gruß Ralf

Hallo Ralf

Habe in Anhang noch einige RAW Nachrichten für den THGR228N mitgeschnitten ! Mit der Änderung der Checksumme habe Ich eingefügt und teste ! Falls du noch andere RAW Daten der Sensoren von Oregon haben möchtest sag bescheid !

Gruß Dirk

Kuzl

Zitat von: Cruiser79 am 27 Oktober 2016, 12:47:42
Da ihr beide den ESP-01 nutzt und ich das ganze mit dem NodeMCU-Developer Board probiert habe, könnte ja schon daran meine Fehlerquelle liegen. Auf dem Teil sind ja noch ein paar weitere Bauteile verbaut, die die Kommunikation stören könntet, oder liege ich da falsch?

Kann man jeden Arduino mit 3,3V ansteuern und der läuft? Ich benutze einen Arduino Nano für meinen Signalduino.

Das sollte mit dem NodeMCU genau so gehen. Für die Versorgung des Arduinos einfach einen 3.3V-pin der NodeMCU mit einem VCC-Pin des Arduinos verbinden.
Dann noch GND verbinden und RX und TX gekreuzt verbinden. Dann sollte das laufen.
Das USB-Kabel dann an die NodeMCU.

Es sollten eigentlich fast alle Arduinos gehen, da man ja nicht den Spannungsregler verwendet sondern direkt den AVR mit Spannung versorgt.

Cruiser79

Zitat von: Kuzl am 28 Oktober 2016, 07:12:16
Das sollte mit dem NodeMCU genau so gehen. Für die Versorgung des Arduinos einfach einen 3.3V-pin der NodeMCU mit einem VCC-Pin des Arduinos verbinden.
Dann noch GND verbinden und RX und TX gekreuzt verbinden. Dann sollte das laufen.
Das USB-Kabel dann an die NodeMCU.

Es sollten eigentlich fast alle Arduinos gehen, da man ja nicht den Spannungsregler verwendet sondern direkt den AVR mit Spannung versorgt.

Du hast also keinerlei Widerstände dazwischen geschaltet? Einfach direkt verbunden und läuft?

Gruß,
Tim
FHEM auf Raspberry Pi
HM-CFG-LAN mit HM-TC-IT-WM-W-EU, HM-CC-RT-DN, HM-WDS10-TH-O, HM-LC-SW1-FM, HM-LC-Bl1-FM
Signalduino mit Elro AB440, LOGILINK WS0002, IT CMR-1000

Omega-5

Zitat von: Kuzl am 28 Oktober 2016, 07:12:16
Für die Versorgung des Arduinos einfach einen 3.3V-pin der NodeMCU mit einem VCC-Pin des Arduinos verbinden.
Dann noch GND verbinden und RX und TX gekreuzt verbinden. Dann sollte das laufen.
Das USB-Kabel dann an die NodeMCU.

Es sollten eigentlich fast alle Arduinos gehen, da man ja nicht den Spannungsregler verwendet sondern direkt den AVR mit Spannung versorgt.

So ganz sicher ist das nicht. Kann gehen, muss aber nicht.  :)
Welchen Pin am Nano meinst du mit VCC-Pin? Bei meinen Nanos gibt es nur Vin, 5V, und 3V3. Ich nehme mal an du willst über den 5V Pin den ATmega versorgen. Laut Datenblatt kann der ATmega328 aber bei 3.3V Betriebsspannung keine 16Mhz. Meist klappt es trotzdem.

Gruß Friedrich

RaspberryPi2, nanoCUL, 3x DS18B20, FS20: 4x Funk-Schalter ST-4, LaCrosseGW,
HomeMatic: HMLAN, HM-WDS10-TH-O, HM_MYS_RelaisBoard,
I2C: HYT221 über modifiziertes Modul I2_I2C_SHT21.pm (Q&D),

prodigy7

Ich habe mir Empfänger und Sender von http://www.ebay.de/itm/122180136185 bestellt. Empfänger empfängt, Sender habe ich noch nicht ausprobiert. Wer auch immer nach einer günstigeren Variante als die ELV Module sucht, wird hier fündig.

Kuzl

Hallo zusammen,

ich hab die Pinbenennungen des Arduinojetzt nicht im Kopf, kann sein, dass die Pins 5V heißen. Ich meine auf jeden Fall die Versorgung des Controllers. Bei mir läuft der trotsdem mit 16 MHz :)
dann kann man direkt verbinden - ohne Widerstände dazwischen

bitbiter

#2140
Hi.

Also bei mir habe ich den Nano über den Wemos Mini D1 mit Strom versorgt. Hab alles nach Plan von HJgode nach
dem Schema und nach der Erklärung von
https://forum.fhem.de/index.php/topic,38831.msg510188.html#msg510188 gemacht. Ich habe allerdings KEINERLEI
Widerstände / Transistoren / Elkos (oder wie die uF-Dinger heissen.. bin kein Elektroniker) drangemacht.
5V von ESP -> Nano VIN
GND alle gemeinsam verbunden (quelle ist der ESP) und letzendlich meine
https://de.aliexpress.com/item/1set-RF-module-433-Mhz-superheterodyne-receiver-and-transmitter-Support-ASK-OOK-small-size-low-power/32571703475.html?spm=2114.13010708.0.0.gmZ1ms&detailNewVersion=&categoryId=200003315
per 3,3V (ebenfalls vom ESP) mit Saft versorgt und dementsprechend TX - RX gekreuzt zwischen Nano <--> ESP

Und auch GENAU so das ESP-Link einstellen wie hier:
http://www.hjgode.de/wp/wp-content/uploads/2015/11/FireShot-Capture-1-esp-link-http___192.168.0.99_home.png
Anbei als Pic die Einstellung der ESP-Link Parameter... wie von hjgode vorgegeben.
Meine Version der ESP-Link FW ist allerdings die esp-link v2.2.3 - 2016-06-21 (klappt trotzdem!)

Achja: In der uConsole Baud Rate 57600 (oder dementsprechend die passende eures ESP-Modells) und man sieht
fleissig die Daten fliessen.

In FHEM dann noch
define sduinoIP SIGNALDuino 192.168.0.99:23
(IP ANPASSEN!!! Das <:23> so lassen!)

Ich hoffe das mein Teile nicht eines Tages in die Luft fliegen ;D, aber das sind meine ersten Schritte in Sachen Elektronik.
Ich habe sogar probiert einen Levelshifter zwischen dem ESP <--> Nano einzubauen, da klappte nix. Aber dafür bin ich wohl noch nicht Kundig genug
um zu wissen wie das geschaltet wird.

Gruss
Alex

Und damit es nicht allzu Off-Topic wird:
Besteht denn die Möglichkeit, Dooya-Motoren über den ---> CUL <--- anzusteuern (also 433MHz CC1101 oder 1101L o.ä.)?
Finde leider nichts darüber...

Edit: Vergessenes Pic eingefügt....

Raspi mit Homematic-CCU, KeyMatic mit FB, HM-SEC-MDIR-2, HM-Sec-Sco, HM-MOD-RPI-PCB, 2x LCGW m. CUL868 / CUL433. == BananaPi mit fhem + SSD, MAX! FK und TS, Cube read-only (demn. Umstieg --> CUL), mehrere TFA/LC Sensoren, Milight Controller + Bulbs, Revolt, ECO Taster, Home-Easy, ESP8266 etc....

Ralf9

Beim ESP sind die Dateneingänge nicht 5V tolerant:
https://forum.arduino.cc/index.php?topic=282340.0
ZitatData lines are not 5V tolerant. It won't burn out the chip (at least not right away) but you'll get unexpected resets, etc. until you put in a voltage divider or level shifter on the RX line (I used a TI PCA9306).

Although it may work for a while you stand a chance of damaging the module if you don't use a voltage divider

Und hier ist was zum Arduino mit 16 MHz und 3,3V
https://forum.arduino.cc/index.php?topic=349255.0

Bei mir funktioniert es mit der folgenden Schaltung:
https://forum.fhem.de/index.php/topic,58396.msg512645.html#msg512645

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

yamfhem

Zitat von: yamfhem am 14 Oktober 2016, 10:12:18
@Sidey: ah, hab grad eben mal selbst kompiliert (musste einige <include.h> nach "include.h" ändern) dann ging's durch. Da ich's jetzt selber kann, brauchst Du mir nix extra kompilieren. Mich interessieren da eher die, von Dir angesprochenen, notwendigen Änderungen für den promicro.
Welche Register meinst Du?
Was hast Du bzgl. Wait bei serieller Verbindung committed?

Gruß
yamfhem

... das kompilieren und flashen auf einen pro micro (32U4) hat soweit funktioniert - mit den original Sourcen, ich habe keinerlei Änderungen vorgenommen. Nachdem ich den an meinen Raspi angeschlossen habe, sehe ich zwar, dass er geöffnet wird, aber nicht initialisiert!?

Zitat2016.10.31 21:04:23 3: sduino: IDlist MS 0 1 13 14 15 17 2 22 23 25 3 32 33 35 38 4 41 45 6 7
2016.10.31 21:04:23 3: sduino: IDlist MU 16 20 21 24 26 27 28 29 30 31 34 36 37 39 40 42 44 46 48 5 8 9
2016.10.31 21:04:23 3: sduino: IDlist MC 10 11 12 18 43 47
2016.10.31 21:04:23 3: Opening sduino device /dev/serial/by-id/usb-Arduino_LLC_Arduino_Leonardo-if00
2016.10.31 21:04:23 3: Setting sduino serial parameters to 57600,8,N,1
2016.10.31 21:04:23 1: define: /dev/serial/by-id/usb-Arduino_LLC_Arduino_Leonardo-if00@57600
2016.10.31 21:04:23 1: init: /dev/serial/by-id/usb-Arduino_LLC_Arduino_Leonardo-if00@57600
2016.10.31 21:05:02 1: Cannot init /dev/serial/by-id/usb-Arduino_LLC_Arduino_Leonardo-if00, ignoring it (sduino)

... kann mir jemand helfen?
Ich vermute, das die Sourcen so evtl. nicht 1:1 für den 32U4 verwendet werden können.

Ralf9

Zitat von: yamfhem am 31 Oktober 2016, 21:19:29
... das kompilieren und flashen auf einen pro micro (32U4) hat soweit funktioniert - mit den original Sourcen, ich habe keinerlei Änderungen vorgenommen. Nachdem ich den an meinen Raspi angeschlossen habe, sehe ich zwar, dass er geöffnet wird, aber nicht initialisiert!?

Ist beim sduino verbose 5?
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

yamfhem

ZitatIst beim sduino verbose 5?

... meinst beim Kompilieren?