Inhoudsopgave:

The WunderThing: een batterijgevoede, magnetische ESP8266 weersvoorspelling IoThing! - Ajarnpa
The WunderThing: een batterijgevoede, magnetische ESP8266 weersvoorspelling IoThing! - Ajarnpa

Video: The WunderThing: een batterijgevoede, magnetische ESP8266 weersvoorspelling IoThing! - Ajarnpa

Video: The WunderThing: een batterijgevoede, magnetische ESP8266 weersvoorspelling IoThing! - Ajarnpa
Video: Wunder thing Montage 2024, November
Anonim
The WunderThing: een batterijgevoede, magnetische ESP8266 weersvoorspelling IoThing!
The WunderThing: een batterijgevoede, magnetische ESP8266 weersvoorspelling IoThing!
The WunderThing: een batterijgevoed, magnetisch, ESP8266 weersvoorspelling IoThing!
The WunderThing: een batterijgevoed, magnetisch, ESP8266 weersvoorspelling IoThing!
The WunderThing: een batterijgevoede, magnetische ESP8266 weersvoorspelling IoThing!
The WunderThing: een batterijgevoede, magnetische ESP8266 weersvoorspelling IoThing!
The WunderThing: een batterijgevoede, magnetische ESP8266 weersvoorspelling IoThing!
The WunderThing: een batterijgevoede, magnetische ESP8266 weersvoorspelling IoThing!

Hallo daar, Voor mijn allereerste instructable, laat me je vertellen over A Wunderful Thing. Dit was een vrij recent project waarbij mijn doel was om een koelkastmagneet voor weersvoorspellingen te bouwen!

De controller bij uitstek voor dit project was Sparkfun's Thing, een ESP8266 gebundeld met allerlei goodies. Wanneer de gebruiker het ding AAN zet, wordt er een gegevensverzoek van het ding naar de Wunderground gestuurd (via wifi) met behulp van een API-sleutel en wat locatie-informatie. De gevraagde prognosegegevens worden teruggestuurd naar het ding, dat vervolgens de gewenste stukken uitzoekt en opslaat. De gebruiker kan deze gegevens verkennen door op de richtingsknoppen te drukken en het display te bekijken. De gebruiker heeft ook toegang tot een instellingenmenu om zijn wifi-ID, wachtwoord, postcode en API-sleutel te wijzigen.

Hoe dan ook, dit project was erg leuk en bevatte een aantal unieke elementen. Ik hoop dat je er zelf een bouwt of iets dergelijks met behulp van wat je leert van deze Instructable.

Genieten van:)

Stap 1: Bedrading van het WunderThing

Het WunderThing bedraden
Het WunderThing bedraden
Het WunderThing bedraden
Het WunderThing bedraden
Bedrading van het WunderThing
Bedrading van het WunderThing
Bedrading van het WunderThing
Bedrading van het WunderThing

Dus hier is hoe je dit ding aansluit. Dit was ook de eerste keer dat ik Fritzing gebruikte, best cool.

De getoonde 3.7V LiPo-batterij kan van elk formaat zijn, maar ik zou ten minste 500 mAh aanbevelen (ESP8266 heeft veel stroom nodig). De ingebouwde oplader werkt heel goed, sluit gewoon een oude micro-USB aan. OPMERKING: Om code te uploaden, MOET u de Thing los van de FTDI van stroom voorzien (via een batterij of USB).

Bedraad op het ding wordt een FTDI-USB-adapter getoond (elke 3.3V FTDI is voldoende), een OLED-scherm en 4 drukknoppen. U moet BEIDE jumpers op de achterkant van de OLED solderen. De knoppen worden weergegeven met externe pull-up-weerstanden (ik vertrouw interne pull-ups niet, maar in theorie is er niets mis mee om die gewoon te gebruiken).

ALS U SERILE DEBUGGING WILT DOEN: Zoek de twee.1 -gaten boven de FTDI-gaten op het ding. Knip het spoor tussen deze gaten aan de achterkant van het ding. Voeg een koptekst toe aan die twee gaten, maar het is het gemakkelijkst voor u om te veranderen de open/gesloten staat van dat circuit. Om code te uploaden, sluit het circuit kort. Om seriële foutopsporing toe te staan, opent u het circuit. Sparkfun legt dit voor u uit in de Thing-tutorial. Want Sparkfun is geweldig, net als Adafruit.

Stap 2: Het WunderThing programmeren

Het WunderThing programmeren
Het WunderThing programmeren

De code om het WunderThing te laten werken… is smerig.

Ik zal instructies geven om het te laten werken zoals mijn demo, maar als je wilt toevoegen/aanpassen/etc. het zal geen gemakkelijke weg zijn. Ik heb het doorgenomen en becommentarieerd, dus hopelijk helpt dat, maar ik ben er nooit in geslaagd om de structuur echt op te ruimen (wat uiteindelijk behoorlijk aan elkaar werd genaaid met enkele stukjes pasta en andere beschamende snelle oplossingen).

