Earlier this year I posted an article about the TTGO Watch with the optional LoRa/GPS board, and how to program it to track LoRa high altitude balloons. Since then I’ve used it on a real flight where I found it ideal for checking that the balloon tracker was running fine while I filled the balloon.
Since then, LilyGo have started shipping a new watch which is slimmer (good!) but lacks the option of adding GPS or LoRa. So at first glance it doesn’t seem useful for HAB. However the watch does still have Bluetooth so it can be linked to a suitable GPS/LoRa device via a wireless link. For tracking balloons this is actually a better option, since the LoRa device can be much more easily connected to a good aerial, like so:
So here we have a compact 434MHz Yagi antenna, connected to a TTGO T-Beam LoRa/GPS device with battery, housed in a 3D-printed enclosure and connected over Bluetooth to the T-Watch 2020. This is ideal for that “last mile” tracking once the balloon has landed.
TTGO T-Watch 2020
As you can see, this is much slimmer than the previous model (which is why there’s no space for the LoRa/GPS board), and looks more like a regular watch and less like something that only a geek would wear! Though if this is a concern then you probably don’t want to be seen carrying a Yagi either!
Otherwise it’s very similar to the original watch, with the same touchscreen display and the same processor. There are some differences internally but those are taken care of my the supplied Arduino library – you just tell it which model you have.

TTGO T-Beam Board
This is a useful board that can be used as a LoRa receiver or even a LoRa HAB tracker. It has an ESP32 processor plus UBlox GPS and LoRa module (be careful to order one for the correct frequency band!).

It also includes a battery holder for a standard 18650 LiPo, so all it needs for this project is a suitable case. If you have access to a 3D printer then you’ll find no shortage of designs to choose from on thingiverse. Note that many designs include a hole for the OLED which most of the T-Beam boards do not have, so select appropriately.
Antenna
For chasing, a small Yagi aerial is ideal as it provides all you need – directional, easy to carry, and some gain. I got this model from Aliexpress:
This model has an SO239 socket so I added an adapter to SMA and then a short SMA-SMA cable to connect to the T-Beam.
Programming
Both the T-Beam and T-Watch can be programmed using the Arduino IDE, and LilyGo supply a library with examples for the latter.
To program the T-Beam, install an ESP32 board package into the IDE connect the watch to the host computer via a micro USB cable. In the IDE, choose the “TTGO T-Beam” board option and select the correct serial port.
To program the T-Watch 2020, install the Lilygo library, and connect the watch to host the computer via a micro USB cable. In the IDE, choose the “TTGO T-Watch” board option and select the correct serial port.
T-Beam Firmware
The aim here is to provide the the following capabilities for the host ESP32:
- Receive GPS latitude, longitude, altitude and direction
- Receive packets received by the LoRa module
- Set the LoRa module frequency and other settings
- Provide Bluetooth (BLE) serial link
Essentially, this is the same as what I have done before with Bluetooth-connected receivers, but I had to make a change to the BLE code to make it possible for the ESP32 in the watch to connect easily. Get the code from github.
T-Watch 2020 Firmware
Get the my firmware from github.
Operation
This is the same as for the original watch, so see my article on that.
There are no settings for the BLE link – the watch looks for a nearby BLE device with the serial port characteristic.
Hello, can you post the code for the ttgo t-watch 2020 in github? Need this for learning ble integration in my lora32 …. please
Hello, can you post the code for the ttgo t-watch 2020 in github? Need this for learning ble integration in my lora32 …. please
Dear Dave, thanks for publishing this nice project.
2 issues – the lilly go watch link for the code on github shows 404.
also i cant get connected wwith a TTGO T BBeam over Bluetooth it shows in the HabPADD Connecting to HABRX .. No Serial Device,, wht do i wrong?
Sorry for contacting you so often, but your projects attract me every time.
73 DAN de DL6OW
The source for the 2020 TTGO watch is at https://github.com/daveake/THABWatch2020
Re the error message … I’m confused. HABPADD is a separate project, and both it and HABRX are Delphi Windows/Anrdoid/iOS code; the 2020 watch is Arduino/ESP32.
THABWatch2020 The Github Site ist down. Have you a link to THABWatch2020 firmeware
Hi Dave,
Great work here, do you have a link to Watch code, I am interested in the bluetooth data exchange for a project I am working on.
Thanks Buddy
Dans
Hello Dave, unfortunately the link https://github.com/daveake/THABWatch2020 is not working. Could you post the correct link to the software. tnx.