add stuff from current page
This commit is contained in:
parent
bd7cbf3c19
commit
b0c1fb400f
65 changed files with 3758 additions and 0 deletions
73
iot/anforderungen.md
Normal file
73
iot/anforderungen.md
Normal file
|
@ -0,0 +1,73 @@
|
|||
+++
|
||||
title = "IoT: Anforderungen"
|
||||
+++
|
||||
|
||||
Entwurf - möglichst kein Feature Creep!
|
||||
|
||||
## Sensoren / Aktoren = Knoten
|
||||
|
||||
- Knoten laufen mit Batterieversorgung
|
||||
- Knoten laufen mit Netz, wenn Spannung verfügbar, oder Knoten immer
|
||||
erreichbar sein muß (Für Aktoren wie Heizung)
|
||||
- Hardware und Software für Batterie- und Netzbetrieb identisch,
|
||||
Auswahl durch Jumper
|
||||
- Batterielebensdauer ~ 1 a
|
||||
- Experiment mit Nachladung der Batterien via PV?
|
||||
- Knoten erfassen
|
||||
- Ihren Batteriestatus
|
||||
- Die Wlan Feldstärke
|
||||
- Mechanische Zustände
|
||||
- Temperaturen (optional)
|
||||
- Wasser (optional)
|
||||
- Stromverbrauch / Aktivität von 230 V Verbrauchern (optional)
|
||||
- (Batterie-)Knoten schlafen immer, wachen auf durch
|
||||
- mechanischen Vorgang (Tür wird geöffnet)
|
||||
- Schwellwertüberschreitung (Helligkeit \< Schwellwert) (optional,
|
||||
Anwendungsfall noch offen, Detektion offener Fenster?)
|
||||
- Knoten übertragen entweder
|
||||
- nur eine Transition (Lichtschranke durchschritten, Klingeltaste
|
||||
gedrückt) => einfacher Aufbau, ESP im
|
||||
DeepSleep, oder
|
||||
- Transition und neuen Status (Tür wurde bewegt, ist jetzt offen)
|
||||
=> Attiny nötig um *Wechsel* zu erkennen, *oder* Lösung mit zwei Schaltern
|
||||
- Knoten sind billig
|
||||
|
||||
## Infrastruktur / Vernetzung
|
||||
|
||||
- Denkbar: Ein separates Wlan nur für IoT ohne Kontakt zum Internet
|
||||
- lokale Zentrale im Space ist in diesem separaten Netz
|
||||
|
||||
## Zentrale / API
|
||||
|
||||
- Es gibt eine lokale Zentrale im Space, die die Knotendaten
|
||||
einsammelt und verteilt (MQTT Broker)
|
||||
- Die Sensorbenamung folgt einem Regelwerk: mögliche Messwerte,
|
||||
Raumbezeichner..
|
||||
|
||||
## Verarbeitung
|
||||
|
||||
- Es kann (einen) Knoten geben, welcher Daten vom Broker erhält
|
||||
(abonniert) und verarbeitet, und der
|
||||
- Die Daten verknüpft (Heizung = an & Fenster = auf),
|
||||
(Kühlschrank > 5 min geöffnet) und Aktionen an die Knoten sendet
|
||||
- Die Daten (zyklisch) an die Space API "draussen" meldet
|
||||
- Befehle entgegennimmt (IRC, HTTP, ...) und an die Knoten sendet
|
||||
- Eine Hardware-Benutzerschnittstelle zur Verfügung stellt
|
||||
- und leitet daraus ggf. Aktionen ab (Anzeige an zentralem
|
||||
Terminal im Space, Mail an Paten) (Space wurde verlassen /
|
||||
abgeschlossen => Heizungen runterfahren)
|
||||
- Mobile Knoten (aka Fernsteuerungen) denkbar mit festgelegten
|
||||
Funktionen
|
||||
|
||||
## Aktoren / Melder
|
||||
|
||||
- Die Daten der Space Knoten finden Aufnahme in den !Status im IRC
|
||||
- Knotenpaten bekommen Mail wenn Batterie alle
|
||||
- Anzeige an der Ausgangstür: Ein Blick - alle Knoten auf grün, Space
|
||||
kann geschlossen werden, und / oder akustische Benachrichtigung wenn
|
||||
noch ein Knoten auf rot steht
|
||||
- Aktionen triggern (Anzeigen am Space-Ausgang: "Dachluken offen",
|
||||
Klopapier alle", "Herd noch an")
|
||||
- Triggern von Einträgen in Einkaufslisten (Klopapier) oder
|
||||
Bestellungen (Bier? ;)
|
||||
- Reaktionen auf besondere Zustände (Einbruch o.ä.) Mail, SMS ...
|
25
iot/beschaffung.md
Normal file
25
iot/beschaffung.md
Normal file
|
@ -0,0 +1,25 @@
|
|||
+++
|
||||
title = "IoT: Beschaffung"
|
||||
+++
|
||||
|
||||
- Geeignete Mikro- / Reed-Schalter für die entspr. Aufgaben
|
||||
- Fenster / Dachluke / Kühlschrank
|
||||
- <https://www.reichelt.de/Schnappschalter-Endschalter/MAR-1006-1001/3/index.html?ACTION=3&GROUPID=7599&ARTICLE=166850&OFFSET=75&>
|
||||
- Schnappschalter 1xUM 10A-400VAC Rollenhebel 2,99 €, Vorlaufweg
|
||||
max. 3,9 mm, Nachlaufweg min. 1,6 mm (Große Wege - einfache
|
||||
Justage)
|
||||
- Beim Chinamann für
|
||||
[1/10](https://www.aliexpress.com/item/10-Pcs-Roller-Lever-Arm-SPDT-NO-NC-Momentary-Micro-Switches-V-156-1C25/32643444249.html)
|
||||
Preis oder für
|
||||
[1/20](https://www.aliexpress.com/item/Wholesale-10pcs-lot-New-Micro-Roller-Lever-Arm-Normally-Open-Close-Limit-Switch-KW12-3/32613291715.html)
|
||||
- Reed Switches NO, für Öffnerkette am Aussenfenstern (Erfordert Pullup weil kein Wechsler)
|
||||
[1](https://www.aliexpress.com/item/5pcs-Adhesived-Security-Door-Window-Magnetic-Contact-Reed-Switch-NO/32795672550.html),
|
||||
[2](https://www.aliexpress.com/item/Free-Shipping-10pc-Normally-open-reed-switch-proximity-switches-plastic-package-with-mounting-hole-and-wire/1342008298.html).
|
||||
- Reed Wechsler, selber in Gehäuse bauen?
|
||||
- Überlegung: Betätigungsstück für Mikroschalter am Fenster etc auf
|
||||
- <https://www.reichelt.de/Kabelbinder-Montagesockel/KAB-SOCKEL-4-8HS/3/index.html?ACTION=3&GROUPID=5737&ARTICLE=45711&OFFSET=75&>
|
||||
- Kabelsockel für Binder 4,8mm, sw 100er-Pack befestigt? Andere Lösung?
|
||||
- Geschirmte Leitung Schalter -\> IoD Knoten
|
||||
- <https://www.reichelt.de/Mikrofon-Videoleitung/ML-209-25/3/index.html?ACTION=3&GROUPID=5032&ARTICLE=13309&OFFSET=75&>
|
||||
Mikrofonleitung, 2x0,08mm², rund, 25m-Ring 14,95 €. (µC Eingang
|
||||
Hochohmig wegen Verzicht auf Pullup/down)
|
10
iot/etat.md
Normal file
10
iot/etat.md
Normal file
|
@ -0,0 +1,10 @@
|
|||
+++
|
||||
title = "IoT: Etat"
|
||||
+++
|
||||
|
||||
Gesamtetat 250 EUR
|
||||
|
||||
- Reichelt "2017-02-IoT" 49,17 EUR (Prototypenmaterial)
|
||||
- Aliexpress 22.01.2017, 17,41 EUR (10 x ESP)
|
||||
- Reichelt "IoD V0.4 x 20" 133,81 EUR (Material für 20 Knoten. n für
|
||||
Space, n für Typ_o, n für And..., n für \[Yourname\])
|
190
iot/hardware.md
Normal file
190
iot/hardware.md
Normal file
|
@ -0,0 +1,190 @@
|
|||
+++
|
||||
title = "IoT: Hardware"
|
||||
+++
|
||||
|
||||
Unter-Seiten:
|
||||
|
||||
* [Change Requests](change-requests/)
|
||||
* [Messungen](messungen/)
|
||||
* [Platine Löten](platine-löten/)
|
||||
|
||||
*Entwurf*
|
||||
|
||||
Knoten (= Sensoren oder Aktoren)
|
||||
|
||||
## Brainstroming
|
||||
|
||||
<!-- [{{attachment:IoD_V0.3.jpg|attachment:IoD_V0.3.jpg|width="600"}}](attachment:IoD_V0.3.jpg) -->
|
||||
|
||||
- ESP8266-01 (billigster Typ), ggf. [Whitty
|
||||
Cloud](http://www.schatenseite.de/2016/04/22/esp8266-witty-cloud-modul/)
|
||||
Modul (schick)
|
||||
- Batterieversorgung Alkaline / Eneloop (ggf. ergänzt durch PV)
|
||||
- Jumper für Dauerstrom (Platz für Low Drop Regler vorsehen?)
|
||||
- Stromsparen durch
|
||||
- Deepsleep (~ 200 µA)
|
||||
- *oder* separater Attiny zum Aufwecken (Interrupt on Port change) (~ 0,2 µA)
|
||||
- *oder* Taster in der Vcc Leitung, der von MOSFET durch ESP
|
||||
überbrückt wird (vermutlich \<\< 0,1 µA)
|
||||
- ESP Module möglichst ohne Modifikation verwenden (Ausser LED für
|
||||
Betriebsspannungsanzeige auslöten)
|
||||
- Einfache Gehäusemontage (Tropfenlöcher zum Einhängen o.Ä.)
|
||||
- Vorhandene Gehäuse? Diese zweiteiligen Schraubdosen von DMB?
|
||||
- Einfacher Batterietausch
|
||||
|
||||
## Schaltung
|
||||
|
||||
<!-- {{attachment:knoten-sch0.4.png}} -->
|
||||
|
||||
## Funktion
|
||||
|
||||
<!-- [{{attachment:20170125_164320.jpg|attachment:20170125_164320.jpg|width="400"}}In](attachment:20170125_164320.jpg) -->
|
||||
In einem ersten Muster haben wir den ESP in Ruhe im Sleep Mode betrieben,
|
||||
und über seine Reset Leitung geweckt (In [Messungen](messungen/)
|
||||
Details zur Akkulaufzeit). An einer Tür ist dazu ein Schleifkontakt
|
||||
nötig, der sowohl bei geschlossener als auch bei offener Tür nicht
|
||||
aktiviert ist, und nur z.B. während der Öffnungsbewegung ein mal
|
||||
aktiviert wird, und den ESP damit weckt.
|
||||
|
||||
Nachteil: Der ESP weiss nicht, ober die Tür nach dem schließen des
|
||||
Kontaktes offen oder geschlossen ist. Gut geeignet ist diese Methode
|
||||
jedoch zb. als Einbruchsalarm. Leider kann man den ESP nicht über Port
|
||||
Change Interrupts wecken. Deswegen haben wir den Attiny vorgesehen, der
|
||||
sowohl bei steigender als auch bei fallender Flanke geweckt wird, und
|
||||
dem ESP die aktuelle Schalterstellung melden kann. Als weiteren Vorteil
|
||||
bekommen wir so einen deutlich geringeren Ruhestromverbrauch, da der ESP
|
||||
komplett abgeschaltet werden kann - nur der Attiny bleibt im Deep Sleep
|
||||
an der Batterie.
|
||||
|
||||
## Betriebszustände
|
||||
|
||||
Ruhezustand:
|
||||
|
||||
- Der Attiny befindet sich im Sleep-Mode
|
||||
- ESP ist abgeschaltet
|
||||
|
||||
Aufwachen:
|
||||
|
||||
- Attiny wird durch Interrupt on Port Change aufgeweckt
|
||||
- und schaltet über den Mosfet den ESP ein
|
||||
|
||||
Daten übertragen:
|
||||
|
||||
- Der ESP stellt mit einer festen IP-Adresse (Schneller als DNS) eine
|
||||
Verbindung zum Access Point her
|
||||
- und überträgt die aktuelle Schalterstellung des Sensors, die er über
|
||||
SWITCH_STATE vom Attiny gemeldet bekommt, zum Server
|
||||
- Am Ende der Übertragung prüft der Attiny, ob die Schalterstellung
|
||||
noch mit jener zu Beginn des Aufwachzyklus identisch ist
|
||||
- Wenn ja: Schlafen. Wenn nein (d.h., die Tür wurde nur ganz kurz
|
||||
geöffnet und sofort wieder geschlossen) wird 5 sec gewartet und die
|
||||
dann herrschende Schalterstellung erneut übertragen. So wird
|
||||
inkonsistente Information über Türzustand vermieden
|
||||
|
||||
Abschalten / schlafen gehen
|
||||
|
||||
- Nach erfolgreicher Übertragung bittet der ESP den Attiny über die
|
||||
Leitung SHUTDOWN, ihn abzuschalten
|
||||
- Attiny schaltet den Mosfet und damit den ESP ab
|
||||
- und legt sich selber wieder schlafen
|
||||
|
||||
## Bestückungs- und Funktionsvarianten
|
||||
|
||||
- ESP in Ruhe abgeschaltet:
|
||||
- Jumper 1 Pwr_Ctrl: 2-3 gesteckt
|
||||
- Jumper 2: offen
|
||||
- Jumper 5: RST via Attiny offen
|
||||
- ESP in Ruhe im Sleep Mode
|
||||
- Jumper 1 Pwr_Ctrl: 1-2 gesteckt
|
||||
- Jumper 2: gesteckt
|
||||
- Jumper 5: RST via Attiny gesteckt
|
||||
|
||||
ESP in Ruhe abgeschaltet: Geringer Ruhestromverbrauch (ca. 0,2 µA),
|
||||
jedoch längere Zeit beim Verbindungsaufbau. Geeignet bei selten
|
||||
betätigten Knoten.
|
||||
|
||||
ESP in Ruhe im Sleep Mode: Höherer Ruhestromverbrauch (ca. 200 µA),
|
||||
deutlich kürzere Zeit beim Verbindungsaufbau. Geeignet bei häufig
|
||||
betätigten Knoten.
|
||||
|
||||
## Stromverbrauch
|
||||
|
||||
Der Verwendete Attiy 45V-10SU (Final 25V-10SU) ist
|
||||
[spezifiziert](http://www.atmel.com/Images/Atmel-2586-AVR-8-bit-Microcontroller-ATtiny25-ATtiny45-ATtiny85_Datasheet-Summary.pdf)
|
||||
mit Power-down Mode: 0,1 μA at 1.8V, Operating Voltage -- 1.8 - 5.5V und
|
||||
Speed Grade 0 -- 4 MHz @ 1.8 - 5.5V, 0 - 10 MHz @ 2.7 - 5.5V.
|
||||
|
||||
## Stromversorgungsvarianten
|
||||
|
||||
Die Schaltung ist für Betrieb mit drei AA Eneloop Zellen konzipiert.
|
||||
Eneloops haben eine sehr geringe Selbstentladung und versprechen nach
|
||||
einem Versuch über knapp 200 Tage einen Betrieb in Jahresfrist ohne
|
||||
Akkuwechsel. Dazu wird die Spannung der Eneloops am Pin BATT_HIGH
|
||||
eingespeist. Eine Schottkydiode in Serie verhindert, dass bei frisch
|
||||
geladenen Zellen Vcc max des ESP überschritten wird.
|
||||
|
||||
Alternativ kann die Schaltung mit zwei AA Alkaline-Zellen betrieben
|
||||
werden. Da diese im neuen Zustand nur wenig mehr als 1,5 V je Zelle
|
||||
liefern, ist die Diode unnötig, und die Batteriespannung wird an
|
||||
BATT_LOW eingespeist
|
||||
|
||||
## Bestückungsplan Hardwareversion 0.41
|
||||
|
||||
<!-- {{attachment:Bestueckung-v0.41.png}} -->
|
||||
|
||||
## Material
|
||||
|
||||
\|\|\<tablewidth="100%"\>**Anzahl** \|\|**Bezeichnung** \|\|**Preis**
|
||||
\|\|**Bestell-Link** \|\| \|\|1 \|\|ESP8266-01 \|\|1,41
|
||||
\|\|[ESP-01](https://www.aliexpress.com/item/Free-shipping-ESP8266-serial-WIFI-wireless-module-wireless-transceiver/32267651506.html)
|
||||
\|\| \|\|1 \|\|AO 3413, MOSFET P-CH, 20V, 3A, SOT-23 (Schaltet ESP ein)
|
||||
\|\|0,21 \|\|[AO
|
||||
3413](https://www.reichelt.de/AO-BTS-Transistoren/AO-3413/3/index.html?ACTION=3&LA=5&ARTICLE=166493&GROUPID=7161&artnr=AO+3413)
|
||||
\|\| \|\|1 \|\|ATTINY 25V-10 SU :: Atmel AVR-RISC-Controller, SOIC-8
|
||||
\|\|1,30 \|\|[ATTINY
|
||||
25V-10SU](https://www.reichelt.de/Atmel-Attiny-AVRs/ATTINY-25V-10-SU/3/index.html?ACTION=3&GROUPID=2958&ARTICLE=69298&OFFSET=75&)
|
||||
\|\| \|\|1 \|\|B 140 F, SMD-Schottky-Diode, DO214AC/SMA, 40V, 1A
|
||||
\|\|0,08 \|\|[B 140
|
||||
F](https://www.reichelt.de/BA-BAY-BB-Dioden/B-140-F/3/index.html?ACTION=3&LA=5&ARTICLE=95199&GROUPID=2988&artnr=B+140+F)
|
||||
\|\| \|\|4 \|\|12 kOhm, SMD Widerstand 0805, 100 mW, 1% \|\|0,01
|
||||
\|\|[RND 0805 1
|
||||
12K](https://www.reichelt.de/SMD-0805-von-1-bis-910-kOhm/RND-0805-1-12K/3/index.html?ACTION=3&LA=5&ARTICLE=183253&GROUPID=7971&artnr=RND+0805+1+12K)
|
||||
\|\| \|\|1 \|\|SMD-Kerko, 1210, 100µF, 6,3V, 20%, MLCC \|\|0,25 \|\|[X5R
|
||||
1210 DB
|
||||
100U](https://www.reichelt.de/Vielschicht-SMD-G1210/X5R-1210-DB-100U/3/index.html?ACTION=3&GROUPID=3167&ARTICLE=194475&OFFSET=75&)
|
||||
\|\| \|\|3 \|\|Vielschicht-Kerko, 100nF, 50V (Alternativ in
|
||||
[0603](https://www.reichelt.de/Vielschicht-SMD-G0603/KEM-Y5V0603-100N/3/index.html?ACTION=3&GROUPID=3166&ARTICLE=207005&OFFSET=75&))
|
||||
\|\|0,02 \|\|[KEM X7R0805
|
||||
100N](https://www.reichelt.de/Vielschicht-SMD-G0805/KEM-X7R0805-100N/3/index.html?ACTION=3&GROUPID=8048&ARTICLE=207073&OFFSET=75&)
|
||||
\|\| \|\|0,5 \|\|2x10pol. Buchsenleiste, gerade, RM 2,54 (Halbiert für
|
||||
ESP Anschluß) \|\|0,56 \|\|[BL 2X10G
|
||||
2,54](https://www.reichelt.de/Buchsenleisten/BL-2X10G-2-54/3/index.html?ACTION=3&GROUPID=7435&ARTICLE=6074&OFFSET=75&)
|
||||
\|\| \|\|3 \|\|Batteriehalter, 1x Mignon "AA" \|\|0,24 \|\|[HALTER
|
||||
1XAAK](https://www.reichelt.de/Batteriehalter-fuer-Mignon/HALTER-1XAAK/3/index.html?ACTION=3&LA=5&ARTICLE=113154&GROUPID=4255&artnr=HALTER+1XAAK)
|
||||
\|\| \|\|0,1 \|\|Jumper 40pol. Stiftleiste, gewinkelt, RM 2,54 (Jumper
|
||||
für Aktivierung des Wifi Manager im Betrieb) \|\|0,22 \|\|[SL 1X40W
|
||||
2,54](https://www.reichelt.de/Stiftleisten/SL-1X40W-2-54/3/index.html?ACTION=3&GROUPID=7434&ARTICLE=19507&OFFSET=75&)
|
||||
\|\| \|\|1 \|\|Kurzschlussbrücke, rot, mit Grifflasche (Jumper für
|
||||
Aktivierung des Wifi Manager im Betrieb) \|\|0,04 \|\|[JUMPER 2,54GL
|
||||
RT](https://www.reichelt.de/Stiftleisten/JUMPER-2-54GL-RT/3/index.html?ACTION=3&GROUPID=7434&ARTICLE=9018&OFFSET=75&)
|
||||
\|\| \|\|1 \|\|Stiftleiste 2,54 mm, 2X03, gerade (Für ISP Anschluß)
|
||||
\|\|0,14 \|\|[MPE
|
||||
087-2-006](https://www.reichelt.de/Stiftleisten/MPE-087-2-006/3/index.html?ACTION=3&GROUPID=7434&ARTICLE=119893&OFFSET=75&)
|
||||
\|\| \|\|1 \|\|Stiftleiste 2,54 mm, 1X06, gerade (für Batterie und
|
||||
Schalter Anschluß, die drei Pins für Schalter werden nachträgl. um 90°
|
||||
gebogen) \|\|0,14 \|\|[MPE
|
||||
087-1-006](https://www.reichelt.de/Stiftleisten/MPE-087-1-006/3/index.html?ACTION=3&GROUPID=7434&ARTICLE=119883&OFFSET=75&)
|
||||
\|\| \|\|1 \|\|MPE 094-1-003 :: Buchsenleisten 2,54 mm, 1X03, gerade
|
||||
(Schalter Anschluß, kommt am die Leitung zum Schalter) \|\|0,13 \|\|[MPE
|
||||
094-1-003](https://www.reichelt.de/Buchsenleisten/MPE-094-1-003/3/index.html?ACTION=3&GROUPID=7435&ARTICLE=119912&OFFSET=75&)
|
||||
\|\| \|\| \|\|1 \|\|Platine (0,20 Basismaterial, 0,10 Chemie geschätzt)
|
||||
\|\|0,30 \|\| \|\| \|\| \|\| \|\|**Summe ca.** \|\|**5,00** \|\| \|\|
|
||||
\|\|
|
||||
|
||||
## Änderungen für kommende Hardware Revision 0.5
|
||||
|
||||
- Elko 330 µF ersetzt durch Kerko 100 µF
|
||||
- Zusätzlicher Kerko 100 nF am Reset Pin Attiny (Fix für
|
||||
Startprobleme)
|
||||
- Kerko 100 nF an Vcc Attiny ersetzt durch Kerko 10 µF (Fix für
|
||||
Startprobleme)
|
15
iot/hardware/change-requests.md
Normal file
15
iot/hardware/change-requests.md
Normal file
|
@ -0,0 +1,15 @@
|
|||
+++
|
||||
title = "IoT-Hardware: Change Requests"
|
||||
+++
|
||||
|
||||
Aktuell PCB V0.4
|
||||
|
||||
- Footprint von C1 von Elko auf Kerko ändern
|
||||
- Footprint von C2 - C4 von Kunnstofffolie auf Kerko ändern
|
||||
- Iso-Spalt bei den Lötjumpern wesentlich kleiner
|
||||
- Dünne Tracks bei den Lötjumpern für default Brücken legen
|
||||
- J3 durch Taster ersetzen?
|
||||
- Funktionsvariante "Attiny nicht bestückt, Sensortaster über Mosfet, ESP steuert Mosfet zur
|
||||
Selbsthaltung" vorsehen. Das geht aktuell mit J1 und J5 schon wenn der Attiny nicht bestückt ist,
|
||||
es fehlt nur Taster-Anschluss über dem Mosfet.
|
||||
- Eine WS2812 LED aufs Board für chique Signalisierung?
|
63
iot/hardware/messungen.md
Normal file
63
iot/hardware/messungen.md
Normal file
|
@ -0,0 +1,63 @@
|
|||
+++
|
||||
title = "IoT-Hardware: Messungen"
|
||||
+++
|
||||
|
||||
## Messungen, Hardwarestand 0.4
|
||||
|
||||
330 µF Elko an der Batterie und 100 nF Kunsstoffolienkondensator direkt
|
||||
am ESP.
|
||||
|
||||
### Betriebsspannung nach der Schottky-Diode (Leitung BATT_LOW) DC Coupling
|
||||
|
||||
<!-- [{{attachment:Supply_DC_coupling.bmp|attachment:Supply_DC_coupling.bmp|width="600"}}](attachment:Supply_DC_coupling.bmp) -->
|
||||
Bei abgeschaltetem ESP und Attiny im Sleep Mode ist die Stromaufnahme so
|
||||
gering, dass an der Diode keine nennenswerte Spannung abfällt. Mit
|
||||
aktiviertem Attiny und ESP sinkt die Spannung nach der Diode um ~ 0,3 V,
|
||||
die Schwellspannung der Diode.
|
||||
|
||||
### Betriebsspannung nach der Schottky-Diode (Leitung BATT_LOW) AC Coupling
|
||||
|
||||
<!-- [{{attachment:Supply_AC_coupling.bmp|attachment:Supply_AC_coupling.bmp|width="600"}}](attachment:Supply_AC_coupling.bmp) -->
|
||||
Die Betriebsspannung bricht beim Verbindungsaufbau zyklisch um ca 50 mV
|
||||
ein, in der Übertragungsphase um ca 100 mV.
|
||||
|
||||
Mit 10 µF Kerko an der Batterie und 100 nF Kunsstoffolienkondensator
|
||||
direkt am ESP: Die Betriebsspannung bricht max. um ca 200 mV ein.
|
||||
|
||||
## Messungen zur Akkulaufzeit
|
||||
|
||||
### Nur ESP im Deep Sleep
|
||||
|
||||
<!-- [{{attachment:20170125_164320.jpg|attachment:20170125_164320.jpg|width="400"}}](attachment:20170125_164320.jpg) -->
|
||||
|
||||
Im Vorlauf haben wir eine einfache Schaltung verwendet, bei der der ESP
|
||||
im Deep Sleep Modus ca. 300 µA Strom aufnimmt. An einer Haustür
|
||||
angebracht wurde die Schaltung im Mittel ca. sechs mal am Tag aktiviert.
|
||||
Der Verlauf der Akkuspannung läßt einen Betrieb für ein Jahr ohne
|
||||
Akkuwechsel möglich erscheinen. Das Auf und Ab der Akkuspannung
|
||||
korreliert mit dem Temperaturverlauf am Montageort - wärmer => höhere
|
||||
Zellenspannung.
|
||||
|
||||
### Eneloop Akkutest
|
||||
|
||||
<!-- [{{attachment:Eneloop-Test.jpg|attachment:Eneloop-Test.jpg}}](attachment:Eneloop-Test.jpg) -->
|
||||
|
||||
## Messungen zum Stromverbrauch
|
||||
|
||||
- Attiny 45V-10SU
|
||||
- Versorgung 3 x Eneloop AA via Schottky Diode
|
||||
- Messung mit Hameg HM 8011-3
|
||||
|
||||
Laut Datenblatt zieht der Attiny im Power-down Mode: 0,1 μA at 1.8V.
|
||||
|
||||
Gemessen habe ich 0,12 µA bei 3,92 V Akkuspannung, 3,91 V am Tiny (keine
|
||||
nennenswerte Schwellspannung an der Schottky Diode bei dem kleinen
|
||||
Strom). Sobald der ESP arbeitet, sinkt die Spannung an Tiny und ESP auf
|
||||
ca. 3,2 V.
|
||||
|
||||
<!-- [{{attachment:current.bmp|attachment:current.bmp|width="600"}}](attachment:current.bmp) -->
|
||||
|
||||
Messung über einen 1 Ohm Shunt, 50 mV entspricht 50 mA. Ähnlich wie
|
||||
andernorts im Netz beschrieben ist der Verbrauch des Digitalteils ca. 70
|
||||
mA, Stromspitzen durch den Transceiver ~ 270 mA.
|
||||
|
66
iot/hardware/platine-löten.md
Normal file
66
iot/hardware/platine-löten.md
Normal file
|
@ -0,0 +1,66 @@
|
|||
+++
|
||||
title = "IoT-Hardware: Platine Löten"
|
||||
+++
|
||||
|
||||
Schritte der Bestückung
|
||||
|
||||
## Leere Platine:
|
||||
|
||||
<!-- {{attachment:IoD-00.jpg}} -->
|
||||
|
||||
## Brücken aus 0,6 mm versilbertem Schaltdraht:
|
||||
|
||||
<!-- {{attachment:IoD-01.jpg}} -->
|
||||
|
||||
## Brücken gelötet:
|
||||
|
||||
<!-- {{attachment:IoD-02.jpg}} -->
|
||||
|
||||
## Widerstände:
|
||||
|
||||
<!-- {{attachment:IoD-03.jpg}} -->
|
||||
|
||||
## Kondensatoren 100 nF
|
||||
|
||||
Wenn die Controller noch nicht programmiert sind ( = auf der Platine
|
||||
programmiert werden sollen), dann den Kondensator C3 links an der
|
||||
sechspoligen Steckerleiste erstmal nicht bestücken - der liegt an der
|
||||
ISP - Leitung MOSI, und stört manche Programmer.
|
||||
|
||||
<!-- {{attachment:IoD-05.jpg}} -->
|
||||
|
||||
## Schottky - Diode. Kathodenstrich rechts
|
||||
|
||||
<!-- {{attachment:IoD-06.jpg}} -->
|
||||
|
||||
## Kondensator 100 µF und Lötbrücke für Jumper 1
|
||||
|
||||
<!-- {{attachment:IoD-07.jpg}} -->
|
||||
|
||||
## Mikrocontroller, Pin 1 unten rechts
|
||||
|
||||
<!-- {{attachment:IoD-08.jpg}} -->
|
||||
|
||||
## Jumper 3 (WiFi Setup)
|
||||
|
||||
<!-- {{attachment:IoD-09.jpg}} -->
|
||||
|
||||
## Buchsenleiste, 2x4 Pole abschneiden und anwinkeln
|
||||
|
||||
<!-- {{attachment:IoD-10.jpg}} -->
|
||||
|
||||
## Buchsenleiste eingelötet
|
||||
|
||||
<!-- {{attachment:IoD-11.jpg}} -->
|
||||
|
||||
## ISP - Stecker
|
||||
|
||||
<!-- {{attachment:IoD-12.jpg}} -->
|
||||
|
||||
## Stecker für Sensor und Batterie
|
||||
|
||||
Je nach Gehäuse kann es sinnvoll sein, die drei Pins für den Anschluß
|
||||
des Sensors (Umschalter) abzuwinkeln.
|
||||
|
||||
<!-- {{attachment:IoD-13.jpg}} -->
|
||||
|
144
iot/mqtt-topics.md
Normal file
144
iot/mqtt-topics.md
Normal file
|
@ -0,0 +1,144 @@
|
|||
+++
|
||||
title = "IoT: MQTT-Topics"
|
||||
+++
|
||||
|
||||
Grundlegende Aufteilung der MQTT-Topics in Quellen und Senken (Sensoren
|
||||
= Quellen, Aktoren = Senken). Ein Topic-Namensraum gehört den Sensoren,
|
||||
ein Topic-Namensraum den Aktoren. Ein Verknüpfungs-Layer abonniert die
|
||||
Sensor-Namensräume, und postet in den Aktor-Namensräumen. Klartext
|
||||
Topics erlauben z.B. auf einem Bedienpanel lesbare Logs anzuzeigen.
|
||||
(vgl.:
|
||||
[Bamberg](https://www.hackerspace-bamberg.de/Space_Automation))
|
||||
|
||||
~~(Ein besonderer Topic-namensraum ist *Device Presence Control*. Hier
|
||||
können kritische Nodes wie z.B. Einbruchssensoren etc. zyklisch ihre
|
||||
Funktionsfähikeit melden)~~ Ist in MQTT schon eingebaut
|
||||
|
||||
## Raumnamen
|
||||
|
||||
- `lounge` (Sofaecke, ...)
|
||||
- `work_el` (Elektronikwerkstatt, Netzwerkschrank, ...)
|
||||
- `work_mech` (Mechanikwerkstatt, Fräsraum, ...)
|
||||
- `raum4` (Beamer, Regalreihe, Workshops, ...)
|
||||
- `kitchen` (Küche, Besteck, Dusche, ...)
|
||||
- `hall` (Flur, Ofen, Geschirr, ...)
|
||||
- `restroom` (Toiletten, Reinigungsmittel, ...)
|
||||
- `cellar` (Ebenerdiger "Keller", Getränkelager, ...)
|
||||
- `entrance_front` (Gelbe Eingangstür, Südwestseite, Klingel, Abstellgleis, ...)
|
||||
- `entrance_back` (Orange Eingangstür, Nordortseite, Hof, Pennertonne, ...)
|
||||
- `all` (Spezialfall für Sensoren/Aktoren die in allen Räumen gleich
|
||||
sind, z.B. `sensor/audio/all/mpd`)
|
||||
|
||||
## Beispiel Topics
|
||||
|
||||
- `sensors/`
|
||||
- `lounge/`
|
||||
- `light_state`
|
||||
- `window_state`
|
||||
- `work_el/`
|
||||
- `door_state`
|
||||
- `light_state`
|
||||
- `soldering_iron_state`
|
||||
- `work_mech/`
|
||||
- `light_state`
|
||||
- `window_state`
|
||||
- `kitchen/`
|
||||
- `light_state`
|
||||
- `hall/`
|
||||
- `light_state`
|
||||
- `restroom/`
|
||||
- `light_state`
|
||||
- `smell_state`
|
||||
- `toilet_flush`
|
||||
- `urinal_flush`
|
||||
- `cellar/`
|
||||
- `drinks_crate_counts`
|
||||
- `drinks_scale_measurements_metric`
|
||||
- `drinks_scale_measurements_raw`
|
||||
- `light_state`
|
||||
- `entrance_front/`
|
||||
- `door_state`
|
||||
- `entrance_back/`
|
||||
- `door_state`
|
||||
- `all/`
|
||||
- `music_info`
|
||||
- `actors/`
|
||||
- `lounge/`
|
||||
- `light_state`
|
||||
- `window_state`
|
||||
- `work_el/`
|
||||
- `light_state`
|
||||
- `work_mech/`
|
||||
- `light_state`
|
||||
- `window_state`
|
||||
- `raum4/`
|
||||
- `light_state`
|
||||
- `window_state`
|
||||
- `kitchen/`
|
||||
- `light_state`
|
||||
- `window_state`
|
||||
- `hall/`
|
||||
- `light_state`
|
||||
- `window_state`
|
||||
- `restroom/`
|
||||
- `light_state`
|
||||
- `toilet_flush`
|
||||
- `urinal_flush`
|
||||
- `cellar/`
|
||||
- `light_state`
|
||||
- `entrance_front/`
|
||||
- `entrance_back/`
|
||||
- `all/`
|
||||
- `music_next_track`
|
||||
- `music_previous_track`
|
||||
- `music_play_pause`
|
||||
- `music_volume_up`
|
||||
- `music_volume_down`
|
||||
|
||||
## Sammlung möglicher Sensoren
|
||||
|
||||
### Mit Schaltern zu realisieren
|
||||
|
||||
- Dachluke Lounge und Küche
|
||||
- Fenster in den einzelnen Räumen (Einfachversion: Schalter in Reihe für Fenster auf / zu).
|
||||
Erfordert dann statt Umschalter eine Kette aus Öffnern + Pullup-Widerstand
|
||||
- Mechanik-Werkstatt
|
||||
- Lounge
|
||||
- Raum 4
|
||||
- Tür Raum 2 (E-Werkstatt / Haupteingang), Erfassung Verriegelungsstatus. Speziell: Sowohl
|
||||
Motorschloß-Riegel als auch Abus-Knebelschloß-Riegel müssen überwacht werden
|
||||
- Tür Raum 4, Erfassung Schließriegel (Öffner gegen Wechsler tauschen)
|
||||
- Kühlschranktür
|
||||
- Klopapierlager (Spender mit senkrechtem Rollenstapel, vorletzte Rolle => Sensorsignal)
|
||||
- Klo besetzt / frei
|
||||
- Außentüren zugezogen (schwierig wegen abgeranzter Mechanik)
|
||||
- Klingelschalter (Ersatz für ISM - Funkklingeln) - ermöglicht
|
||||
automatisches Türöffnen wenn Space auf
|
||||
|
||||
### Besondere Sensoren
|
||||
|
||||
- Bewegungsmelder (Versorgung aus Akku sollte gehen)
|
||||
- Der über dem Kücheneingang
|
||||
- Innenräume im Space?
|
||||
- Wasseralarm (Am Fenster oder auf dem Boden?)
|
||||
- Temperatur in den einzelnen Räumen
|
||||
- In Raummitte
|
||||
- Auf dem Fensterbrett (Detektion offener Fenster zusätzlich zum Fenstersensor?)
|
||||
- Herd / Pizzaofen
|
||||
- Anschluss an Kontrollampe, also Erfassung ob an / aus
|
||||
- Stromerfassung über Wandler / Shunt?
|
||||
- Lötstationen
|
||||
|
||||
## Sammlung möglicher Aktoren
|
||||
|
||||
- 230 V - Lasten (China Relaisplatinen, günstiger 433 MHz Gateway auf
|
||||
Funksteckdosen, spart ausserdem Aufwand für Berührschutz)
|
||||
- Türöffner unten (Relais wie GSM Schloss)
|
||||
- Audio (MPD Ansteuerung)
|
||||
- flipdots
|
||||
- Lüftung
|
||||
- Vorhandener Lüfter im Klo
|
||||
- Motoren an den Dachluken
|
||||
- flipdot - Leuchtkasten vor der M-Werkstatt
|
||||
- Posting im IRC
|
||||
- Mail (Vor allem bei niedrigem Batteriestand wichtig)
|
32
iot/netzwerk.md
Normal file
32
iot/netzwerk.md
Normal file
|
@ -0,0 +1,32 @@
|
|||
+++
|
||||
title = "IoT: Netzwerk"
|
||||
+++
|
||||
|
||||
- Subnetz: 192.168.42.0/24
|
||||
- Gateway: 192.168.42.254
|
||||
- DHCP-Range: .100 - 250
|
||||
- SSID: security-by-iod
|
||||
- Key: \<siehe Forum\>
|
||||
|
||||
<!--
|
||||
## Statische IP-Adressen
|
||||
|
||||
muss \< .100 \|\|IP \|\|ESP-ID = MAC\|\|Geraet \|\|Ort \|\|Bemerkung
|
||||
\|\|Verantwortlicher \|\| \|\|192.168.42.1 \|\| \|\|iod-cellar-lede
|
||||
\|\|Raum hinter oranger Tür \|\| \|\|feliks \|\| \|\|192.168.42.10 \|\|
|
||||
\|\|sensor/door/test \|\|Lounge neben Tür \|\| \|\|typ_o \|\|
|
||||
\|\|192.168.42.11 \|\| \|\|sensor/button/test \|\|Lounge neben Tür \|\|
|
||||
\|\|typ_o \|\| \|\|192.168.42.12\|\|2c:3a:e8:27:3b:a8\|\| \|\| \|\|
|
||||
\|\|typ_o\|\| \|\|192.168.42.13\|\|60:01:94:49:de:4e\|\| \|\| \|\|
|
||||
\|\|typ_o\|\| \|\|192.168.42.14\|\|60:01:94:49:e4:98\|\| \|\| \|\|
|
||||
\|\|typ_o\|\| \|\|192.168.42.15\|\|2c:3a:e8:27:3c:1f\|\| \|\| \|\|
|
||||
\|\|typ_o\|\| \|\|192.168.42.16\|\|2c:3a:e8:27:44:01\|\| \|\| \|\|
|
||||
\|\|typ_o\|\| \|\|192.168.42.17\|\|a0:20:a6:10:6e:17\|\| \|\| \|\|
|
||||
\|\|typ_o\|\| \|\|192.168.42.18\|\|60:01:94:49:e1:4b\|\| \|\| \|\|
|
||||
\|\|typ_o\|\| \|\|192.168.42.19\|\|a0:20:a6:10:6e:18\|\| \|\| \|\|
|
||||
\|\|typ_o\|\| \|\|192.168.42.20\|\|60:01:94:49:d9:40\|\| \|\| \|\|
|
||||
\|\|typ_o\|\| \|\|192.168.42.21\|\|a0:20:a6:10:6e:03\|\| \|\| \|\|
|
||||
\|\|typ_o\|\| \|\|192.168.42.22\|\| \|\| Sonoff \|\| M-Werkstatt \|\|
|
||||
\|\|malled \|\| \|\| \|\| \|\| \|\| \|\| \|\| \|\| \|\| \|\| \|\| \|\|
|
||||
\|\| \|\| \|\|
|
||||
-->
|
51
iot/nodes.md
Normal file
51
iot/nodes.md
Normal file
|
@ -0,0 +1,51 @@
|
|||
+++
|
||||
title = "IoT: Nodes"
|
||||
+++
|
||||
|
||||
Nodes sind alle Teilnehmer am IoT Netz.
|
||||
|
||||
## Sechseck-Lampe
|
||||
|
||||
Basiert auf der [WS2812FX
|
||||
Lib](https://github.com/kitesurfer1404/WS2812FX).
|
||||
|
||||
- Node subscribed Topic: actors/misc/honeycomb0
|
||||
- Funktionen
|
||||
- mode \[0..46\]
|
||||
- speed \[0..255\]
|
||||
- brightness \[0..255\]
|
||||
- color \[#rrggbb\] Hex Werte
|
||||
|
||||
Nette modes:
|
||||
|
||||
- FX_MODE_FIREWORKS, **mode 42, speed 255**
|
||||
- FX_MODE_STROBE_RAINBOW, **mode 24, speed 190**
|
||||
- FX_MODE_HYPER_SPARKLE,**mode 22, speed 0**
|
||||
- FX_MODE_FADE, **mode 12, speed 20**
|
||||
- X_MODE_RAINBOW_CYCLE, **mode 9, speed 0**
|
||||
- FX_MODE_STATIC **mode 0**
|
||||
|
||||
## Panel
|
||||
|
||||
(Neben der Lounge - Tür, 5 LEDs als Demo für ein
|
||||
späteres Status - Panel
|
||||
|
||||
- Node subscribed Topic: actors/lounge/panel
|
||||
- Funktionen: \[n m\]
|
||||
- n = LED \[0..4\]
|
||||
- m = Zustand \[0..1\]
|
||||
|
||||
## Strassenlicht
|
||||
|
||||
- Topic: actors/work_mech/stolperlicht/cmnd/POWER
|
||||
- Nachricht
|
||||
- 0 -\> Aus
|
||||
- 1 -\> Ein
|
||||
|
||||
## Sensor
|
||||
|
||||
(Neben der Lounge - Tür, Rollen-Mikroschalter als Demo für späteren
|
||||
Fenstersensor o.ä.)
|
||||
|
||||
- Topic:
|
||||
- Funktionen:
|
87
iot/software.md
Normal file
87
iot/software.md
Normal file
|
@ -0,0 +1,87 @@
|
|||
+++
|
||||
title = "IoT: Software"
|
||||
+++
|
||||
|
||||
Das "Internet of Dings" Setup im flipdot gruppiert sich um einen
|
||||
zentralen MQTT Server, den Broker. Es gibt ein benutzerfreundliches
|
||||
Web-Fontend und Schnittstellen in den IRC und zur Space API.
|
||||
|
||||
## Fertige Software
|
||||
|
||||
### Mosquitto
|
||||
|
||||
Zentraler MQTT Broker
|
||||
|
||||
- Läuft auf power-pi.fd
|
||||
|
||||
### NodeRed
|
||||
|
||||
Stell das GUI für die wesentlichen Funktionen des Space bereit.
|
||||
Einfaches Web-Frontend, einfache "Programmierung" der Funktionen in
|
||||
Form einer Flow basierten Verdrahtung.
|
||||
|
||||
- Läuft auf power-pi.fd
|
||||
|
||||
## Unser selbst geschriebener Kram
|
||||
|
||||
### iod-esp8266-sensor
|
||||
|
||||
Software für selbst gebaustelte Sensoren. Sendet Status ins Netz,
|
||||
nachdem der ESP von einem Attiny aufgeweckt wurde (siehe auch
|
||||
iod-nodes).
|
||||
|
||||
- Repo: <https://github.com/flipdot/iot-esp8266-sensor>
|
||||
- Verwendete Technik: C++, Arduino
|
||||
- Läuft auf den einzelnen Sensor-Platinen
|
||||
|
||||
### iod-nodes
|
||||
|
||||
Software für selbst gebaustelte Sensoren. Wartet im Standby, bis
|
||||
Schalter An oder Aus geht. Schaltet dann den größeren, stromhungrigeren,
|
||||
WLAN-fähigen ESP8266 ein um die Statusänderung zu
|
||||
übermitteln. Nimmt schließlich nach der Übertragung den Strom wieder weg
|
||||
und legt sich schlafen.
|
||||
|
||||
- Repo: <https://github.com/flipdot/iod-nodes>
|
||||
- Verwendete Technik: C++, Arduino
|
||||
- Läuft auf den einzelnen Sensor-Platinen
|
||||
|
||||
### drinks-storage-mqtt
|
||||
|
||||
Wertet Messungen von Getränkewaagen aus.
|
||||
|
||||
- Repo: <https://github.com/flipdot/drinks-storage-mqtt>
|
||||
- Verwendete Technik: Python 3
|
||||
|
||||
### drinks-storage-state
|
||||
|
||||
Führt Waagen-Messungen durch und schickt die Ergebnisse ins Netz.
|
||||
|
||||
- Repo: <https://github.com/flipdot/drinks-storage-state>
|
||||
- Verwendete Technik: C++, platform.io
|
||||
|
||||
### flipbot
|
||||
|
||||
Unser IRC-Bot. Seit einer Weile auch ans IoD-Netz angeschlossen. Lauscht
|
||||
auf `actors/all/flipbot` und leitet alle Nachrichten von dort in
|
||||
unseren IRC-Channel weiter.
|
||||
|
||||
- Repo: <https://github.com/flipdot/sopel-modules>
|
||||
- Verwendete Technik: Python (FIXME: Version?)
|
||||
|
||||
### iod-api-bridge
|
||||
|
||||
Sammelt Daten im MQTT-Netz und schickt sie zu
|
||||
<https://api.flipdot.org/>.
|
||||
|
||||
- Repo: <https://github.com/flipdot/iod-api-bridge>
|
||||
- Verwendete Technik: Python 3
|
||||
|
||||
### iod-error-spam
|
||||
|
||||
Empfängt Fehlermeldungen anderer MQTT-Teilnehmer und spammt damit den
|
||||
IRC zu (via sopel). Jetzt auch mit Rate Limiting! Zusätzlich bald auch
|
||||
persistente, einfacher zu durchsuchende Logs.
|
||||
|
||||
- Repo: <https://github.com/flipdot/iod-error-spam>
|
||||
- Verwendete Technik: Rust
|
84
iot/todo.md
Normal file
84
iot/todo.md
Normal file
|
@ -0,0 +1,84 @@
|
|||
+++
|
||||
title = "IoT: ToDo"
|
||||
+++
|
||||
|
||||
## Mech
|
||||
|
||||
- ~~(Leitungs-Einlaß für Sensor auf Gehäuseunterseite verlegen)~~
|
||||
- ~~(Zugang zum Wifi-Manager-Jumper auf Gehäuse Unterseite
|
||||
schaffen)~~
|
||||
- ~~(Alternative Deckelmontage ohne Magnete? (Ggf 2 x M3 ins
|
||||
Holz))~~
|
||||
- Schild (Sensorname, Topic, IP, Batteriewechseldatum)
|
||||
|
||||
## Elektro
|
||||
|
||||
- Stromverbrauch Messen bei 0.4
|
||||
- Platinenvariante (bzw. Rework-Anleitung) für Betrieb ohne Attiny
|
||||
machen - ESP hält sich Vcc über MOSFET selber
|
||||
- Platinenvariante für Wemos ESP Platine machen - Schottky raus, mehr
|
||||
Vcc -\> LDO auf dem Wemos
|
||||
- [Variante mit 6 fach Schmitt
|
||||
Trigger](https://github.com/tstoegi/microWakeupper).
|
||||
Ruhestrom für den CMOS Chip 20nA.
|
||||
([Datasheet](http://www.ti.com/lit/ds/symlink/cd40106b.pdf))
|
||||
|
||||
## Software
|
||||
|
||||
- Modul, das Fehlermeldungen der anderen MQTT-Teilnehmer abfängt und
|
||||
in IRC postet / irgendwem als Email schickt
|
||||
- Niedriger Batteriestand **(must)**
|
||||
- Schlechte Feldstärke / häufige Abrüche (nice to have)
|
||||
- Ausbleiben zyklischer I\'m alive Meldungen kritischer
|
||||
MQTT-Teilnehmer (für Knoten, die dauernd online sind / sein
|
||||
müssen, dazu sinnvoll: Topic nur für diese Meldungen)
|
||||
- Modul, das die Meldungen kritischer MQTT-Teilnehmer auswertet und
|
||||
auf dem Leuchtmelder-Tableau an der Ausgangstür anzeigt (Also
|
||||
Dachluken, Fenster, Raum4, etc.) **(must)**
|
||||
- Lesen kritischer MQTT-Teilnehmer-Topics
|
||||
- Lesen des Space Status
|
||||
- Wenn Space Status von offen -\> geschlossen wechselt, und
|
||||
kritische Nodes noch offene Türen etc. melden, lauter Alarm über
|
||||
\$Gerät (Leuchtmelder-Tableau) **(must)**
|
||||
- Modul, das Verknüpfungen realisieren kann
|
||||
- Klingelknopf außen bewirkt Türöffnung wenn Spacestatus = offen
|
||||
(nice to have)
|
||||
- Sensor Klopapier alle bewirkt Bestellung bei Amazon (cherz) ...
|
||||
Aber Eintrag in eine Einkaufsliste?! (nice to have)
|
||||
- Modul, das Steuerung von Aktoren im IoD Netz von außen sicher
|
||||
realisiert. Aktoren:
|
||||
- Heizung
|
||||
- Modul, das Daten aus dem MQTT Netz nach Grafana liefert. Was soll
|
||||
aufgezeichnet werden?
|
||||
([Liste](http://github.com/freifunkks/salt-conf/blob/master/state/graphite/fd-spacestats.py#L44-L92))
|
||||
|
||||
### Attiny
|
||||
|
||||
- ~~(Interrupt Glitch abstellen)~~ Waren tatsächlich mal wieder zu
|
||||
wenig Angstkondensatoren.
|
||||
- ~~(Alle unnötinen Peripherials auf dem Chip abschalten)~~
|
||||
[1](https://playground.arduino.cc/Learning/ArduinoSleepCode)
|
||||
[2](http://www.arduino-hausautomation.de/2014/emils-ampel-attiny45-im-tiefschlaf/)
|
||||
[3Strombedarf](https://learn.sparkfun.com/tutorials/reducing-arduino-power-consumption)
|
||||
entspricht jetzt den Specs aus dem Datasheet.
|
||||
|
||||
### ESP
|
||||
|
||||
- Codevariante für Betrieb ohne Attiny machen - ESP hält sich Vcc über
|
||||
MOSFET selber
|
||||
- Prüfen, welchen Unterschied die interne Vcc Messung im ESP mit und
|
||||
ohne Radio macht
|
||||
- ~~(MQTT Client bauen, der Topics abonnieren kann, und die Inhalte
|
||||
auf WS2811 LED String anzeigt (für Display an der Tür) )~~
|
||||
|
||||
### GetränkeKistenStatistik - Mikrocontroller-Mess-Software (drinks-storage-state)
|
||||
|
||||
- WebGUI
|
||||
- ESP ID \[r\]
|
||||
- Netzwerk-SSID, Passwort \[rw\]
|
||||
- MQTT host \[rw\]
|
||||
|
||||
### GetränkeKistenStatistik - Messwert-KistenAnzahl-Konvertierung (drinks-storage-mqtt)
|
||||
|
||||
- crate_count per Getränke-Art zählen, nicht per Stapel
|
||||
- Aktuell gibt es keine Getränkesorten, für die mehrere Stapel benötigt werden
|
Loading…
Add table
Add a link
Reference in a new issue