Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Sotray

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    S
    • Profile
    • Following 0
    • Followers 0
    • Topics 0
    • Posts 3
    • Best 0
    • Groups 0

    Sotray

    @Sotray

    0
    Reputation
    7
    Profile views
    3
    Posts
    0
    Followers
    0
    Following
    Joined Last Online

    Sotray Follow

    Latest posts made by Sotray

    • RE: Siedle Klingel / Türöffner mit ESP8266 und MQTT

      Genau - es sah mir fast "zu" einfach aus 😛

      Daher hatte ich auch nachgefragt, ob ich ggf. ein Relais o.Ä. zum Schalten nehmen sollte, da Eisbaeeer sicherlich bessere Kenntnis im elektrotechnischen Bereich hat.

      Den ESP8266 habe ich mit MicroPython geflasht: https://docs.micropython.org/en/latest/ … intro.html

      Da ich den Wemos D1 nicht genau kenne, kann ich dir leider keine präzisen Antworten geben, aber mein MQTT Skript, welches auf dem ESP8266 läuft sieht wie folgt aus:

      from umqtt.simple import MQTTClient
      from machine import Pin
      import machine
      import ubinascii
      import time
      
      #Config Pin4 as Output for doorOpener
      pin = machine.Pin(4, machine.Pin.OUT)
      pin.off() 
      
      # Modify below section as required
      CONFIG = {
           # Configuration details of the MQTT broker
           "MQTT_BROKER": "<addresse>",
           "USER": "<username>",
           "PASSWORD": "<password>",
           "PORT": <port>,
           "TOPIC": b"doorOpener",
           # unique identifier of the chip
           "CLIENT_ID": b"esp8266_" + ubinascii.hexlify(machine.unique_id())
      }
      
      # Method to act based on message received   
      def onMessage(topic, msg):
          print("Topic: %s, Message: %s" % (topic, msg))
      
          if msg == b"on":
              pin.on()
              time.sleep(1)
              pin.off()
      
      def listen():
          #Create an instance of MQTTClient 
          client = MQTTClient(CONFIG['CLIENT_ID'], CONFIG['MQTT_BROKER'], user=CONFIG['USER'], password=CONFIG['PASSWORD'], port=CONFIG['PORT'])
          # Attach call back handler to be called on receiving messages
          client.set_callback(onMessage)
          client.connect()
          client.publish("test", "ESP8266 is Connected")
          client.subscribe(CONFIG['TOPIC'])
          print("ESP8266 is Connected to %s and subscribed to %s topic" % (CONFIG['MQTT_BROKER'], CONFIG['TOPIC']))
      
          try:
              while True:
                  msg = client.wait_msg()
                  #msg = (client.check_msg())
          finally:
              client.disconnect()  
      
      listen()</port></password></username></addresse> 
      

      Das Skript "Gerüst" findest du in der uMQTT Library description wenn ich mich recht erinner und musst es praktisch nur noch für deinen Bedarf anpassen.

      Als weiteres Skript benötigst du zum Starten die main.py, die den Microcontroller mit deinem Internet verbindet,ggf. den AccessPoint beendet und das MQTT Skript startet:

      import network
      import time
      sta_if = network.WLAN(network.STA_IF)
      
      #Connect to Wi-Fi
      if not sta_if.isconnected():
          print('connecting to network...')
          sta_if.active(True)
          sta_if.connect('<ssid>', '<password>')
          while not sta_if.isconnected():
              pass
      print('network config:', sta_if.ifconfig())
      
      #Disable Access Point
      ap_if = network.WLAN(network.AP_IF)
      ap_if.active(False)
      
      #Import MQTT script to start service
      time.sleep(1)
      import mqtt_listener</password></ssid> 
      

      Auf meinem Smartphone habe ich dann eine MQTT Dashboard App runtergeladen, ebenfalls mit cloudmqtt verbunden (siehe CONFIG Details) und publishe dort per Button die Message "on" unter dem Topic "doorOpener", welches den Pin 4 (bzw. "D2") für 1 Sekunde auf HIGH setzt.

      Das etwas geloggt wird. o.Ä. wenn jemand klingelt habe ich bei mir nicht realisiert.

      Eisbaeeer hat oben eine Anleitung geschrieben wie es funktionieren kann, wenn du bspw. über einen Optokoppler das Signal am Reed Relais abfängst und an einen Pin der als Input konfiguriert ist weitergibst.

      Dann könntest du ja bspw. den Timestamp loggen und weisst so, wiespät jemand bei dir zuhause war 🙂

      VG!

      posted in Praktische Anwendungen (Showcase)
      S
      Sotray
    • RE: Siedle Klingel / Türöffner mit ESP8266 und MQTT

      Hi Slemy,

      also ich bin wie folgt vorgegangen:

      Ich habe mir die Platine angeschaut und festgestellt, dass das Drücken des Tasters letztendlich den Eingang "1" vom Klemmblock (GND) mit dem oberen Bügelkontakt des TÖ brückt. Dann habe ich zum Testen die beiden Kontakte per Draht bzw. Kabel gebrückt und der TÖ wurde betätigt (ich muss dazu sagen, dass ich relativ nah an der Haustüre wohne und daher "hören" kann ob es funktioniert oder nicht :P)

      Nachdem das in der Theorie funktioniert hat, muss ich also nur noch den Schalter per Logik realisieren können -> Transistor als Schalter.

      Ich habe dir mal in LTSpice eine Schaltung aufgezeichnet, aber keine Garantie 😄

      Der ESP8266 wird zusätzlich noch mit 5V versorgt, so wie es Eisbaeeer auch erklärt hat - nur habe ich dies nicht eingezeichnet, da ich Ewigkeiten nicht mehr mit LTSpice gearbeitet habe 😄

      An deiner Stelle würde ich also schauen, welche Kontakte gebrückt werden müssen um den TÖ zu betätigen.

      Du kannst natürlich auch "einfach" den oberen und unteren Bügelkontakt des TÖ auf der Bestückungsseite über einen Transistor verbinden, jedoch ist das dann ganz schön gepfuscht 😄

      Bei Fragen meld' dich einfach!

      LG
      8530_schaltungt_.png

      posted in Praktische Anwendungen (Showcase)
      S
      Sotray
    • RE: Siedle Klingel / Türöffner mit ESP8266 und MQTT

      Hi zusammen!

      Mal eine kurze Frage:

      Warum empfiehlst du ein Relaismodul zum Öffnen der Tür?

      Ich habe die Türöffnung realisiert, indem ich einen NPN Transistor als Schalter nutze.

      Also Collector an den Pin vom oberen Bügelkontakt, Emitter an die Klemme 1 vom Klemmblock und der ESP8266 schaltet über einen Basisvorwiderstand durch.

      Ich habe mich natürlich auch gefragt, ob der Transistor die zu schaltende Spannung/Strom aushält, aber "probieren geht über studieren" und noch funktioniert es 😄

      Daher die Frage:

      Ist das Relais "sicherer" in der Benutzung oder gibt es andere Vor-/Nachteile?

      Viele Grüße & schönen Urlaub noch!

      posted in Praktische Anwendungen (Showcase)
      S
      Sotray
    Community
    Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
    The ioBroker Community 2014-2023
    logo