ESP32 LilyGo-T output op display ipv serieel.

Ik gebruik voor Home Assistant esp32_get_irk op een ESP32 LilyGo-T boardje om de irk te krijgen van apparaten. Dit werkt.

https://github.com/fryefryefrye/Decoding-Random-Bluetooth-Address/blob…

Deze code is een beetje raar opgezet voor mij, in de .ino staat alleen: #include "esp32_get_irk.h"
Alle code staat in esp32_get_irk.h

Nu heeft dit bordje ook een display en wil ik de huidige output via de serieele poort op het display tonen. Waar moet ik de code voor het display toevoegen, in de .ino of in de .h file ?

It's the rule that you live by and die for It's the one thing you can't deny Even though you don't know what the price is. It is justified.
benleentje

Golden Member

Dat zou gewoon in de main() dus in de .ino moeten

Als het een .ino is, dan IS er geen "main()" voor de gebruiker beschikbaar.

Van origine hoort er geen code in .h te staan. Alleen definities en dat soort dingen.

In C++ zijn er class definities gekomen die enerzijds in de headers horen, anderzijds toch code bevatten. Kennelijk heeft iemand dat tot in het extreme doorgetrokken.

De compiler kan het geen biet schelen waar het staat.

four NANDS do make a NOR . Kijk ook eens in onze shop: http://www.bitwizard.nl/shop/

Voorlopig heb ik na wat experimentjes gisteren een ander probleem:

Na het uploaden wat foutloos gaat krijg ik na de reset:

rst:0x1 (POWERON_RESET),boot:0x1 (DOWNLOAD_BOOT(UART0/UART1/SDIO_FEI_REO_V2))
waiting for download

En word de ingeladen code dus niet uitgevoerd. De oplossing die ik online tegen kom werkt bij mij niet aangezien ik die optie niet in het menu heb.

- plugging the device
- open Arduino IDE
- Select the correct board. In my case ESP32S3
- From the "Tools" menu, select "USB CDC On Boot" to ENABLED

It's the rule that you live by and die for It's the one thing you can't deny Even though you don't know what the price is. It is justified.

Leeg gooien van de flash voor programeren helpt ook niet, blijft "Waiting for download"

Sketch uses 1088413 bytes (83%) of program storage space. Maximum is 1310720 bytes.
Global variables use 45700 bytes (13%) of dynamic memory, leaving 281980 bytes for local variables. Maximum is 327680 bytes.
esptool.py v4.6
Serial port /dev/cu.usbserial-58AF0026411
Connecting.....
Chip is ESP32-D0WDQ6 (revision v1.1)
Features: WiFi, BT, Dual Core, 240MHz, VRef calibration in efuse, Coding Scheme None
Crystal is 40MHz
MAC: a0:dd:6c:b1:0a:e0
Uploading stub...
Running stub...
Stub running...
Configuring flash size...
Erasing flash (this may take a while)...
Chip erase completed successfully in 35.7s
Compressed 24896 bytes to 16262...
Writing at 0x00001000... (100 %)
Wrote 24896 bytes (16262 compressed) at 0x00001000 in 2.0 seconds (effective 101.0 kbit/s)...
Hash of data verified.
Compressed 3072 bytes to 146...
Writing at 0x00008000... (100 %)
Wrote 3072 bytes (146 compressed) at 0x00008000 in 0.1 seconds (effective 350.3 kbit/s)...
Hash of data verified.
Compressed 8192 bytes to 47...
Writing at 0x0000e000... (100 %)
Wrote 8192 bytes (47 compressed) at 0x0000e000 in 0.1 seconds (effective 556.1 kbit/s)...
Hash of data verified.
Compressed 1095120 bytes to 680324...
Writing at 0x00010000... (2 %)
Writing at 0x0002402b... (4 %)
Writing at 0x0002f9f4... (7 %)
Writing at 0x000397e3... (9 %)
Writing at 0x0003e754... (11 %)
Writing at 0x00045a57... (14 %)
Writing at 0x000531ae... (16 %)
Writing at 0x00058732... (19 %)
Writing at 0x0005dbf8... (21 %)
Writing at 0x00063540... (23 %)
Writing at 0x00068c29... (26 %)
Writing at 0x0006e0db... (28 %)
Writing at 0x0007339b... (30 %)
Writing at 0x0007854a... (33 %)
Writing at 0x0007d8db... (35 %)
Writing at 0x00082d8f... (38 %)
Writing at 0x0008848a... (40 %)
Writing at 0x0008d88e... (42 %)
Writing at 0x000929e9... (45 %)
Writing at 0x00097bfb... (47 %)
Writing at 0x0009cdc5... (50 %)
Writing at 0x000a2295... (52 %)
Writing at 0x000a78ad... (54 %)
Writing at 0x000ad0db... (57 %)
Writing at 0x000b28e5... (59 %)
Writing at 0x000b7c2f... (61 %)
Writing at 0x000bce2f... (64 %)
Writing at 0x000c2591... (66 %)
Writing at 0x000c7d68... (69 %)
Writing at 0x000cd135... (71 %)
Writing at 0x000d26b1... (73 %)
Writing at 0x000d8366... (76 %)
Writing at 0x000ddcdf... (78 %)
Writing at 0x000e36c1... (80 %)
Writing at 0x000ebf67... (83 %)
Writing at 0x000f48bc... (85 %)
Writing at 0x000f9d35... (88 %)
Writing at 0x000fee68... (90 %)
Writing at 0x0010805e... (92 %)
Writing at 0x0010d7e4... (95 %)
Writing at 0x00112e9b... (97 %)
Writing at 0x00118583... (100 %)
Wrote 1095120 bytes (680324 compressed) at 0x00010000 in 66.0 seconds (effective 132.7 kbit/s)...
Hash of data verified.

