Support for TTGO ESP32 CH340K Bluetooth Module with 1.14" LCD #24
Replies: 3 comments
-
|
Hi, thanks for the interest. Short answer is that it is very very highly unlikely that this project will support any kind of direct display (though PRs are welcome in this respect). Any boards can be supported but the display will not. There are several reasons for this:
To be precise a few years ago (before maturing the WebGUI) I have given serious thoughts to add a DWIN or any kind of decently sized display that runs its own firmware and able to render graphics (like charts) properly. My reasoning was that its offline and provides "out of the box" experience. But then I decided to go down the WebGUI route because its cheaper more flexible and I felt that it no longer hinders this out of the box experience (its a progressive web app, meaning that it is works fully offline and installable like a native app with icons and everything at least on windows and Android). There are limitation on IOs unfortunately that is due to choices apple made in terms of supporting (or rather not supporting) certain web browser APIs. But in the shortly coming (may be a week or so) version 7 of the GUI, IPhone will be supported via using a special browser app downloadable from the app store. So currently I really dont see any reason for adding support directly connected displays. If you want a directly connected display I would recommend OpenRowingMonitor. It runs on a raspberry pi and it has "kiosk" mode that loads directly into the GUI and provides this "out of the box" feel when a display is connected. |
Beta Was this translation helpful? Give feedback.
-
|
Thanks a lot for your detailed and quick response. You are %100 correct, the tiny display on TTGO is useless. I have selected this upon discovering the existence of your application and own a Concept2 Model C, that is not anyway transfer data to Strava. Gemini 3.0 Pro suggested to buy me TTGO card and this is why I invested in this one. Lastly, I will try to modify your code without the built-in display to see if I can bypass the errors I'm receiving in VS Code. Thank you very much for your time and attention once more. Regards, Powderpark |
Beta Was this translation helpful? Give feedback.
-
Sorry I understand now. You want board support not the display. That is easy
I can help you with that :) You will need to create a board profile file: profiles/lilygo-t.board-profile.h #pragma once
#include "../utils/enums.h"
// NOLINTBEGIN(cppcoreguidelines-macro-usage, cppcoreguidelines-macro-to-enum)
// General settings
#define BAUD_RATE BaudRates::Baud1500000
// LED settings
#define LED_BLINK_FREQUENCY 1'000
#define LED_PIN GPIO_NUM_NC // It does not have a built in led so lets disable that for now
#define IS_RGB false
// Hardware settings
#define SENSOR_PIN_NUMBER GPIO_NUM_38 // you need to update this according to the pin you are connecting the sensor
#define SENSOR_ON_SWITCH_PIN_NUMBER GPIO_NUM_NC // Use GPIO_NUM_NC if no sensor switch is available
#define WAKEUP_SENSOR_PIN_NUMBER GPIO_NUM_NC // Use GPIO_NUM_NC if no separate wakeup pin is available
// Device power management settings
#define BATTERY_PIN_NUMBER GPIO_NUM_NC
#define VOLTAGE_DIVIDER_RATIO 2
#define BATTERY_VOLTAGE_MIN 3.3
#define BATTERY_VOLTAGE_MAX 4.00
#define BATTERY_LEVEL_ARRAY_LENGTH 5
#define INITIAL_BATTERY_LEVEL_MEASUREMENT_COUNT 10
#define BATTERY_MEASUREMENT_FREQUENCY 10
#define DEEP_SLEEP_TIMEOUT 4
// NOLINTEND(cppcoreguidelines-macro-usage, cppcoreguidelines-macro-to-enum)add this to the platformio.ini file: [lilygo-t-display-board]
monitor_speed = 1500000
board = lilygo-t-display
build_flags =
'-D BOARD_PROFILE="profiles/lilygo-t.board-profile.h"'
-O3[env:dynamic-lilygo-t-display]
extends = lilygo-t-display-board
build_flags =
${env.build_flags}
${lilygo-t-display-board.build_flags}
'-D ROWER_PROFILE="profiles/dynamic.rower-profile.h"'The dynamic profile will allow changing the rower settings in the WebGUI when calibrating. There is information on the settings here: https://github.com/JaapvanEkris/openrowingmonitor/blob/940489dccb0ed30c83dfb0dfef3d342fdb3eb186/config/rowerProfiles.js#L123 Please note that there is no 1-1 translation to ESPRM settings but it will be sufficient for you to start (go with 3 impulses per revolution as Model C has 3 magnets and inertia of 0.101. Use stroke detection type of TORQUE, IMPULSE_DATA_ARRAY_LENGTH=6. But once you can connect to the device in with the WebGUI you can export the delta times for offline simulation (so if you send me the file I can help you with the precise calibration).
While I personally dont have experience with Model C but in the ORM project there are people that made it working (so it should work with ESPRM as well): JaapvanEkris/openrowingmonitor#49 ; laberning/openrowingmonitor#38 laberning/openrowingmonitor#157 The tricky part is that the pickup that is used by the Model C will not directly work as it uses a very special method for detecting impulse. I recommend using a hall sensor instead. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
Hello,
I'd like to request support for the TTGO T-Display ESP32 (LilyGo T-Display) board.
Is this possible?
Thank you for considering this.
Powderpark
Beta Was this translation helpful? Give feedback.
All reactions