INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.

Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
ESP8266 RFM12 MCP23S17 Experimente
22.02.2016, 08:44
Beitrag #9
RE: ESP8266 RFM12 MCP23S17 Experimente
Hallo Michael,

(21.02.2016 22:15)mwyraz schrieb:  das ist schon spannend, auf welche Ideen man kommt, wenn man so ein kleines WLAN-Gadget zur Hand hat - oder wie es so schön heißt, "mit nem Hammer in der Hand sieht jedes Problem wie ein Nagel aus" ;-) Schade, dass die Wochenenden so kurz sind...

Kann ich nur zustimmen, im Moment sind es alles noch Experimente, was möglich ist. SmartHome in meiner Mietwohnung ist uninteressant für mich, ein paar Einzelideen gibt es aber schon.

(21.02.2016 22:15)mwyraz schrieb:  MQTT muss ich mir mal anschauen, gibt's da sowas wie ACK/Requeue (beim UDP geht gelegentlich mal was verloren)? Welchen Message-Broker setzt Du ein?

Broker ist Mosquitto auf einem RasberryPi, der sowieso rumlag. Mosquitto gibt es auch für Windows.
ACK/Requeue geht, schau es Dir Dir mal an.
Für Arduino gibt es den PubSubClient, für den ESP direkt gibt es auch noch einen CLient, der lann auch SSL wenn nötig. Habe ich mir aber noch nicht angesehen.

(21.02.2016 22:15)mwyraz schrieb:  Das mit der Glimmröhre kannte ich noch nicht. Laut Google läuft die mit 70-250V - wo kommen die in der Schaltung her?

Links oben ist der StepUp 12V-> 180V mit einem MAX1771. Ist der einzige Wandler mit dem MAX, den ich gebaut habe, der MAX ist etwas sensibel.
Sonst nehme ich da MC34063 mit MosFet und Transistrotreiber.

Steckernetzteile liegen hier auch genug rum...

Gruß aus Berlin
Michael
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
23.02.2016, 21:02 (Dieser Beitrag wurde zuletzt bearbeitet: 23.02.2016 21:05 von amithlon.)
Beitrag #10
RE: ESP8266 RFM12 MCP23S17 Experimente
Hallo,

so, jetzt noch schnell eine "praktische" Anwendung:
Da ich manchmal vergesse, das Licht im Bad auszumachen, durfte ein ESP8266 mal zum Test "dran glauben".

   

Die Bestandteile vorbereitet: links der China-StepDown mit UF4007 und 47µ LowESR-Elko am Eingang, da die Versorgung paralle zur 12V Halogen am elektronischen Trafo erfolgen soll. Am Ausgang auch 47µ, damit hat der ESP8266 keine Probleme bei seinen Stromspitzen.
Rechts der ESP8266-07 mit Leitungen für den Programmieradapter. 4,7k zwischen GPIO15 und GND, Brücke EN mit Vcc.
Der Lastwiderstand ist zum Einstellen der 3,3V des Reglers, ich sprenge ungern ESPs.

   

Zusammengesteckt mit meinem Programmieradapter, dieser enthält die NodeMCU-Logik zum Ansteuern von Reset und GPIO0 beim Programmieren aus der Arduino-IDE und den 3,3V-Spannungsregler. Das FTDI-Modul liefert die 5V und RX/TX sowie DTR und RTS.
Die erste Programmierung muß logischerweise seriell erfolgen, da OTA mit drauf ist, können Änderungen dann auch per WLAN erfolgen.

   

Einbaufertig. Am Kabel hängt ein Steckverbinder für den Halogen-Trafo, der hatte noch einen Anschluß frei.

   

Angezeigt wird im Moment auf einer alten Pearl-Laufschrift, die hat auch einen ESP8266 bekommen und zeigt als MQTT-Client einfach nur Texte an.

Beim Licht einschalten meldet sich der ESP8266 beim Broker an, schikt dann alle 30s "Licht im Bad ist an!". Es wird ein "letzter Wille" hinterlegt, spätestens 15s (keep alive Zeit) nach dem Licht ausschalten schicht der Broker also "Licht ist aus".

Ich hänge den Sketch mal rein:
Code:
#include <ESP8266WiFi.h>
#include <WiFiUdp.h>
#include <ArduinoOTA.h>
#include <PubSubClient.h>

#define HOSTNAME "OTA-BAD"                   // Hostename. The setup function adds the Chip ID at the end.

// Update these with values suitable for your network.
const char* ssid = "xxxxxxxx";
const char* password = "xxxxxxx";
const char* mqtt_server = "192.168.0.99";

void WiFiStart(void);

// MQTT
unsigned long mqttStartSecond = 0;
unsigned long mqttSecond = 5000;

unsigned long badStartSecond = 0;
unsigned long badSecond = 30000;

WiFiClient espClient;

PubSubClient mqttclient(mqtt_server,1883,0,espClient); // callback