Leaving...
Hard resetting via RTS pin...
It's the rule that you live by and die for It's the one thing you can't deny Even though you don't know what the price is. It is justified.
PE9SMS

Golden Member

Ik meen dat er bij Arduino projecten wel vaker code in .h files staat. Dit omdat er in de Arduino IDE geen andere mogelijkheden zijn om code op te splitsen, zoals je dat normaal met meerdere .c files doet.

This signature is intentionally left blank.

Heb je misschien een van de "strapping pins" in je sketch gebruikt ? Sommige ESP32 pinnen moeten bij het booten op een bepaald niveau staan, of je hebt problemen. http://wiki.fluidnc.com/en/hardware/ESP32-S3_Pin_Reference
Overigens kan je in een Arduino sketch perfect .C en .h files gebruiken, gewoon als extra file openen en in de juiste sketch directory plaatsen. De h file moet je dan includen.

Op dinsdag 17 september 2024 20:52:34 schreef PE9SMS:
omdat er in de Arduino IDE geen andere mogelijkheden zijn

Dit omdat sommigen niet weten HOE (me included, bovenstaande uitleg ben ik reeds vergeten :-) ).

four NANDS do make a NOR . Kijk ook eens in onze shop: http://www.bitwizard.nl/shop/
PE9SMS

Golden Member

This signature is intentionally left blank.

rst:0x1 (POWERON_RESET),boot:0x1 (DOWNLOAD_BOOT(UART0/UART1/SDIO_FEI_REO_V2))
waiting for download

Dit is opgelost door GPIO0 met 10K aan de 3V3 te hangen. Schijnbaar is de interne pullup op die pin beschadigd / uitgeschakeld.

Ik heb wat code aan de .h file toegevoegd en nu werkt het. Ik ga de code nog uitbreiden en dan zet ik het op mijn github pagina.

It's the rule that you live by and die for It's the one thing you can't deny Even though you don't know what the price is. It is justified.

De code is praktisch af, maar de module blijft inmiddels continue in "waiting for download" hangen ook met de externe pullup op GPIO0.

Kortom ik kan deze modules niet aanraden, een LilyGo-T clone voor ongeveer 5€ via Ali is misschien ook wat teveel gevraagd...

Heb inmiddels een officiële besteld bij LilyGo zelf.

https://www.lilygo.cc/products/lilygo%C2%AE-ttgo-t-display-1-14-inch-l…

It's the rule that you live by and die for It's the one thing you can't deny Even though you don't know what the price is. It is justified.

Tiny in EHV heeft deze ook, voor amper meer, misschien nuttig voor de volgende keer. En als ie dan doorgefrituurd is, heb je garantie.

Benje wel zeker dat het hier een ESP32 S3 betreft ? Ik heb een identiek bordje met de gewone ESP32, deze werkt probleemloos. Deze link : https://www.lilygo.cc/products/lilygo%C2%AE-ttgo-t-display-1-14-inch-l…

@Blanka bedankt voor de tip. @RP6conrad: die uit je link heb ik nu besteld.

Dit is het bordje wat ik nu van Ali heb.

https://nl.aliexpress.com/item/1005005970553639.html

It's the rule that you live by and die for It's the one thing you can't deny Even though you don't know what the price is. It is justified.

Dit lijkt mij een bordje met de gewone ESP32, dan moet je in de Arduino IDE een andere processor kiezen : ESP32 DEV Module.
Zeker de benaming CH9102 laat vermoeden dat er een USB-Serial converter gebruikt wordt, dit wordt normaal niet gebruikt bij de ESP32-S3, omdat deze native USB CDC ondersteund.

Ik gebruik idd: ESP32 DEV Module in mijn Arduino omgeving.

Het bordje van Tiny lijkt heel veel op het bordje van Ali wat ik heb.

https://www.tinytronics.nl/nl/development-boards/microcontroller-board…

Het bordje van LilyGo zelf ziet er duidelijk anders uit.

https://www.lilygo.cc/products/lilygo%C2%AE-ttgo-t-display-1-14-inch-l…

It's the rule that you live by and die for It's the one thing you can't deny Even though you don't know what the price is. It is justified.