Taula de continguts:

TTGO T-Watch: 9 passos (amb imatges)
TTGO T-Watch: 9 passos (amb imatges)

Vídeo: TTGO T-Watch: 9 passos (amb imatges)

Vídeo: TTGO T-Watch: 9 passos (amb imatges)
Vídeo: Control Appliances using SmartWatch 🤯🤯 | ESP32 Smart watch | T-Watch 2020 v3 #esp32 #iot #twatch2020 2024, De novembre
Anonim
Image
Image
TTGO T-Watch
TTGO T-Watch

Aquest instructiu mostra com començar a jugar amb TTGO T-Watch.

Pas 1: Què és TTGO T-Watch?

Què és TTGO T-Watch?
Què és TTGO T-Watch?
Què és TTGO T-Watch?
Què és TTGO T-Watch?
Què és TTGO T-Watch?
Què és TTGO T-Watch?
Què és TTGO T-Watch?
Què és TTGO T-Watch?

TTGO T-Watch és un kit de desenvolupament basat en forma de rellotge ESP32. El flaix de 16 MB i el PSRAM de 8 MB són les principals especificacions. També incorpora un LCD IPS de 240x240, pantalla tàctil, port de targeta micro-SD, port I2C, RTC, acceleròmetre de 3 eixos i un botó personalitzat. El pla posterior també es pot canviar a altres mòduls com LORA, GPS i SIM.

Però el més important que pot convertir-se en un rellotge usable és el sistema d’alimentació. Va integrar el xip de gestió d’energia programable multicanal AXP202. Aquesta és la primera vegada que veig un kit de desenvolupament que té un xip d’alimentació controlable I2C.

Segons la interfície AXP202X_Library, podeu controlar cada canal d’alimentació encès i apagat, llegir el nivell de la bateria, l’estat de la càrrega i fins i tot apagar directament l’alimentació, igual que prement el botó d’encesa.

Ref.:

github.com/Xinyuan-LilyGO/TTGO-T-Watch

Pas 2: Simple Watch PoC

Simple Watch PoC
Simple Watch PoC

El xip d’alimentació sembla bo, però quant de temps dura la bateria incorporada de 180 mAh?

Com que es va dissenyar com a perspectiva de rellotge, comencem amb un exemple de rellotge simple com a PoC per examinar el funcionament del xip de potència.

Pas 3: dissenyar la cara del rellotge

Cara de disseny de rellotge
Cara de disseny de rellotge

ESP32 és un xip molt potent, la CPU dual core de 240 Mhz i la velocitat SPI de 80 Mhz poden dissenyar un disseny de pantalla molt suau. Així que vaig dissenyar una cara de rellotge decent amb una segona mà d’escombrat continu.

Tot i això, les dificultats de disseny són altament inesperades, no és fàcil treure l’última mà sense parpellejar. He provat 4 mètodes addicionals per aconseguir-ho. Les imatges anteriors mostren un dibuix fallit que es va mantenir els darrers segons píxels no eliminats a la pantalla. El disseny de la cara del rellotge té moltes paraules que pot dir, però una mica fora d'aquest projecte. Potser puc dir més coses sobre el viatge del disseny en els meus propers instructables, hauria de dir-se "Arduino Watch Core".

Pas 4: definiu l'hora

T-Watch té un xip RTC integrat, cosa que significa que pot mantenir el temps entre el reinici durant el desenvolupament. Abans que es pugui mantenir el temps, hauríem de definir-lo primer.

Hi ha diverses maneres d’establir l’hora:

  • Els ESP32 tenen capacitat WiFi, de manera que podeu sincronitzar el temps amb NTP
  • de manera similar a altres dispositius electrònics, com ara la càmera digital, podeu escriure una interfície d’usuari per definir l’hora
  • podeu utilitzar el pla posterior del GPS i, a continuació, podeu obtenir l’hora del satèl·lit

Per fer-ho més senzill, encara és una manera mandrosa de configurar l'hora; podeu trobar-ho en algun exemple de rellotge TFT. Quan compileu el programa a Arduino, el preprocessador va definir 2 variables "_DATE_" i "_TIME_" per registrar el temps de compilació. Podem utilitzar aquesta informació per fer un programa molt senzill per establir l’hora RTC.

Nota:

Aquest senzill programa sempre defineix l’hora d’arrencada. Però el temps de compilació només és vàlid al primer arrencada, de manera que hauríeu de sobreescriure amb un altre programa una vegada que hagi definit l'èxit del temps.

Ref.:

