• Uncategorized
  • 0

My Automated Home: Raspberry Pi + Node-Red + MQTT & Amazon Echo

In our latest My Automated home feature, Dave McLaughlin takes us through his journey developing his own smart home system. With some DIY upgrades to existing home automation hardware and some clever software integration he’s built a fascinating system…

Am Anfang

Having used Homeseer and a number of wired and wireless devices whilst in the UK, I switched to wireless when I moved overseas to Indonesia in 2005. As I was living in a rented apartment I need a solution that would not require any cables other than maybe Ethernet in the same room.

I decide on a Z-Wave system, later adding Wemo Lamp modules too. For Z-Wave side of things I chose the HomePro Appliance modules for sockets and Everspring Lamp modules for the lighting. Neither of these 2 modules were cheap.

I ran with this setup until the middle of 2016, but the following issues prompted a change. Firstly Z-Wave was temperamental with 2 units at the far end of ou apartment, even though I had an Appliance Module half way between it just never worked reliably. I would have continually press OFF on the Homeseer Touch based tablet to get my bed light to go off. later I would have 2 units that controlled lamps blow up and fail. one of the IC’s that was part of the power supply had split wide open.

The next headache was the Wemo lamp modules. The only way to get these to work was with IFTTT through their Homeseer and Wemo channels. As long as my internet connection was good this worked ok, albeit a bit slow at times. Not exactly a 10 on the WAF scale.

In early 2016 I came across a website run by Peter Scargill who used to run an electronics design company many years ago from Tyneside. at that time I used his AppCON wired controllers for home automation based on the little 8 bit pic microcontrollers. I had hundreds of meters of 4 core alarm cable run all over my apartment. The system was reliable but trying to hide all that cable didn’t go down well with my partner at the time.

Fast forward to 2016 and Peter was back doing home automation with the little ESP8266 based controllers.

These are based on a Cortex M4 core with built in 802.11 WiFi and come with an SDK that allows development with Eclipse as well as an Arduino IDE option.

As my HomePro units were troublesome I decided to re-engineer the internals and keep the mechanical parts. So I took out the old PCB and did all the measurements so I could make my own 2 stack PCB assembly in much the same as the old one. The lower PCB is the POWER supply and solid state RELAY.

I chose the solid state relays as they switch on the zero crossing and avoid any issues with pulling down the AC and causing the power supply to dip. This works faultlessly and I can switch up to 8 AMPS with this arrangement. more than enough for the intended use of these modules.

These images show the new board stack and the old boards within the module and finally the new boards installed into the HomePro enclosure.

There is an LED on the board to show status and I drilled a small hole to allow this to be seen from the outside. It flashes rapidly until it gets a WiFi and MQTT connection. using the button on the front you can press and hold this for around 3-5 seconds just after power up and this will activate an APN and webpage that you can use to configure the device. easier than trying to do this over the serial connection. Peter and Aiden have considered everything with this.

Now the lighting needed to be sorted. The Everspring units that I had purchased from the UK a couple of years ago used to show an annoying fault. They would on occasion started to switch off and then back on again. It was completely random. I replaced one unit with a new one and the same thing happened. then one day I spotted that the on/off fault was occurring when the voltage in the apartment was dropping below 209Vac – Indonesia is not very good when it comes to stability of the mains supply. I opened one of the units and found that they used a very cheap power supply design based on a capacitor/resistor dropper type. These are good when you have a stable power supply but they really don’t like it when the voltage input is too low.

So armed with the HomePro unit design, I set about creating a new PCB to fit the existing enclosures. The ESP12 was located on one side and the AC-DC power on the other. The solid state relay was also on the same side as the power supply. A prog and on/off button were also fitted so I could install the software initially. The web interface would be used to configure it later. You can see the ESP side of the PCB below. The slot in the PCB is to increase the separation of the AC power from the low voltage DC side. The large pads are the AC in and AC out to the lamp.

So now I had a number of upgraded appliance modules and lighting controllers but how was I going to control all of this? It was time to retire my old Homeseer 2 system. The PC was noEnde der Probleme und sein Windows 10 würde sich entscheiden, dass es sich ohne meine Erlaubnis aktualisieren würde. Zeit, um sich nach Linux zu bewegen.

Basierend auf dem Blog von Peter entschied ich mich, mein Raspberry Pi3 mit seinem 7-Zoll-LCD herauszuholen und Knoten-Rot zu starten. Node-rot für diejenigen, die nicht gesehen haben, dass dies eine sehr schöne und stabile Drag & Drop-Steuerungssoftware ist. Zuerst war es entmutigend, eingerichtet zu werden, aber nach ungefähr einer Woche des Spielens stellte ich fest, dass es sehr einfach war, mich mit dem Griff zu bekommen. Wenn Sie Programmierfähigkeiten haben, werden Sie sich mit dem Skript zu Hause fühlen. Alle Module werden als Java-Skriptquelle bereitgestellt und es gibt eine riesige und ständig wachsende Bibliothek für die Knoten-Red-Website.

Als nächstes brauchte ich einen MQTT -Broker, als die Software von Peter mit diesem Protokoll kommuniziert. Sobald Sie MQTT eingerichtet und verwendet haben, erkennen Sie schnell, wie effizient es in Ihrem Netzwerk ist. Es besteht keine Notwendigkeit, Geräte zu befragen oder sogar die IP -Adresse der Geräte zu kennen. Der Broker kümmert sich darum. Diejenigen, die mit XAP vertraut sind, werden dies verstehen.

Mit Knoten-Red habe ich verschiedene Timer eingerichtet (dank Peter wieder für seinen Bigimer) und nachts die Lichter einschalten. Mit einem WEMO -Plugin hatte ich jetzt auch die Kontrolle über die WEMO -Lampen, wenn auch nur ein- und ausgeschaltet. Der Entwickler des Knoten-Red-Plugins hat zu einem bestimmten Zeitpunkt die Dimmsteuerung versprochen.

OK, also hatte ich ein Node-Red- und MQTT-Setup, aber jetzt brauchte ich eine Möglichkeit, die Lichter und Schalter sowohl mit Sprache als auch irgendeiner Form von mechanischer oder berührender Schnittstelle zu steuern. Ich bin auf der Website von Element14 auf einige drahtlose Schalter von Enocean gestoßen, sodass ich zusammen mit dem Raspberry PI Enocean-Modul, das in die GPIO-Stifte des PI anschließt, bestellt und mit dem UART mit Knoten-Rot und Plugin kommuniziert.

Die Schalter haben einen Vorteil, in dem es keine Batterie gibt, um zu installieren oder zu kümmern. Sie verwenden eine Energieernte durch eine Spule und einen Magneten, der beim Drücken der Taste aktiviert wird. Sie sind leider nicht mit Wandvorrichtungen geliefert, sodass Sie Ihre eigenen entwerfen müssen. Sie bieten eine STL -Datei für Schaltfläche, die Sie 3D gedruckt erhalten können, sodass ich diese verwendet und meine eigene Montage für sie erstellt habe. Dies dient 2 Zwecken, die den alten Schalter an der Wand bedecken, um sicherzustellen, dass sie in der Position bleibt, so dass die Lampenmodule immer eingeschaltet sind und zweitens die Steuerelemente an einem vertrauten Ort lokalisieren.

Verwenden des Knoten-rot-Enocean-Plugs, erhalte ich eine Nachrichtennutzlast mit den Schaltflächenzuständen. Durch Parsen in einem Knoten-roten Schalter kann ich den entsprechenden Befehl an Licht oder Schalter usw. senden. Dies ist ein Beispiel für die vom Enocean-Switch gesendete Nutzlast. Es ist im JSON -Format so einfach zu analysieren. Die ID und V sind das, woran wir interessiert sind.

{“Payload”: {“ID”: “002D0932”, “V”: “A0 Down”, “Einheit”: “”, “RSSI”: -76, “Typ”: “Zustand”, “eep”: ” F6-02-03 “,” Mann “:” enocean_gmbh “,” Desc “:” Rocker Switch “,” RV “:” 30 “,” Rawbyte “:” 55000707017af630002d09323001ffffff4c000d “}, _msgid”: “3E6D4C8FFF4F4C000D”}, “_msgid”: “3E6D4C8FFF4F4F. }

Das folgende Bild zeigt den Switch mit 4 Ausgängen basierend auf dem Wert msg.payload.v im Telegramm aus dem Enocean -Switch. Diese werden dann an das entsprechende Gerät gerichtet. Ich verwende die Umschaltfunktion in der MQTT -Firmware, um das Gerät aus demselben Switch ein- und auszuschalten. Dies bedeutet, dass ich bis zu 4 Schalterzustände von jedem Enocean -Modul habe.

Jetzt beginnt der lustige Teil, weil ich ein Amazon -Echo habe und immer mein Zuhause mit Sprachbefehlen kontrollieren wollte. Sie können Scifi dafür verantwortlich machen

Es gibt keine direkte Echo-Unterstützung, zumindest nicht ohne eine HTTPS-Verbindung zu Ihrem Knoten-Rot, und das ist leider mit meinem ISP unmöglich, also brauchte ich eine Alternative. Mit diesem Amazon -Echo Habridge konnte ich auf demselben Raspberry PI3 -Lagern keine Sprachbeleuchtung usw. einrichten usw. Die Habridge emuliert eine Philips -Hue -API, sodass das Echo die von Ihnen eingerichteten Geräte sieht. Hier ist ein Beispiel für ein Gerät, das als Front -Room -Lüfter bezeichnet wird.

Durch das Aussprechen des Echos kann der Fan eingeschaltet werden. “Alexa, schalten Sie vor dem Raum ein, indem Sie” Alexa, ausschalten Sie den Vorraum aus “, schalten Sie vor.”

Der Habridge sendet die Befehle über eine HTTP-Anforderung an Knotenredukt und anschließe dann die URL für die Werte. Dies ist ein einfaches Skript, wie unten gezeigt.

Wie geht es mit kostengünstigen Modulen

Nachdem ich meine eigenen Leiterplatten entworfen hatte, um die Module zu ersetzen, musste ich zusätzliche Schaltermodule und Lichtsteuerungen hinzufügen.

Meine eigenen hausgemachten Einheiten kosten bei allen PCB und den Teilen zusammen rund 15 US -Dollar. Also immer noch niedrige Kosten.

#
Vorschau
Produkt
Bewertung
Preis

1

Jane Choi Raspberry Pi 4 B Modell B 8 GB Starter Kit (8 GB RAM) -Motherboard 64 GB SD-Karte, KühlungFan,…

121 Bewertungen

£ 222.99

Kaufen Sie bei Amazon

2

Raspberry PI 400 4 GB Offizielles Start-up-Kit, UK Layout

215 Bewertungen

£ 110,56

Kaufen Sie bei Amazon

3

Freenove Ultimate Starter Kit für Raspberry Pi 4 B 3 B+ 400, 561-seitige Detaillierte, Python C …

2.835 Bewertungen

£ 42.95

Kaufen Sie bei Amazon

Um dieses noch niedriger zu machen, stieß ich auf die Itead Studio Slampher und die S20 Smart Switches. Dies sind jeweils rund 12 US-Dollar für die S20-Module und 8,50 US-Dollar für die Lichtcontroller, die weniger als die Z-Wellen-Module auf dem Markt sind. Sie kommen mit der eigenen Firmware von ITEAD, die von einer iOS- oder Android -App gesteuert wird, aber ich wollte in der Lage sein, Peters Code zu verwenden. Peter hatte einige Nachforschungen angenommen und festgestellt, dass es mit geringfügigen Änderungen seines Code in die ITead -Einheiten und die Arbeit programmieren würde. Sie benötigen einen USB -Wert für UART mit 3,3 V -Ausgang, um dies zu tun, aber dies ist einfach genug, wenn Sie ein Lötkolben einsetzen können. Der einzige Nachteil ist, dass die ITead -Module mit einem 512 KB -Blitz ausgestattet sind und Peter Code OTA -Updates ermöglichen, diese auf 8 MB zu ändern. Die Memory ICs kosten bei eBay bei 5 US -Dollar für 5 US -Dollar. Bewaffnet mit einer Hot Air Rework Station (leihen Sie sich eine Freunde aus, wenn Sie keine haben), ist der Job schnell und riskiert keinen Schaden für die Boards. Das folgende Bild zeigt das SOIC -IC -Oberteil links nach dem Entfernen des alten und des neuen.

Sie müssen auch auf einem Kopfball zur einzelnen Zeile von 4 Löchern auf der Löcher löten. Dadurch wird der Vorstand angewendet und ermöglicht es Ihnen, sie mit der benutzerdefinierten MQTT -Firmware zu programmieren. Ich habe einen detaillierten Blog darüber, wie das geht.

Die S20 -Module sehen sehr klug und modern aus. Mit dem Netzschalter können Sie ihn lokal ein- und ausschalten. Die hier gezeigten Euro -Steckdosen sind aber in Kürze sowohl die US- als auch die britischen Optionen anbieten.

Die Slampher -Module sind LAMP -Controller auf ES27 -Basis, so dass sie derzeit nicht ideal für Großbritannien sind, aber sie funktionieren sehr gut.

Wenn man bedenkt, dass sie die Switch -Module als Großbritannien anbieten, würde ich erwarten, dass eine Bajonett -Version bald mitkommen könnte. Ich bevorzuge jetzt den Schraubentyp jetzt für eine einfachere Installation.

Diese sind leicht zu öffnen und zu modifizieren wie zuvor mit einem anderen Schritt als dem Ersatz des Flash -IC, und das besteht darin

You may also like...

Leave a Reply

Your email address will not be published. Required fields are marked *