Daten von Nano über I2C an Fhem übermitteln

Begonnen von Mariomgn, 13 August 2017, 10:57:04

Vorheriges Thema - Nächstes Thema

jensb

Hallo Mario,

die extra Bauteile sind ihr Geld wert. Der Transceiver kostet nur ca. 2 EUR pro Modul. Vorteil: Funktioniert und braucht nur 2 Leitungen, egal wie viele Teilnehmer.

Bei deinem Vorschlag machst du Verbindungen mit TTL-Pegel. Auf einem Board oder innerhalb eines kleinen Gehäuses kein Problem, aber dann kannst du auch I2C verwenden. Für längere Kabel nicht empfehlenswert. Außerdem ist das immer eine P2P-Verbindung, also brauchst am Master viele serielle Schnittstellen.

Grüße,
Jens
FHEM 6.1 - RPi 4 Raspbian 12 + PiTFT - OPi Zero Armbian 5.35
EnOcean - (W)LAN/Firmata: BMP180, TSL2561, SHT21, Heatronic 3, OBIS - WLAN/ESP8266: Gardena 1251, Zirkulationspumpe - RTL433: Oregon - Bluetooth - MQTT
Contributions: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/jensb

Mariomgn

Hallo Jens,

der Abstand zwischen den beiden Mega´s beträgt maximal 2-5 cm.

Ob im Haus,Garten,Gewächshaus oder in der Garage, gibt es jeweils einen Schaltschrank mit einem Mega mit Configurable Firmata und nebenan einen Mega mit meinem Programm wo die jeweiligen Prozesse ablaufen.

Das Ganze habe ich so gestaltet da ich mich eher im C++ auskenne und das bei mir auch zuverlässiger läuft, da in der Garage u.a. eine Heizung und ein Garagentor dran hängt.

Ich habe auch schon versucht mein Programm mit der Firmata zusammen zu legen auf einem Mega es scheitert aber dann an der Auswertung  des DS18B20 Sensor´s.

MfG Mario

jensb

Hallo Mario,

bin zuletzt davon ausgegangen, dass du alle Arduinos mit einem zentralen Mega vernetzen willst und die Arduinos räumlich verteilt sind. Bei Entfernungen bis 5cm kommen wir zurück zu I2C zwischen den Arduinos und z.B. MQTT zwischen Arduino und FHEM. Firmata macht nur Sinn, wenn es ausschließlich um lokale IO-Pins bzw. um Master-gesteuerte I2C-Abfragen geht und das ist bei dir nicht der Fall.

Warum du 2 Megas im Tandem brauchst, habe ich auch noch nicht ganz verstanden. Je nach IO-Umfang und Programmumfang schafft das möglicherweise auch einer und dann fällt auch I2C weg.

Grüße,
Jens
FHEM 6.1 - RPi 4 Raspbian 12 + PiTFT - OPi Zero Armbian 5.35
EnOcean - (W)LAN/Firmata: BMP180, TSL2561, SHT21, Heatronic 3, OBIS - WLAN/ESP8266: Gardena 1251, Zirkulationspumpe - RTL433: Oregon - Bluetooth - MQTT
Contributions: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/jensb

Mariomgn

Hallo Jens,

ich verwende die Mega´s im Tandem da ich immer wenn ich Fhem neu starte Probleme mit dem Ethernet Shield  habe.

Wenn ich Fhem neu starte haben die Mega´s keine Verbindung mehr und müssen manuell über den Reset Button neu gestartet werden :-\

Das ganze ist nicht so ein großes Problem, aber wenn gerade das Gewächshaus  bewässert wird wartet der Mega ja auf den Befehl von Fhem "Wasser aus" dieser kommt aber erst wenn die Verbindung wieder da ist( in gedenken an 6 Tomaten Pflanzen :'().

Daher laufen meine Programme Autark auf einem zweiten Mega.

Ich werde mich nächste Woche mal mit dem MQTT Protokoll beschäftigen, das sagt mir sehr zu.

Kennst du da eventuelle Besonderheiten?

MfG Mario


jensb

Hallo Mario,

ZitatWenn ich Fhem neu starte haben die Mega´s keine Verbindung mehr und müssen manuell über den Reset Button neu gestartet werden.
Das ist nicht typisch. Wenn du allerdings Firmata verwendest, wird der Mega beim erfolgreichen Verbindungsneuaufbau soft-resettet.

Zitat... wenn gerade das Gewächshaus  bewässert wird wartet der Mega ja auf den Befehl von Fhem "Wasser aus" ...
Bau dir auf jeden Fall einen Timer in den Mega ein, damit nach einer max. Zeit auf jeden Fall abgeschaltet wird.

ZitatKennst du da eventuelle Besonderheiten?
Nein, da ich es bisher nicht selbst eingesetzt habe.

Grüße,
Jens
FHEM 6.1 - RPi 4 Raspbian 12 + PiTFT - OPi Zero Armbian 5.35
EnOcean - (W)LAN/Firmata: BMP180, TSL2561, SHT21, Heatronic 3, OBIS - WLAN/ESP8266: Gardena 1251, Zirkulationspumpe - RTL433: Oregon - Bluetooth - MQTT
Contributions: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/jensb