Wahoo Kickr Bike - External Gear Display

Many thanks for your reply Nikolaus,
this time was going better until a liitle bit before finish a new error appears

Sketch uses 1637541 bytes (124%) of program storage space. Maximum is 1310720 bytes.
Global variables use 40784 bytes (12%) of dynamic memory, leaving 286896 bytes for local variables. Maximum is 327680 bytes.
Sketch too big; see h**ps://support.arduino.cc/hc/en-us/articles/360013825179 for tips on reducing it.
text section exceeds available space in board

Compilation error: text section exceeds available space in board

I visited the sugest link but I didn’t find something that I know to do it
that is a little bit before the error message

What I am doing wrong now?

Seems like you have selected the wrong Board (not ESP32S3) and check your settings.

This is awesome. Super happy to have a desktop option to have gear display

Hi Frank.

In regards to your noise, I had something that sounds very similar. At the bottom phase of every fourth pedal rotation there was what sounded like a sound of metal and plastic rubbing, coming from the crank area. I have done two rides now and the noise has diminished. If it doesn’t go away completely I will look to disassemble that front part (the shroud around what would be the chainring on a “proper” bike) to see what is happening.

Did you sound reduce or go away completely?

Stephen

Hi Stephen,
yes indeed. After three one hour rides, the sound is not that prominent any more.
But I will have an eye on it.
Riding now, the noise sound more like I saw it in all the youtube reviews of the kickr bike shift.
With that I can live now. Hope you figure it out.
Frank

sorry to bother you again but did they send me the wrong board

the differnce from S3 to C3 is the proseccor of the board
does it realy matters because i try to upload the sketch as esp32 S3 and as esp32 C3
both tries ressults as an error
Error with ESP32 S3
In file included from C:\Users\Tasso\OneDrive\Documents\Arduino\wahoo-kickr-bike-shift-display-main\wahoo-kickr-bike-shift-display\wahoo-kickr-bike-shift-display.ino:6:
C:\Users\Tasso\AppData\Local\Arduino15\libraries\TFT_eSPI/TFT_eSPI.h:302:21: error: ‘VSPI’ was not declared in this scope
uint8_t port = VSPI;
^~~~
C:\Users\Tasso\AppData\Local\Arduino15\libraries\TFT_eSPI/TFT_eSPI.h:302:21: note: suggested alternative: ‘SPI’
uint8_t port = VSPI;
^~~~
SPI

exit status 1

Compilation error: exit status 1

Error with ESP32 C3
In file included from C:\Users\Tasso\OneDrive\Documents\Arduino\wahoo-kickr-bike-shift-display-main\wahoo-kickr-bike-shift-display\wahoo-kickr-bike-shift-display.ino:6:
C:\Users\Tasso\AppData\Local\Arduino15\libraries\TFT_eSPI/TFT_eSPI.h:302:21: error: ‘VSPI’ was not declared in this scope
uint8_t port = VSPI;
^~~~
C:\Users\Tasso\AppData\Local\Arduino15\libraries\TFT_eSPI/TFT_eSPI.h:302:21: note: suggested alternative: ‘SPI’
uint8_t port = VSPI;
^~~~
SPI

exit status 1

Compilation error: exit status 1

So success also by commenting all the stuff out, I do not need:
Also installed a slightly larger Font at 85 for the gear numbers.

Thx again stareat and Kudos for your work and help!

Frank

1 Like

Have a look in the User_Setup_Select.h file in your Arduino libraries and there into the Folder TFT_eSPI. Make sure, to uncomment the right board, the one you use and try uploading again.

