OMG support for LilyGo TTGO T-Beam v1.1 or v1.2

OMG support for LilyGo TTGO T-Beam v1.1 or v1.2

I purchased a LilyGo T-Beam v1.2. It came with Meshtastic installed. The 433, 868, 915, and 923 MHz T-Beams v1.1 and v1.2 have a ESP32 for Wifi & Bluetooth, a NEO-6M GPS, a 18650 battery holder, and a Semtech SX1276 LoRa Transceiver. The difference between the T-Beam v1.1 and v1.2 is the programmable power supply. The PMU is a AXP192 for v1.1 and a AXP1201 for v1.2.

I tired to install OpenMQTTGateway on my T-Beam v1.2 by selecting the ttgo-t-beam environment, but it doesn’t work. I believe the PMU is the reason why the ttgo-t-beam enviroment doesn’t work on my T-Beam v1.2 device. The AXP devices need to be configured in code to enable power and the correct voltages to elements on the board. The LilyGo LoRa Series github page refers to the T-Beam v1.1 and v1.2 devices as LILYGO_TBeam_V1_X.

Has anyone tried to support these newer T-Beam devices in OMG?

Would be interesting to have a serial monitor extract to identify where it is not working.

It looks like LoRa and BT are working from environments.ini.

But from MQTT Explorer
ADCtoMQTT = {“adc”:0,“volt”:0}
that’s why I believe the AXP2101 (not AXP1201 as I mistyped before) PMU isn’t enabled for the T-Beam v1.2.

I was hoping for OMG support for the onboard ssd1306, GPS and an example rtl_433 configuration for the T-Beams. Would be nice of someone could add it.

I am working on the same board right now. I am quite sure the problem is from the PMU. I need to do more tests to confirm this.

Since 2021 the T-Beam is sort of supported:

But the screen is not working in the current 1.8.1 release. In the logfiles getting out of the 1.8.1 i was not able to see a command that it activates the screen. I can compare the t-beam with the lora32 device where the screen is working with v1.8.1. On the Lora32 i can see in the logfiles that its enabling the screen by doing something about SSD1306.

There was a bugreport on github but that never got answered: Support for lilygo t-beam 433Mhz LoRa v1.1 with GPS and SPI display · Issue #1528 · 1technophile/OpenMQTTGateway · GitHub

I also do not understand why the file ttgo-t-beam-libraries.zip is so huge compared to the other libraries for the other supported boards.

Something looks to be not that optimized for the t-beam. I would be happy to test images and report if things gets fixed.

No. https ://lilygo.cc/products/t-beam
The screen is either soldered in or you have to solder it in and save a buck by doing soldering on your own.

Just opened my eyes properly ;). not the LED, but the OLED is what we want here, let me change this to adding the OLED definitions as well, in addition to the LED change for the newer LED pic :wink:

Would be great if you could link a test build for testing for me.
Hardware versions of the t-beam before hardware version 1.0 are really rare. The masses of the t-beam boards sold are v1.0+ . It would make sense to have v1.0+ screen enabled by default. The most simple for the users would be to have different files on github for the different hardware releases to download.

I could download a test-image before midnight UTC these day (before it gets deleted) and repot later. Please link the test image here so that i could download it. I am new to the project and do not know where the the test images are normally at.

The test is available at

with SHA: 1990b8

@gjkm Let us know if and how the OLED display is working for you.

Two hours passed. I checked the link you posted again, but there is no firmware file to download.
I searched (ctrl + f) for SHA with the number 1990b8 but was not able to find both things on the website. Can you post the link to the file?

What page do you get when you go to the link above? Doesn’t it say

Theengs OpenMQTTGateway DEVELOPMENT SHA:1990b8 TEST ONLY

at the top for you? Maybe clear your browser cache or force reload.

Then use the web installation popup to chose the togo-t-beam binary for an upload. If you leave Erase Flash unticked you will keep your previously entered WiFi and MQTT settings.

Yes, the naming changed now and the name is 1990b8 on the top left of the website you linked.
But there are still no files to download. There is nothing to “untick” on the website.
Could you send me just the direct link to the file or files i have to download? I think the test-firmware would have the ending .bin . So like this example-link here: https ://github.com/espressif/arduino-esp32/raw/2.0.5/tools/partitions/boot_app0.bin
I press it, and i get the firmware file.

Ok, so you are not able to do a web upload then with the Chrome or Edge browser.

Can you download this?