Hier zijn de (soort van) prachtige instructies:

1. Voeg het ding toe aan Arduino's Board Manager. Vergeet niet om het te testen met Blink.

2. Haal de volgende bibliotheken van Github: Adafruit_GFX, Adafruit_SSD1306, ArduinoJson (mogelijk al meegeleverd)

3. Maak van jezelf een Wunderground API-sleutel door hier een account aan te maken, volg de links om de sleutel te krijgen (GRATIS voor wat je nodig hebt)

3. Wijzig de Arduino-programmeerinstellingen in: Sparkfun Thing, 115200, ArduinoTinyISP, Port #, etc, etc. WIJZIG DE CODE (regel 139) voor je wifi- en zip-info.

4. Zet de Thing AAN (vergeet niet eerst een batterij of usb aan te sluiten), compileer en upload de code via FTDI. Laat het ding AAN staan.

5. WIJZIG DE CODE OPNIEUW (regel 165), Compileer en upload opnieuw.

6. Als het twee keer naar je wifi pingt voor gegevens en het weergeeft, kun je fluiten en schreeuwen om het te vieren.

7. Als de dingen niet zijn gegaan zoals bedoeld, probeer het dan uit en weer in te schakelen. Als dat niet werkt, gooi het dan allemaal in woede weg en ga terug naar eenvoudigere projecten, anders zul je waarschijnlijk met je hoofd tegen een muur moeten bonzen en je afvragen wat ik in mijn code heb gedaan die niet overeenkomt met wat je wilt doe ermee…. maar ik weet zeker dat het goed komt:)

Stap 3: Het WunderThing gebruiken

Image
Image
Het WunderThing bouwen
Het WunderThing bouwen

Dus… de manier waarop ik dit heb uitgelegd is niet echt intuïtief, maar het zou maar een paar minuten moeten duren om erachter te komen hoe je door dit ding moet navigeren.

Zie het als een Excel-blad waar de huidige cel op het scherm wordt weergegeven. Gebruik de afbeelding hierboven als referentie. Het enige vreemde is het menu Instellingen, dat niet volledig wordt beschreven door de afbeelding. Het instellingenmenu zou echter voor zichzelf moeten spreken. Als u kiest voor 'Wijzig postcode' of een andere instelling, gebruik dan de links/rechts-knoppen om te schakelen tussen tekens in de tekenreeks (huidige positie wordt weergegeven met een puntindicator) en de omhoog/omlaag-knoppen om door de tekens te bladeren. The Thing slaat je invoer automatisch op zodra je helemaal terug bent in het instellingenmenu (met behulp van interne EEPROM).

Stap 4: Het WunderThing bouwen

Pas nadat je met succes aan dit ding hebt gebroed, kun je overwegen om er een afgewerkt product van te maken.

Mijn klokken waren allemaal gemonteerd op supereenvoudige 3D-geprinte mounts. Ik zal het solidworks-deelbestand toevoegen voor het geval je dat eens wilt proberen.

Om alles op zijn plaats te houden, heb ik gewoon een klein stukje gebroken protoboard in de hoek van het knoppenblok gelijmd, en dat leek redelijk goed te werken en zorgt voor 'gemakkelijke' verwijdering als dat ooit nodig is. Achteraf had ik absoluut de boorgaten van het ding en de OLED moeten gebruiken toen ik de houder ontwierp … nou ja. De LiPo zit echter super mooi. Ik gebruikte de getoonde Tenergy, wat geweldig was, behalve dat DE CONNECTOR VERKEERD WAS. Geen probleem, ik heb gewoon wat connectoren (JST-PH) van adafruit gekocht en die op de batterijen vervangen.

Je zult een kleine tekening op mijn klokken van berglandschap zien. Dat was gewoon ik die wat vrije ruimte gebruikte. Misschien kun je er een beter gebruik voor vinden. Je zult ook merken dat alle klokken kleurrijk waren, slechts enkele lagen acrylverf.

Om er een koelkastmagneet van te maken, koop je gewoon wat magneetband en plak je een paar strips erop. Werkt goed.

Stap 5: Verder gaan met het WunderThing

Verder gaan met het WunderThing
Verder gaan met het WunderThing

Enorm potentieel om te verbeteren/aan te passen/uw eigen te maken.

Ik wilde echt weerpictogrammen opnemen, maar had geen geheugen meer. Iets zegt me dat het mogelijk zou zijn geweest om het geheugen in te korten, maar die JSON-business is nogal harig en ik heb geen ervaring met het gebruik ervan (geheugen toewijzen voor buffers en opslag, enz.).

Aanbevolen: