Tag 13: Alarmanlage mit Push Nachrichten

Bei dem Projekt des heutigen Tages handelt es sich um eine einfache, stille Alarmanlage mit Passwort-Eingabe zum Resetten des Alarms. Damit man von dem stillen Alarm überhaupt etwas mitbekommt, sendet das Board eine Push-Nachricht zum Smartphone. Der sich hinter dem heutigen Türchen befindenden Tiltsensor setzen wir hier als Bewegungssensor ein. Er kann über Erschütterungen informieren und somit Bescheid geben, wenn jemand das NanoESP-Board kippt.

Aufbau mit Tiltsensor

Aufbau mit Tiltsensor


blynk_tag1313

Die Blynk-Oberfläche des heutigen Projekts ist recht simpel gehalten. Es gibt ein Terminal über das wichtige Informationen geliefert werden. Gleichzeitig dient das Terminal zur Eingabe des Passworts. Das Passwort selbst stellen Sie im Programm ein. Wenn Sie nichts eingeben haben lautet das Password einfach „password“. Es gibt noch ein weiteres Element, nämlich das Push-Widget. Über dieses werden Push-Nachrichten direkt an das Handy gesendet. Push bedeutet, dass die Nachricht direkt als Meldung auf Ihrem Smartphone erscheint. In dem Widget können Sie auswählen zwischen Normal oder High Priority. Bei High Priority (Hohe Priorität) wird die Nachricht sofort angezeigt, es wird aber auch deutlich mehr Akku verbraucht. Wenn nun jemand Ihren NanoESP entwenden möchte, bekommen Sie direkt eine Meldung auf das Handy.

Jemand hat am Board gewackelt

Jemand hat am Board gewackelt

30 Kommentare

  1. Yogi

    Sorry, etwas spät dran. Ich bekomme die Fehlermeldung ‚blinkAlarm‘ was not declared in this scope. Was kann hier die Ursache sein?

    1. Yogi

      Hab das Problem selber gefunden. Die letzten Zeilen unten auskommentieren oder löschen und vor
      void setup()
      einfügen:

      //timer function for blinking led on alarm
      void blinkAlarm()
      {
      digitalWrite(13, !digitalRead(13));
      }

  2. Mathias

    Hi Leute,

    hinke hier ein wenig hinter her. Programm funktioniert, nur mit der Push-Nachricht hapert es (iOS System). Wenn die App geöffnet ist klappt alles wunderbar, sobald ich die App schließe bekomme ich keine Nachrichten mehr obwohl ich in der App „high priority“ und in den Mitteilungs-Einstellungen alles auf ON gesetzt hab! Jemand das gleiche Problem o. nen Lösungsvorschlag?
    DANKE schonmal im Voraus.

  3. basti

    Hallo,

    es funktioniert irgendwie nicht immer korrekt. Wenn ich das Programm geladen habe, dann blinkt die dritte LED um zu zeigen, das Alarm ausgelöst wurde – ich habe aber das Board nicht berührt. Geben ich nun das Passwort ein, kommt die Alarmmeldung und das Handy vibriert. Gleichzeitig hat die Eingabe den Alarm nicht entschärft…

  4. Conrad

    Moin.

    Funktioniert tadellos bei mir.
    Was mir noch fehlt ist ein Zeitstempel vor den Nachrichten, falls ich eine verpasse. So kann ich später nachvollziehen, wann eine Nachricht gesendet wurde.
    Mir ist trotz Google-Recherche kein Weg aufgefallen, wie es einfach gehen könnte.
    Hat jemand von Euch eine schlaue Idee?

    Gruß, Conrad

    1. Marco

      Hi,
      ich denke der einfachste Weg ist das RTC Widget von Blynk, das die Zeit vom Server erhält (mit dem man ja ohnehin schon kommuniziert).

      http://docs.blynk.cc/#widgets-other-rtc

      Mit dem in der Dokumentation verlinkten Beispiel Sketch sollte das auch einfach in ein eigenes Projekt einzubinden sein.

      1. Conrad

        Danke,

        werde ich beizeiten ausprobieren. Ich komme ja kaum nach mit dem Basteln aus dem Kalender.

        Gruß, Conrad

  5. µC-Junkie

    Ich hatte zu Beginn die Situation, mal kamen Pushnachrichten, mal kamen keine. NanoESP resetet und Blynk-App neu gestartet, dann ging es meist wieder. Dann habe ich ein bisschen in der Blynk-Docu (http://docs.blynk.cc) gestöbert und folgendes gefunden:
    Limitations :
    Maximum allowed body length is 120 symbols.
    Only 1 notification per 15 seconds is allowed
    hält man sich an die 15s-Regel, funktioniert es bei mir immer.

  6. taz

    Mein Handy zeigt keine Pushnachrichten an. Weder wenn die Blynk-App geöffnet ist und das Programm läuft. Noch wenn ich das Handy gesperrt habe.

    Das Programm selbst meldet den Alarm, ich kann das Password dann eingeben.
    Die App darf Benachrichtigungen sende, sogar wenn es auf Nicht stören steht.
    Enstellungen > Apps > Blynk > Benachrichtigungen: steht auf Wichtig (Alle blockieren: aus/ Priorität: an/ Einblenden zulasse: an/ Vertrauliche Inhalte ausblenden: aus)

    Sony Xperia Z3 Compact D5803, ohne Branding, ungerootet, alle Software aktuell, alle Updates installiert, Android 6.0.1 23.5.A.1.291.

    PS: Hab grad den Resetbutton auf der Platine gedrückt. Nach ein paar Sekunden kam eine „New Notification“.

  7. Michael2016

    Schade das ich, seit gestern, nicht mehr mitspielen kann. Da auf meinem Board die blaue OnBoard LED D3 blinkt und ich nichts hochladen oder sonst was machen kann und hier leider noch kein Hilfreicher Tipp gegeben wurde. :´-(
    50€ für die Tonne… zum kotzen. Mal sehn ob Conrad da was machen kann.

    1. Hansi

      Hast Du in der IDE schon den Port überprüft (Menü:Tools->Port->COMxx✔)? Unter Windows kommt es schon einmal vor, dass wenn man einen anderen USB Port (einen anderen Stecker) verwendet als „üblich“, die Serielle eine „neue“ COMxx Nummer bekommt. Die wird von der IDE aber nicht automatisch verwendet. Man muss die händisch anwählen (Häckchen setzen). Tut man das nicht, kann der Treiber das Board „verwirren“ und es binkt nur hektisch. Die IDE meldet bei upload-Versuch entsprechend „avrdude: ser_open(): can’t open device „\\.\COMxy“:…“

      1. Michel2016

        ja habe ich, wenn ich das Board NICHT angesteckt haben kommt folgende Auswahl

      2. Michel2016

        und wenn ich das Board anstecke kommt das hier, aber das Blinken ist immer noch da…

        1. sumero

          Hast du den Tipp von Kusmi probiert?
          Board ausschalten, also USB Kabel ausstecken
          Reset-Knopf auf Board drücken und gedrückt halten
          USB Kabel einstecken und immer noch Reset-Knopf gedrückt halten
          In Arduino-Umgebung einen (leeren) Sketch öffnen und auf „Upload“ drücken, wie gewohnt
          Warten bis in der Arduino-Umgebung die Statusmeldung „Uploading…“ erscheint
          Dann Reset-Knopf loslassen

          Kusmi musste das 2-3 mal probieren, aber dann hat es funktioniert

          Setz außerdem mal bei den Voreinstellungen den Haken bei „Ausführliche Ausgabe während:“ „Hochladen“ und poste deine auführliche Fehlermeldung nochmal.
          Am besten im Forum, dann findet man dein Problem auch wieder, sonst geht das in den Kommentaren wie du schon gemerkt hast ziemlich schnell unter.

          1. Michael2016

            Oh… ne habe ich nicht gesehen, Wo stand das??. Habe es jetzt wie beschrieben gemacht……. JUHU es hat funktioniert. Danke Jungs Ihr seit die besten :-D. Habe mal die BLINK vom Tag 2 hochgeladen jetzt blinkt es wieder im Sekundentakt.

  8. h4nc

    Wenn ich das richtige Passwort eingebe kommt folgendes:

    cmd error (sehe ich nur beim Seriellen Monitor in der Arduino Umgebung, nicht in der app)
    Login timeout

    Dann startet der nano neu und bestätigt mit:
    Device Started.(Sehe ich in der App)

    Hat noch jemand das Problem?
    Ein falsches Passwort wird übrigens erkannt und abgelehnt.

    1. Mich

      gleiches Problem – gibt es eine Lösung?

      1. Mich

        <Blynk v0.3.4: Device started

        [41312] Cmd error
        [41337] <msg 20,7,18
        [41338] Cmd skipped
        [41338] Login timeout

  9. Joshua

    I really like the course and due to my webdevelopment background I get most of the code. But it’s a shame that the code that we’re using in the projects isn’t explained line-by-line.

    All we have to do now is build a build and load pre-build code. Then we’re pretty much on our own to find out what exactly happens to the code and how it works.

    Besides that I learn a lot but it could’ve been a little bit more detailed!

    1. Athanasie

      I found in the toutorial from last year a good overview, but it´s only german and without the Blynk-Code:

      http://fkainka.de/schnellstart-mit-dem-nanoesp-fuer-arduino-neulinge/

      1. Joshua

        That indeed looks better to understand for starters! Too bad this year isn’t commented the same way.

    2. Mich

      Hallo,
      heute funktioniert es bei mir nicht. Ständig Fehlermeldungen:
      <vw

  10. Bernd

    Funktionierte auf Anhieb, cool.
    aber nach dem dritten Alarm war schluss, tat sich nichts mehr, musste statt „password“ mein Blynk initierungs password eingeben und dann ging es wieder.
    Irgendwie braucht das Ding 2 passwords: zuerst „password“ (nachdem Alarm) und dann kommt „Alarm deactivated“ was aber genau das gegenteil bedeutet (denn erst jetzt kann man wieder ’ne Meldung kriegen.
    Naja man kann sicher auch damit ’ne Sirene anschalten und dann machts mehr Sinn.

    1. Hansi

      Den Text kannst Du in Zeile 82 ändern (zB in „Alarm quittiert“).

  11. kub0185

    Bekommt man die alten leeren Pläne dervortage auch weg?
    Wie findet man raus wieviel Energie man noch hat?

    1. SilentGuy

      Projekt anklicken, dann oben Einstellungen (das sechseckige Zeichen) und dann ist ganz unten delete.

      Wenn man in nem Projekt ist und dann auf das Plus um ein neues Element hinzuzufügen sieht man in dem Menü wie viel Energie noch übrig ist.

      Blynk ist irgendwie cool aber auch ganz schön verworren…

    2. rsoldie

      Ja, den alten plan aufrufen, das sechskantsymbol anklicken und ganz unten auf das rote delete klicken. Weg isses. Bei neu erstellen brauchst du dann aber wahrscheinlich auch neue token.

  12. Möne

    Ich habe die Smartphone App aktualisiert. Wie kann ich den token finden?

    1. Inga

      Probiere es einmal über Projekt Settings –> Devices und dann zweimal den hinterlegten Device auslegen (bei mir war es default „New device“).

      1. Inga

        *auswählen natürlich ;)

Schreiben Sie einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.