For the Lilygo T-Display S3 there should be (without //):
#include <User_Setups/Setup206_LilyGo_T_Display_S3.h>

If you have a different board and you’ll find it inside the file, uncomment that and try!

where did you download the TFT_eSPI file?
I downloaded that one
h**ps://github.com/Xinyuan-LilyGO/TTGO-T-Display
because I am sure I have an older version and the wrong one.
Mine doesn’t have the “setup206” line it stops in Setup135
the uncomment line is
#include <User_Setups/Setup25_TTGO_T_Display.h> // Setup file for ESP32 and TTGO T-Display ST7789V SPI bus TFT

Untitled-1

Use the one directly from the espressif repo. (Link in the screenshot!

raw githubusercontent com / espressif / arduino-esp32 / gh-pages / package_esp32_dev_index.json

You should install “Arduino Release v2.0.14 based on ESP-IDF v4.4.6” then via Tools > Manage libraries!

Then you go to the \Arduino\libraries\TFT_eSPI Folder and edit the User_Setup_Select.h file like mentioned above!

Then try compiling and upload again, with the Arduino settings for Board, Flashsize etc. pp. like in the screenshot above!

PS: and delete the Lilygo lib you have copied before you install the new libs!

Friend let me tell you what i do
I install the program arduino ide version 2.2.1
then I go to file > preferences > Additional Boards Manager URLs
I put your link and in board manager DOESN’t have the ESP32 2.0.4 only the 3.0.0 and two other older
so I put the link stareat gives me
h**ps://espressif.github.io/arduino-esp32/package_esp32_index.json
then tools > board > board manager and i Instal esp32 version 2.0.4
what I do with tools > manage libraries you mentioned

The T-Pico C3 (h**ps://www.lilygo.cc/products/t-pico?variant=42295946641589) has the same (smaller) resolution as the LILYGO TTGO T-Display ESP32.

But it has its own libraries: h**ps://github.com/Xinyuan-LilyGO/T-PicoC3

Honestly I don’t know if my code will work as I have never used this board.

All … I have created a SOFTWARE only solution that should work for those running Windows.

Take a look at

h**ps://github.com/pwfulghum/KickrBikeInterceptor-Releases

And the companion Sauce for Zwift integration…

h**ps://github.com/pwfulghum/KickrBikeGearsS4ZMod

Tag me by name and I will get an email here.

@Ben_Nordstrom @Daniel_Palyka @ArcticZwifter tagged

3 Likes

the case of the board is that one

the board inside clearly says T-Display S3 in sticker and in board print

So the scenario with the wrong board is not realistic but clearly something i was doing wrong
I follow that tutorial (google translated to english)
h**ps://m.blog.naver.com/mmpj/223104077717

so i had the wrong TFT_eSPI files that the tutorial mentioned and managed to find the correct one here
h**ps://github.com/Xinyuan-LilyGO/T-Display-S3-AMOLED

with trial and error i managed to upload the sketch but I don’t think was correct because in the end it says hard resetting via RTS pin

and the board looks like this

keep in mind that the board connects to kickr bike shift but the display is wrong.
is it something with scaling because i checked the resolution is 320x170
thanks in advance

Hard resetting via RTS pin means your hardware will be automatically reset after uploading code. So everything is fine.

But normally the AMOLED version has a much higher resolution: 240 X 536

h**ps://www.lilygo.cc/products/t-display-s3-amoled

I uploaded you my folder TFT_eSPI:

file.io / u7l7d1PIka9x

Take it and you should be fine with compiling and upload.

1 Like

Seems like a normal ESP32-S3 1.9 inch ST7789 LCD Display
h**ps://fcc.report/FCC-ID/2ASYE-T-DISPLAY-S3

So my code and the original library should work.

the file has been deleted

can you upload the TFT_eSPI and your sketch with the adinional files (fonts etc.) because all i need is the gear sections

Strange that it is deleted.

Sure, but you have to change the name of your Kickr Bike in the

wahoo_kickr_bike_shift_display_ohne_Power.ino

File according to the name of the Bike in your Wahoo App!

h**ps://mega.nz/file/2ZI2HRbR#1ZTBjbhfqK1yQUEYRraTWztGhxc_a8Ulo5hbgeI0bLo

It has only Gear Text and Graph like shown in the posting above!

Hi Pat, first of all thanks for your solution.
To use with sauce for zwift and DIRCON wich programma do i need?
The KickrBikeInterceptor for connection and then KickrBikeGearsS4ZMod for display it on Sauce?

EDIT: just read that it uses BLE and sent it as DIRCON.