Table of Contents

CryptoWatch

Introducere

Crypto Watch reprezintă un instrument util și eficient pentru cei interesați de lumea criptomonedelor, o lume care este în continuă schimbare. Cu funcționalitatea sa intuitivă și designul său compact, acest proiect oferă utilizatorilor o modalitate simplă și accesibilă de a monitoriza și de a rămâne conectați la evoluția pieței cripto în timp real, contribuind la îmbunătățirea înțelegerii și gestionării investițiilor în criptomonede.

Dispozitivul se dorește a fi un ceas care prezintă informații în timp real despre evoluția unei game largi de criptomonede prin interacțiunea cu un api. Acesta va prelua și prelucra informația pentru a afișa pe ecran informații precum numele criptomonedei, prețul curent într-o monedă selectată și rata de schimbare a criptomonedei. Utilizatorul poate schimba criptomoneda monitorizată prin apăsarea unui buton și moneda în care se face conversia prin apăsarea unui al doilea buton. Pe lângă cele 2 inputuri, utilizatorul va putea adăuga noi criptomonede pe care să le monitorizeze prin telefon.

Crypto Watch este un produs care poate fi folosit de către toți entuziaștii și investitorii de criptomonede.

Descriere generală

Hardware Design

Lista piese

Software Design

Mediu de dezvoltare

Proiectul a fost dezvoltat în ArduinoIDE.

Librării
Algoritmi

Se vor implementa două taskuri(threaduri) care vor gestiona butoanele și afișajul displayului. În loopul principal se vor face requesturi către api-ul celor de la CoinGecko (site: https://www.coingecko.com/ ; documentație: https://docs.coingecko.com/reference/introduction). Aceste requesturi se vor trimite o dată la un minut când există deja un rezultat pe ecran, altfel se vor trimite la 1 secundă până când obținem un rezultat.

În fișierul display.h se găsește logica pentru afișaj. Ecranul se poate afla în 3 stări: unul în care așteaptă o conexiune wifi și afișează că are nevoie de conexiune pentru a continua, unul în care afișează ora curentă, trimițând la 10 secunde requesturi către http://worldtimeapi.org/ pentru a obține timpul și un mod în care afișează informațiile despre crypto monede.

În fișierul button.h se află funcțiile care gestionează comenzile primite de la butoane.

În fișierele coinapi.h și clockapi.h este implementată logica pentru requesturi.

Logică

Plăcuța la pornire se va seta ca și access point unde mai multe dispozitive se pot conecta pentru a o configura. Aici se pot trimite requesturi către plăcuță pentru a adăuga noi crypto monede și pentru a face conexiunea la internet. După ce se face conexiunea, dispozitivul nu se mai poate configura, începând să facă requesturi pentru timp și cryptomonedele adăugate.

Rezultate Obţinute

Concluzii

Dispozitivul funcționează cum a fost intenționat. A fost setat să dea requesturi către api-ul de la Coin Gecko la 25 de secunde, deci nu va depăși limita de 30 de requesturi pe minut decât dacă se schimbă foarte repede între cripto monede. Deoarece am folosit acest api utlizatorii au o gamă foarte mare de monede din care pot alege la configuare.

Datorită dimensiunii sale mici este plăcut de utlizabil, neatrăgând atenția.

Câteva probleme:

  1. uneori butoanele nu răspund corespunzător la apăsare (probabil de la delayuri).
  2. reconfigurarea dispozitivului se face doar prin reconectarea acestuia la o sursă de curent.

Download

cryptowatch.zip

Bibliografie/Resurse

Componente Hardware folosite:

Resurse software:

Export to PDF