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.
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.
Sorry, etwas spät dran. Ich bekomme die Fehlermeldung ‚blinkAlarm‘ was not declared in this scope. Was kann hier die Ursache sein?
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));
}
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.
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…
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
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.
Danke,
werde ich beizeiten ausprobieren. Ich komme ja kaum nach mit dem Basteln aus dem Kalender.
Gruß, Conrad
was muss ich bei „YourToken“ einsetzen
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.
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“.
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.
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“:…“
ja habe ich, wenn ich das Board NICHT angesteckt haben kommt folgende Auswahl
und wenn ich das Board anstecke kommt das hier, aber das Blinken ist immer noch da…
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.
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.
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.
gleiches Problem – gibt es eine Lösung?
<Blynk v0.3.4: Device started
—
[41312] Cmd error
[41337] <msg 20,7,18
[41338] Cmd skipped
[41338] Login timeout
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!
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/
That indeed looks better to understand for starters! Too bad this year isn’t commented the same way.
Hallo,
heute funktioniert es bei mir nicht. Ständig Fehlermeldungen:
<vw
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.
Den Text kannst Du in Zeile 82 ändern (zB in „Alarm quittiert“).
Bekommt man die alten leeren Pläne dervortage auch weg?
Wie findet man raus wieviel Energie man noch hat?
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…
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.
Ich habe die Smartphone App aktualisiert. Wie kann ich den token finden?
Probiere es einmal über Projekt Settings –> Devices und dann zweimal den hinterlegten Device auslegen (bei mir war es default „New device“).
*auswählen natürlich ;)