Day 24: Gift box

With the last test in this Advent, we get really Christmasy. We’re building a reusable gift box with which you can delight your relatives. Every time someone opens the present, the contents are lit up in an individual colour, and a Christmas sound plays.

Behind today’s door is a retro-reflective sensor. This is actually two components, an IR transmitter diode and a phototransistor. It’s not very easy to see which way the elements have to be connected in terms of polarity. For this reason, it’s best if you connect the photoelectric sensor with the connection cables according to the example shown. Then you won’t be able to switch the polarity as easily.

So schließen Sie die Reflexlichtschranke an

This is how to connect the retro-reflective sensor

Today’s layout contains many components, so it all looks a bit confusing at first glance. In addition to the retro-reflective sensor, which serves as a sensor to detect the opening of the package, the RGB LED and the piezo sound transducer are used.

day24_present2_steckplatine

The last layout of the Advent calendar


After you have loaded today’s programme on the controller, go once more to the http://www.hivemq.com/try-out/ site and connect to the broker broker.fkainka.de. Once you’re there, you can now begin to dedicate one topic each to the persons to whom you want to give gifts according to the following model:

NanoESP/MyMQTTiD/present/person/color

NanoESP/MyMQTTiD/present/person/song

where you replace “MyMQTTiD” with your personal ID and “person” with the person to whom you want to give the present. In the topic “color,” publish a colour according to the pattern you already know, rgb(X,X,X), and in the topic “song” publish a number between 0 and 5, which stands for a predefined song. Both messages must be equipped with the Retain flag. For three persons, for example, it would look like this:

TopicValueRetain
NanoESP/mqttId/present/mother/color

 

rgb(255,255,0)X
NanoESP/mqttId/present/mother/song

 

2X
NanoESP/mqttId/present/father/color

 

rgb(0,0,255)X
NanoESP/mqttId/present/father/song

 

1X
NanoESP/mqttId/present/sister/color

 

rgb(255,0,255)X
NanoESP/mqttId/present/sister/song

 

4X

 

Now you can switch between these persons by publishing the person in the topic

NanoESP/MyMQTTiD/present

If you enter “sister” there, for example (pay attention to exact spelling), the settings for your sister are loaded and are used when the box is opened. After the gift has been removed, put the next one in, close the box again and load the next setting by publishing the next person. For test purposes, you can hold the sensor in front of a white sheet of paper, which simulates the closing of the box. The sensor must thereby be shielded from the residual daylight. When you take the paper away, the box is recognised as opened. See the website for instructions on precisely how to build the box.