gcc.gnu.org/onlinedocs/cpp/Standard-Predef…

Pas 5: consum d'energia

El consum d'energia
El consum d'energia
El consum d'energia
El consum d'energia

Quan el rellotge funciona, mostra una segona mà d’escombrat continu, consumeix una mica més de 60 mA. Per motius d’estalvi d’energia, hauria d’entrar en mode de suspensió després d’un període determinat.

Si apago la retroil·luminació LCD i truco a l'SP32 sleep profund, caurà a uns 7,1 mA. Només pot durar aproximadament 1 dia per a la bateria de 180 mAh.

Sé que el xip LCD consumeix uns 6 mA. Segons el full de dades ST7789, hi ha una ordre per entrar en mode de repòs. Però la biblioteca actual TFT_eSPI encara no té API de mode de repòs.

I a més, encara hi ha al voltant d’1 mA consumit per algun lloc.

Pas 6: xip de gestió d'energia programable

Image
Image
Programa
Programa

Hi ha molts xips al kit de desenvolupament, segons el seu full de dades, la majoria admeten el mode d’estalvi d’energia. Tot i això, no totes les biblioteques exposaven l'API del mode d'estalvi d'energia. I és una llarga codificació per estalviar energia comprovant i trucant a cada mòdul per entrar en mode de suspensió.

Què hi ha d’apagar directament l’alimentació de la mateixa manera que es premia directament el botó d’encesa? AXP202X_Library ho pot fer simplement trucant a la funció shutdown (). En mode d’aturada, només consumeix una mica per sota de 0,3 mA. Pot durar 25 dies per a la bateria de 180 mAh.

Nota:

Acabo de carregar la bateria el 28 de juny, és possible que seguiu el meu twitter per conèixer l’estat de la bateria més recent.

Actualització:

La bateria s’esgotarà el 18 de juliol, la bateria pot durar 20 dies. Durant el període que comprovo l'hora unes quantes vegades al dia, suposo que el rellotge pot durar 1-2 setmanes en un ús normal.

Ref.:

github.com/lewisxhe/AXP202X_Library/pull/2

Pas 7: programa

  1. Seguiu les instruccions de la pàgina https://github.com/Xinyuan-LilyGO/TTGO-T-Watch per instal·lar el programari i la biblioteca.
  2. Descarregueu el codi font a GitHub:
  3. Obriu, compileu i pengeu Set_RTC.ino per actualitzar la data i l'hora de RTC
  4. Obriu, compileu i pengeu Arduino-T-Watch-simple.ino
  5. Fet!

El programa de rellotge simple farà:

  • llegiu la data i l'hora de l'RTC
  • dibuixar la marca del rellotge (podeu seleccionar la marca del rellotge rodó o quadrat)
  • mostra escombrat continu de segona mà
  • apagat després de 60 segons (o podeu mantenir premut el botó d'engegada per apagar-lo immediatament)
  • premeu el botó d’engegada per tornar-lo a engegar

Pas 8: Programació feliç

Programació feliç!
Programació feliç!

El rellotge TTGO T pot fer molt més que un simple rellotge, per exemple.

  • ESP32 pot fer comunicacions sense fils WiFi i BT
  • utilitzar un panell de pantalla tàctil pot desenvolupar una interfície d’usuari més elegant
  • acceleròmetre de tres eixos a bord (BMA423), algorisme de comptador de passos incorporat i un altre sensor multifuncional GS
  • el fons posterior substituïble pot afegir funcions LORA, GPS, SIM
  • El port I2C pot ampliar moltes més funcions

Pas 9: Arduino-T-Watch-GFX

Image
Image

Arduino-T-Watch-simple requereix que mantingueu premut el petit botó d’engegada per despertar-se i que la introducció inicial de la pantalla LCD retardi uns quants senconds. Per tant, l’experiència de l’usuari no és tan bona.

He afegit un altre programa anomenat Arduino-T-Watch-GFX per millorar-ho. Aquest programa canvia per utilitzar la biblioteca de visualització Arduino_GFX, i després pot indicar a la pantalla que entra en mode de suspensió per estalviar energia. Per tant, quan l’ESP32 entra en repòs lleuger, ara només consumeix per sota dels 3 mA. I també ara pot activar el despertar amb la pantalla tàctil. El despertador ESP32 i el mode de repòs de la pantalla són molt més ràpids que tot el procés de reinici, es pot veure el vídeo anterior, ja que és de resposta gairebé instantània. Teòricament, la bateria hauria de poder durar més de 2 dies: P

Recomanat: