Hauptmenü

RS485 NanoV3 5V

Begonnen von LuckyDay, 09 September 2018, 16:10:57

Vorheriges Thema - Nächstes Thema

LuckyDay

Gleich vorneweg , ich bin total unbeleckt bei Ardino-Ide und Mysensors.

Ardino-Ide 1.85
MySensors-2.3.0.
Fhem die aktuelle $Id: 00_MYSENSORS.pm 17290 2018-09-06 08:29:45Z Hauswart

Das Beispiel GatewaySerialRS485 funktioniert ohne Änderung (9600Baud)

define MyGateway_0 MYSENSORS /dev/ttyUSB0@115200  //nur als Bsp zu sehen
attr MyGateway_0 stateFormat connection
und wenn
im Reading state opened
im Reading connection startup complete
dann läuft das Gateway.


Das Beispiel MotionSensorRS485 funktioniert erst mit dem Eintrag
#define MY_NODE_ID 1  // die 1 ist auch nur als Bsp zu sehen.
vor!
#include <MySensors.h>

Anlernen, Pairen :) bei Mysensor heißt es set inclusion-mode on am Gateway
den MotionSensorRS485Nano mit Strom versorgen, und ein neues
MYSENSOR_1 Device sollte im Raum Everything erscheinen.

Im Bild sieht man die belegten Pins bzw die Grundschaltung für Gateway oder Nodes.

Die Doku zu dem ganzen ist "wild" verstreut und nur meine Zusammenfassung. um ein laufendes Beispiel zubekommen.


Mal eine generelle Frage, mit wieviel Baud seid ihr am Start im funktionierenden Betrieb?

alru

ZitatMal eine generelle Frage, mit wieviel Baud seid ihr am Start im funktionierenden Betrieb?

Mein serielles GW ist ein Arduino Uno (16Mhz) und mit 115200 Baud angeschlossen

So wie ich das in Erinnerung habe, wird z.B. beim Mini Pro eine niedrige Baudrate benötigt. Das macht der Original Sketch für das serielle GW aber von selbst:

// Define a lower baud rate for Arduino's running on 8 MHz (Arduino Pro Mini 3.3V & SenseBender)
#if F_CPU == 8000000L
#define MY_BAUD_RATE 38400
#endif
Gruß,

Stefan
(Raspi 3B - Stretch / HM-LGW / HomeMatic / MySensors)

Ranseyer

Ich denke bei der Baudrate ist der Bus gemeint. Ich habe hier im Forum mal etwas herumgerechnet und bin auf 19.200 als besten Komromiss gekommen:
-keine Terminierung nötig bis xxx Meter (ich glaube 500)
-Stromsparender
-...


https://github.com/ranseyer/MySensors-HW/blob/master/MySensors-HM-easy-PCB-RFM-CC1101-RS485-NRF/Sketch/Motion_RS485/Motion_RS485.ino
FHEM mit FTUI. Homematic-Funk für Thermostate und Licht. MySensors als Basis für eigene HW.
Zentrale ist der MAPLE-CUL mit RFM69+HModUART-AddOn.
Doku zu meinen Projekten: Github/Ranseyer. Platinen falls verfügbar gerne auf Anfrage.
Support: gerne wenn ich Zeit+Lust habe im Forum. Nicht per PN!

Beta-User

Zitat von: fhem-hm-knecht am 09 September 2018, 16:10:57
Das Beispiel MotionSensorRS485 funktioniert erst mit dem Eintrag
#define MY_NODE_ID 1  // die 1 ist auch nur als Bsp zu sehen.
vor!
#include <MySensors.h>
Moin, danke für den Hinweis, hab im Starter-Guide im Wiki den Hinweis auf die Reihenfolge im Code ergänzt (da steht eigentlich ziemlich viel sehr komprimiert drin, aber wenn du weiteren Verbesserungsbedarf siehst, bitte um Info).

Ich fahre ebenfalls mit 19.200 sehr stabil ( :) :) :) ) auf dem Bus (aber mit den CAN-Transceivern) . Der default (9.600) sollte auch gehen, weniger ist problematisch (lt. MySensors-Seiten bzw. github). Mehr als 56k geht mit AltSoftSerial nicht.

Solange du keine Probleme hast, kannst du m.E. alles auf default lassen oder die Stromsparvariante von Ranseyer testen.

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

LuckyDay

Ja Danke
Ich werde mich auch mal auf die 19200Baud festlegen, noch läuft ja alles au f dem Steckboard.
Ich muß auch nochmal GANZ große Lesestunde beim Nano machen, diese BeispielSketche verwenden (fast)immer den Hw Pin2,3 Ext. Interrupt, obwohl der Nano auch Pinchange , auf (fast) allen Eingängen kann.

Ihr lacht jetzt bestimmt, aber am Sonntag habe ich einen Sketch ausprobiert der die Bounce2.h benötigt,
zum Glück gibt es google. Wenn man mittendrin einsteigt, braucht man schon eine Beisstange am Schreibtisch. selbst Erklärend ist das nicht immer.

Beta-User

Zitat von: fhem-hm-knecht am 11 September 2018, 00:09:04
Ihr lacht jetzt bestimmt, aber am Sonntag habe ich einen Sketch ausprobiert der die Bounce2.h benötigt,
zum Glück gibt es google. Wenn man mittendrin einsteigt, braucht man schon eine Beisstange am Schreibtisch. selbst Erklärend ist das nicht immer.
Willkommen im Club!

Darfst mir glauben, ich habe auch so manches Mal die Augen gerollt, bis meine Sketche so halbwegs das gemacht haben, was ich wollte. C(++) (bzw. auch die Arduino-IDE-Variante) ist halt eine Welt für sich.

Wenn du v.a. Taster und Schaltausgänge haben willst (und keine Angst vor Array-Code hast): Schau dir mal den Multi-Button...-Sketch an, der in der "Fundgrube" (angepinnt) zu finden ist. In meinem Repo gibt es bei Bedarf auch den einen oder anderen Sketch, der evtl. interessant sein könnte, aber meistens machen die mehrere Dinge, ds macht es eher unübersichtlich.

Leider gibt es wirklich wenige Beispiele, die die allg. Pin-Change-Funktionalität nutzen, wollte ich auch schon immer verstehen und bin dann doch auch bei Bounce2.h gelandet iVm. der Erkenntnis, dass man die PINs 2+3 freihalten sollte für Zähler (mit extra ISR und "volatile").

Wenn du spezielle Fragen hast: Gerne, ggf. auch direkt.

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