https://github.com/1technophile/OpenMQTTGateway/raw/a93e282a917fbb4c405779e998d2ecc06a260095/docs/ttgo-t-beam.zip

Thanks. Got the zip file. This is its content with calculated sha256sum:
b4693b4e486573ecfa0759a078c61cc04850041a4e8cf31aa407aca590d62b0e firmware.bin
0a8b5720e7b77ff11f1462458c3a509dee79224e5279898f26d6a2e3ae0517b7 partitions.bin

I would reuse the bootloader from release 1.8.1 and flash it.

Yes, unzip it for the firmware.bin and that should work, but I honestly haven’t flashed that way in a very long time :wink:

I tested the image. I wiped the complete esp memory first, then flashed bootloader, partitions and firmware.
This is the working (not crashing) result with v1.8.1:

ets Jul 29 2019 12:21:46
rst:0x1 (POWERON_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DIO, clock div:2
load:0x3fff0030,len:1184
load:0x40078000,len:13192
load:0x40080400,len:3028
entry 0x400805e4
N:
************* WELCOME TO OpenMQTTGateway **************
[ 597][E][Preferences.cpp:50] begin(): nvs_open failed: NOT_FOUND
N: SYS config not found
N: OpenMQTTGateway Version: v1.8.1
N: No config file found defining default values
N: No config in flash, launching wifi manager
N: Attempting Wifi connection with saved AP: 0
[ 762][E][WiFiSTA.cpp:317] begin(): connect failed! 0x300a
N: Attempting Wifi connection with saved AP: 1
[ 1769][E][WiFiSTA.cpp:317] begin(): connect failed! 0x300a
N: Attempting Wifi connection with saved AP: 2
[ 2776][E][WiFiSTA.cpp:317] begin(): connect failed! 0x300a
N: Attempting Wifi connection with saved AP: 3
[ 3783][E][WiFiSTA.cpp:317] begin(): connect failed! 0x300a
N: Attempting Wifi connection with saved AP: 4
[ 4790][E][WiFiSTA.cpp:317] begin(): connect failed! 0x300a
N: Connect your phone to WIFI AP: OMG_ESP32_BLE_LORA with PWD:
*wm:AutoConnect
*wm:No wifi saved, skipping
*wm:AutoConnect: FAILED
*wm:StartAP with SSID: OMG_ESP32_BLE_LORA
*wm:AP IP address: 192.168.4.1
*wm:Starting Web Portal

and this is the crashing output from the firmware from today:

ets Jul 29 2019 12:21:46
rst:0xc (SW_CPU_RESET),boot:0x12 (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DIO, clock div:2
load:0x3fff0030,len:1184
load:0x40078000,len:13192
load:0x40080400,len:3028
entry 0x400805e4
N:
************* WELCOME TO OpenMQTTGateway **************
[ 581][E][Preferences.cpp:50] begin(): nvs_open failed: NOT_FOUND
N: SYS config not found
N: SSD1306 config initialised
[ 583][E][Preferences.cpp:50] begin(): nvs_open failed: NOT_FOUND
N: No SSD1306 config to load
Guru Meditation Error: Core 1 panic’ed (LoadProhibited). Exception was unhandled.
Core 1 register dump:
[…]

Then there must be some issue with your upload and the supplied firmware.bin file.

Don’t you have any possibility at all to use the web installer or an ESP Flasher which only requires a firmware.bin?

If not, you might have to wait until someone else might be able to supply you with some correct files for you installation process.

Of course i can just flash the firmware.bin and reuse also the partitions.bin from release 1.8.1 if this is the idea you had.

I have found your code changes here: Commits · 1technophile/OpenMQTTGateway · GitHub

I took a look at (Option 4) Build from the web | Theengs OpenMQTTGateway DEVELOPMENT SHA:1990b8 TEST ONLY but the website https://gitpod.io/ does not work ( Error: Forbidden Your client does not have permission to get URL / from this server. ).
I would have to build everything local if i would have to try out your code on my own.

I think this might be a good idea for you anyway, especially with trying to get your Ethernet interface working inserted of using WiFi. Using the Olimex binary will not work, as this environment uses a completely different board definition.

So until someone else with a LILYGO T-Internet-POE might create a separate environment for this device your best bet will be to create a custom environment yourself with PlatformIO in Visual Studio Code.

This would also allow you then to include the changes I submitted for the test build.

Is this some kind of region restriction for you, or with which browser did you try to access gitpod?

And in case you do get it to work with gitpod or locally with platformIO, the condensed changes to the T-Beam environment are