26 Comments

  1. Nick der Name

    Ab Tag 20 hat man die Bestätigung das der Kalender sein Geld nicht wert wahr bzw. ist.

    Es gibt keine Erklärungen zu irgendwas, seit dem ersten Tag.
    Aber diese „Anleitung“ ist einfach nur mehr Lächerlich.
    Es gibt keine Erklärung zum Code, vor allem die Änderungen die noch zu machen sind, es sind auch sonst keine Erklärungen enthalten die auf das eigentliche Projekt eingehen.
    Es sind einfach nur ein paar punkte die zum Projekt gehören quer aufgelistet, die zum Teil nicht Funktionieren z.B. der
    „hivemq.com/try-out/“- Link Leitet mich zu MS-OneDrive.

    Unter anderem sind die „fritzing“ Schaltpläne Fehlerhaft!!!(solltet ihr echt mal überprüfen(z.B. Tag 18 oder die Widerstände an den Verbraucher anpassen))

    Bei solchen Produkten erwartet man eigentlich ein brauchbares
    Tutorial.
    Die Bauteile Rechtfertigen den Preis Jedenfalls nicht.

    Reply
    1. Michael2016

      Auch hier muss ich leider zustimmen, hab auch schon gleich am Anfang geschrieben, das man den Code doch mehr erklären soll. Allsedings hat es im Forum meist eine Antwort gegeben, so das die Projekt immer funktionierten.

      Reply
    2. sumero

      Das kann ich nur teilweise bestätigen.
      Auch ich hatte mir mehr Erklärungen erhofft und das zu Beginn auch geschrieben.
      Aber das der Kalender sein Geld nicht Wert ist, finde ich etwas überzogen.

      Versuch doch mal alle Bauteile des Kalenders einzeln zu kaufen, überlege dir 24 Experimente, entwickle den Code und die Schaltungen dazu, beschreibe die Experimente und dann sag mir was der Kalender kosten soll.
      Wenn du das in einer besseren Qualität für weniger Geld schaffst, kaufe ich den nächsten Kalender bei dir :)

      Ich habe mir schon mal die Mühe gemacht die Bauteile zu suchen.
      http://iot.fkainka.de/forum/topic/bauteilliste-kalender-2016#post-1990

      Ich weiß natürlich auch, dass es die Teile in großer Stückzahl in Asien günstiger gibt.
      Aber die Entwicklung und das Testen der 24 Versuche kosten auch Zeit (=Geld). Außerdem würde keiner von uns den Aufwand aus reiner Menschlichkeit und Freude betreiben wenn er damit nicht etwas Geld verdienen könnte. Was ich für legitim halte. Ich glaube der Author wird sicher nicht Reich dadurch.

      Obwohl ich die Qualität mancher Bauteile für Grenzwertig halte, kann man für den Preis nicht viel mehr erwarten.

      Insgesamt hatte ich mir nicht nur mehr Erklärungen zu den Bauteilen und der Software erhofft/gewünscht, sondern auch mehr sinnvolle aufeinander aufbauende IOT Anwendungen oder zumindest wie teilweise beschrieben Ideen wofür das praxisrelevant eingesetzt werden kann.
      Der Kalender wirkt leider ein bisschen zusammengewürfelt, es fehlt oft der rote Faden. An einem Tag werden Bauteile angesteckt oder Software hochgeladen, um sie am nächsten Tag komplett durch etwas anderes zu ersetzen und dann einige Tage später wieder zurück zu bauen. Es wird alle paar Tage was komplett anderes gemacht, angefangen bei dem WLAN, über die App (Blynk), den Webserver, den MQ Broker und am Ende steht man da mit einer IOT Geschenkbox als krönendem Abschluss? O.o
      Das war für mich enttäuschend, weil ich bis zum Schluss gehofft hatte, dass es ein großes Ganzes wird.

      Den nächsten Kalender werde ich vermutlich auch nicht mehr kaufen, weil der Mehrwert (Lerneffekt/Nutzen) bei diesem Kalender zu gering ist. Der Kalender beschränkt sich leider darauf Bauteile zu stecken, Code kopieren, hochladen, Fehler suchen und sich Fragen wie man das später in der Praxis tatsächlich einsetzen kann. Erinnert mich an Malen nach Zahlen. Das hängt sich auch keiner in die Wohnung.
      Das mag noch ok sein für einen Adventskalender, wenn auf der Verpackung nicht stehen würde:
      “Ganz nebenbei erwerben Sie auf spielerische Art nützliches Hardware- und Programmierwissen.”

      Das lässt sich sicher verargumentieren, aber was in Summe bleibt ist ein fader Beigeschmack. Ich könnte noch Stunden damit verbringen darüber zu schreiben was man an dem Kalender verbessern sollte, aber leider werde ich nicht dafür bezahlt.

      Fazit:
      We got what we paid for!
      Weiterempfehlen kann ich ihn leider nicht mehr.

      Reply
      1. Michael

        Mmmhhh… so krass würde ich es insgesamt nicht formulieren. Klar, bekommt man das, was man bezahlt hat – einen Adventskalender (und kein 3000 EUR Einführungslehrgang).

        Ich kann mir gut vorstellen, dass der Autor vor ein paar Problemen stand: die (meisten?) Leute wollen mehr unterhalten werden, als lange Anleitungen lesen. Sie wollen ein schnelles Erfolgserlebnis und keine stundenlangen Versuche ausarbeiten (in der Adventszeit hat sowieso kaum einer Zeit) usw. Dann hat der eine schon Erfahrungen mit einem Arduino, der andere ist schon mit C überfordert, der nächste kennt alle Schaltungen aus dem Efef, der andere kann die Ringe der Widerstände nicht auswendig, ein Netzwerker ist auch nicht jeder uvm.

        Für mich war der Kalender ein netter Einblick. Viel mehr habe ich eigentlich inhaltlich nicht erwartet (und hätte es zeitlich in der Adventszeit auch nicht aufbringen können). Die Ansatzpunkte kann ich nutzen, tiefer in die Materie einzusteigen.

        Nur an der Qualität der Bauteile muss echt ein wenig gefeilt werden. 10 EUR mehr, aber dafür ein besseres Breadboard müssten drin sein.

        Reply
  2. h4nc

    Hallo und frohe Feiertage!

    Weiß jemand warum die Programme zu Beginn mit WPA2 nicht funktionierten? Die letzten Programme die das Thema MQTT betraffen funktionierten Problemlos mit der WPA2 Verschlüsselung (auch WPA/WPA2 Mix). Kann mir das bis jetzt nicht erkläten.

    Grüße,
    Hans

    Reply
  3. Ralf(2)

    OK, so weit so gut, irgendiwe hat es nach dem veröffentlichen einen Reset des NanoESP gebraucht und einen Neuenstart des seriellen Monitors um den gewünschten Effekt zu erhalten.

    Das war das letzte X-Mas Kalender Experiment für dieses Jahr. Nicht immer lief alles glatt, die Bauelemente passen teilweise nicht oder wackeln. Manchmal haben die genutzten Serverdienste lang gebraucht um die Daten zu senden. Manchaml war ein bisschen Raten, wie es geht, notwendig, so wie eben heute. Die Quellcodes haben auch Fragmente ungenutzten Codes drin, der beim Lesen und Nachvollziehen auffällt und erst einmal verwirrt. Eigentlich ein bisschen Schade für die Vorfreude auf, bzw. Freude an Weihnachten.

    Ein Wunsch an den Weihnachtsmann, bzw. Autor; Wenn es 2017 noch einmal einen solchen Kalender gibt wäre es super die Schwachstellen auzubügeln und es passt mit der ungetrübten Vorfreude auf Weihnachten.

    Reply
    1. Michel2016

      stimme voll und ganz zu :-) hat trotzdem meistens Spaß gemacht.

      Reply
  4. Burkhard

    … nun wenig Erfolg. Wenn die Lichtschranke eine Öffnung merkt, ertönt “We wish ..” allerdings bleibt die LED immer dunkel. Egal, welche Songnummer und welche Farbvorwahl.

    Reply
    1. Bernd

      wie gesagt, check Deine subscriptions in MQ. Die wichtigste ist Nanoesp/…../present. Ohne die tut sich nicht viel.

      Reply
      1. Burkhard

        . also ich hatte vor, drei Personen technikaffin zu beschenken. Rechts drei mal color, drei mal song und einmal present eingetragen, drei mal rgb() und drei mal befüllt und eine person zum aktuellen present zugeordnet. edenfalls versucht, mit dem einen oder anderen broker. LED bleibt aus. Beim “Öffnen” immer das gleiche Liedchen.

        Reply
        1. thymjan

          Habt ihr an das retain-Kreuzchen gedacht? Damit werden die Werte gehalten. Dann ein Reset am NanoESP durchführen, dann sieht man schon im seriellen Monitor den Erfolg…

          Reply
          1. Daniel

            Ich hab das NanoESP zig mal resetet. Das Kreuzchen war gesetzt.
            Im Monitor War auch zu lesen,dass der Song und die Farbe changed wurde. Aber immer nur ein Lied und kein Leuchten.

    2. Daniel

      Ich hänge seit Stunden dran.
      Ist bei mir auch so.

      Reply
  5. prisma01

    iwie scheint die Lichtschranke nicht zu tun. Der Status geht immer wieder von closed auf open und wieder von vorne. Lässt sich auch durch totales Abdunkeln der Einheit nicht überreden :-(
    Anschluss wie im Bild oben, kann man das irgendwie durchmessen?

    Reply
  6. prisma01

    hmm nach Anschluss an USB geht das Licht an, und der passende Song ertönt. Gibts da nen Energiesparmodus?

    Reply
    1. Naseweiß

      Ist Deine Batterie leer?
      Der ESP8266 zieht gehörig Strom; ein 9V-Block reicht da nicht lange.
      Frohes Fest.

      Reply
      1. prisma01

        nö zeigt (noch) volle Kanne, war auch grad frisch geladen…, aber vielleicht doch zu wenig cap

        Reply
  7. prisma01

    kommt immer nur “I wish you…” und keine LED brennt, egal welchen Namen ich auswähle. Anschluss der RGB LED ist ja genau wie bei den Cheerlights, da hats noch funktioniert. Batterieanschluss tuts auch, auf dem Borad brennt alles. Wo liegt der Fehler?

    Reply
  8. Burkhard

    Auch mit broker.fkainka.de ändert sich nichts am seriellen Monitor. Die LED bleibt aus, beim “Öffnen” ertönt stets “We wish you..” Was muß ich anders machen?

    Reply
    1. Bernd

      Sieht so aus als hättest du auch vergessen …./present zu subscriben. siehe bei mir unten, dann klappts wahrscheinlich.

      Reply
  9. hi

    hallo bekomme wiederholt den fehler:

    collect2.exe: error: ld returned 5 exit status

    exit status 1
    Fehler beim Kompilieren für das Board Arduino Nano.

    danke im voraus für hilfe
    und fröhliche weihnachten

    Reply
  10. Michel2016

    Kann man die IR-Elektrode auch als Fernbedienung benutzen, um zu prüfen ob der Deckel geöffnet wird hätte ja auch der RF-Sensor auch Tag 12 gereicht.

    Reply
  11. Bernd

    sieht also so aus bei mir:

    Reply
  12. Bernd

    Tja, ausser manchmal “I wish you a merry christmas” tut sich bei mir nichts. Bin zwar subscribed to present aber wenn ich die namen da publiziere (mit oder ohne “”) tut sich nichts und die message taucht nicht auf – weder in MQTT noch monitor. werden nur viele open closed im monitor.

    Reply
    1. Ralf

      Hallo zusammen,

      frohe Weihnachten wünsche ich euch allen.

      Nehmt wieder den Broker broker.fkainka.de, bei mir funktioniert es jetzt. Ich war da falsch unterwegs.

      Für die vielen Topics habe ich mir eine Textdatei angelegt, vereinfacht etwas die Eingabe.

      Justieren muss ich noch die Lichtschranke, scheint mir sehr empfindlich bei einfallendem Licht.

      Mal sehen ob das heute nachmittag auch noch klappt.

      Reply
    2. Bernd

      Frohe Weihnachten allemann.
      jetzt klappt es, hatte doch vergessen auch NanoESP/18fe34cfa972/present zu subcriben. Mit drei Leuten muss man also 7 subscriptions haben.
      sogar der sensor tuts.

      Reply

Leave a Comment

Your email address will not be published. Required fields are marked *