Se afișează postările cu eticheta NTP. Afișați toate postările
Se afișează postările cu eticheta NTP. Afișați toate postările

luni, 23 septembrie 2019

Statie meteo cu Esp8266 pe TFT 2,8 240X320 ILI9341

Am testat funcționarea unei stații meteo pe display TFT cu rezoluția de 240x320 ce are ca driver ILI9341 legat la un  ESP8266. Sursa de inspirație a fost https://www.instructables.com/id/ESP8266-Colored-Weather-Station/ .
Mai multe detalii se găsesc pe site-ul de inspirație, iar mai departe fac doar un rezumat scurt.
TFT-ul la ESP8266 l-am legat astfel:
CS-GPIO5, RST-RST, DC-GPIO16, MOSI-GPIO13, SCK-GPIO14, LED-+3,3V, MISO-GPIO12
Partea de touch am lasat-o deocamdata în aer, iar LED-ul TFT-ului l-am legat direct la +3,3V 
Definițiile pentru DC și CS le-am pus direct aici în tab-ul principal:
ILI9341_SPI tft = ILI9341_SPI(5, 16); pentru că nu a vrut să le ia din settings.h.
Apoi mi-am facut un cont free pentru a obține un api_key pentru  meteo: https://docs.thingpulse.com/how-tos/openweathermap-key/ , iar aici am căutat ID-ul pentru Iași: https://openweathermap.org/city/675810. În linia 65 de la settings.h am modificat :
#define UTC_OFFSET +1
înlocuind 1 cu 2 pentru a obține ora României.
Tot aici, în liniile:
#define WIFI_SSID "your-ssid"
#define WIFI_PASS "your-wifi-password" 
am trecut setările mele de wifi.
Apoi am început să caut lib-urile necesare. Pe github am pus o arhiva ce contine folderul Arduino cu codul si lib-urile necesare, folosite de mine. Practic trebuie redenumit dosarul curent, și copiat conținutul arhivei în locul acestuia. În poza de mai jos este screen-ul de la macbook unde am testat din nou proiectul, verificând astfel daca nu mi-a scăpat ceva la arhivarea de pe Ubuntu.

După compilarea finală  a ieșit ca mai jos:

duminică, 15 septembrie 2019

Ceas matricial NTP cu ESP8266 pe matrice I2C 2x8

Cu ceva timp in urma am luat din greseala citeva placute cu HT16K33 (driver I2C) ce voiam sa le folosesc cu un display 4x7 segmente. Placuta arata ca cea de mai jos:
iar cea dorita de mine pentru 7 segmente trebuia sa fie asa:

Abuzind de google am gasit utilizarea si pentru cele luate gresit. Acestea se folosesc pentru conectarea a doua matrici de 8x8 LED-uri. In link sint detalii despre acestea.
Eu am folosit doua matrici de 8x8 LED-uri (ceva mai mari decit cele propuse de Adafruit ) ce le-am lipit pe o placa de test si am facut legaturile cu fire, ca in schema de mai jos:
Aici A0 se duce la A2 si invers (posibil eroare de redactare).
A iesit ca mai jos:

Tot abuzind de google am gasit un mod de a utiliza alte fonturi mai mici decit cele din lib-ul lui HT16K33, astfel incit sa incapa 4 cifre si sa pot face un ceas sincronizat cu NTP bazat pe ESP8266 fara RTC.
Am facut citeva mici modificari la afisare (i-am pus puctele despartitoare, am modificat ora pentru fusul orar din Romania si afisarea orelor fara AM/PM) iesind ca mai jos:
 Desi luminozitatea aici este setata la 1, ( matrix.setBrightness(1);) este foarte vizibil ziua pe lumina, iar noaptea nu deranjeaza.

Si un mic filmulet cu functionarea, in linkCodul meu cu modificarile facute este tot pe github. Fisierul WiFi_Network.h (aici pune SSID-ul si parola de WIFI) trebuie copiat in acelasi folder cu Feather_Matrix_NTP_Clock.ino
consumul este nesemnificativ (0.01A , nu am reusit sa-l prind poza)
 La ESP8266, I2C-ul este pe GPIO5 si GPIO4 (D2, D1)
Update: Am facut update la cod folosind lib-ul lui tzapu cu ajutorul caruia se poate configurarea retelei wifi de pe telefon. Am mai modificat astfel incit sa nu mai fie necesar WiFi_Network.h .
.



Amplificator ultra simplu cu MOS 40W/8Ohm la 2x30V

 Am început construcția unui amplificator cu tranzistori MOS după o schemă proiectată de Ionel Epure , care se împacă foarte bine cu boxele ...