void setup()
{
  // Set Hostname.
  String hostname(HOSTNAME);
  WiFi.hostname(hostname);

  // inital connect
  WiFi.mode(WIFI_STA);
  WiFiStart();

  // Start OTA server.
  ArduinoOTA.setHostname((const char *)hostname.c_str());
  ArduinoOTA.begin();

  // Start MQTT server.
  mqttStartSecond = millis();
}

void loop()
{
  // check if WLAN is connected
  if (WiFi.status() != WL_CONNECTED)
  {
    WiFiStart();
  }

  ArduinoOTA.handle();                      // Handle OTA server.

  if ((!mqttclient.connected()) && (millis() > (mqttStartSecond + mqttSecond)))
  {
    mqttclient.connect("ESP-Bad","Badlicht",1,false,"Licht ist aus");   // clientID,willTopic,willQoS,willRetain,willMessage
    if (!mqttclient.connected())
    {
      mqttStartSecond = millis();      // wenn nicht connected neue aktuelle ms merken und wieder 5s warten
    }
    else
    {
      mqttclient.publish("Badlicht", "Licht im Bad an!");
    }
  }  

  if (millis() > badStartSecond + badSecond)
  {
      mqttclient.publish("Badlicht", "Licht im Bad an!");
      badStartSecond = millis();    
  }
  
  mqttclient.loop();
}

// ------------------------------------------------------------------------

void WiFiStart()
{
  WiFi.begin(ssid, password);

  while (WiFi.status() != WL_CONNECTED)
  {
    delay(500);
  }
}

// ------------------------------------------------------------------------

PS: die Laufschrift wird sicher nicht dort liegenbleiben, vorerst darf sie das aber...

Gruß aus Berlin
Michael
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
28.02.2016, 08:25
Beitrag #11
RE: ESP8266 RFM12 MCP23S17 Experimente
Hallo,

ich habe inzwischen mal angefangen, meine uralte Homepage um die ESP8266-Geschichten zu erweitern.

http://www.avr.roehres-home.de/esp8266/index.html

Gruß aus Berlin
Michael
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
13.03.2016, 21:01
Beitrag #12
RE: ESP8266 RFM12 MCP23S17 Experimente
Hallo,

auch wenn es vermutlich auf wenig Interesse stößt:

Steckbrettaufbau eine MP3-Streaming-Clients mit ESP8266, STA013 MP3-Decoder und CS4331 DAC, Die senkrechte Leiterplatte ist ein Kofhörerverstärker, den ich vor Jahren mal für schnelle Test zusammenglötet habe.

   

Zur Zeit läuft heir ein 80er Jahre Stream aus dem Web, eigentlich soll er dann meinen ICECast-Stream vom Raspberry spielen, macht er auch schon, der Radio-Sender war nur ein Test, aber die Musik gefällt mir eben.

Bufferverwaltung ist noch nicht ideal, MetaTAGs fehlen noch, kann er dann als MQTT-Client an meine Laufschrift schicken...

Gruß aus Berlin
Michael
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
14.03.2016, 07:40 (Dieser Beitrag wurde zuletzt bearbeitet: 14.03.2016 07:42 von mwyraz.)
Beitrag #13
RE: ESP8266 RFM12 MCP23S17 Experimente
Hallo Michael,

wie es der Zufall will habe ich vor kurzem mit einem Kollegen über ein ähnliches Projekt gesprochen - ich werd's gleich mal weiterleiten :-)

EDIT: ich selbst hab sowas mit nem Raspi der 1. Generation am laufen - offenbar der totale Hardware-overkill aber ich kann's mit dem Handy steuern ;-)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
14.03.2016, 12:04
Beitrag #14
RE: ESP8266 RFM12 MCP23S17 Experimente
Hallo,

(14.03.2016 07:40)mwyraz schrieb:  wie es der Zufall will habe ich vor kurzem mit einem Kollegen über ein ähnliches Projekt gesprochen - ich werd's gleich mal weiterleiten :-)
Mach das. :-)

(14.03.2016 07:40)mwyraz schrieb:  EDIT: ich selbst hab sowas mit nem Raspi der 1. Generation am laufen - offenbar der totale Hardware-overkill aber ich kann's mit dem Handy steuern ;-)

Mein Gedanke ist: der RaspI streamt einen internen IceCast-Stream, einfach einen Ordner mit Musik.
Der ESP als "zu Hause Ghettoblaster" wird nur eingeschaltet und spielt diesen Stream. Eigentlich keine Bedienelemente, eben vielleicht ein Display zur Titelanzeige. Evtl. noch eine Skip-Taste die dem Raspi-MPD per MQTT sagt, daß er den nächsten Titel starten soll, falls mir der aktuelle auf die Nerven geht.
In den MPD-Ordner kopiere ich einfach per Samba ein Sammelsurium Titel rein, die ich als "Dudelmusik" gerne höre, die werden endlos gestreamt.
Auf den RasPi kommt dann noch ein bei Änderungen im Musikordner gestartetes Skript, daß die Playliste für den MPD aktualisiert.
Keine Verwaltung usw.

Gruß aus Berlin
Michael
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste