esilva 0f41e348c2 Added the window update command
- some other small misc stuff
2026-02-12 23:04:28 +00:00
2025-05-29 22:36:02 +01:00
2025-05-23 09:21:10 +01:00
2025-03-12 21:42:39 +00:00
2026-02-12 23:04:28 +00:00
2025-03-12 21:42:39 +00:00
2025-05-23 09:21:10 +01:00

CDashDisplay

The 'C' is for Cheap.

This project uses a cheap yellow display (ESP32-8048S043) as its foundation. It can be acquired for round 30-40€ on Aliexpress, for example.

Currently I have a way to mount it on a G29 because its what I have.

To drive it I one of my other projects: ESDI

Many thanks

example of the display

Assembly

It requires a very simple modification to the G29. The display will seat between the base and the steering wheel and for the stock G29 paddles to remain functional, the steering wheel must be spaced.

I used simple spacers that I had laying around with OD≃8mm and ID≃5mm. They will go on the screws that screw the wheel to the base: example of the display example of the display

Roadmap

  • Simhub support
  • Better layout tooling
  • Dynamic layout/data

Development

Debugging wires

CYD Serial Cable
Yellow [RX 18] Green
Blue [TX 19] White

The RX18 and TX19 pins are the IO18 and IO19 pins on the board and probably are labeled as UART1 and USB.

This is the Serial2 we define on main.cpp currently. Then we listen to it with something like ``.

Cool fonts I like:

  • u8g2_font_bubble_tr (really cool for splash screens)
  • u8g2_font_helvR10_tr (very readable, should really try this one)
  • u8g2_font_6x12_tf (monospace)

Weird font rendering stuff going on

When the cursor is set to a position, the text will actually render from the left bottom corner, so 0,0 will actually render text that can't be viewed. Solution, for now:

U8G2 u8g2;
u8g2.setFont(u8g2_font_9x18_tf);
int ascent = u8g2.getAscent();
// will probably vary from font to font tho, right now I'm using
// monospace and that's enough
S
Description
Cheap yellow display based dash for simracing
Readme GPL-3.0
66 MiB
Languages
C 76.1%
C++ 23.9%