-
Notifications
You must be signed in to change notification settings - Fork 964
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Boot issue fix of Cardkb on ESP32 #3933
Conversation
I see that the |
I did try but it the re-scan happens so fast that same problem, and I can't use delays cause it affects the serial boot. I was only able to make it work this way. |
You could potentially run setIntervalFromNow() to delay the thread. Some modules like NodeInfoModule do this to delay initialization |
@HarukiToreda @thebentern can someone please test that ? i am currently out of cardkb. but copilot said this should absolutely work, no questions there! :-) |
src/detect/ScanI2CTwoWire.cpp
Outdated
@@ -163,6 +163,10 @@ void ScanI2CTwoWire::scanPort(I2CPort port) | |||
#endif | |||
|
|||
for (addr.address = 1; addr.address < 127; addr.address++) { | |||
// Skip the address if it is not requested oon a partial scan | |||
if (sizeof(address) > 0 && addr.address != *address) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
i susupect this is wrong though. need an 'in_array' type of comparison
It works but I think something may have broken on the BME680 Sensor. It's disabling after detected. [EnvironmentTelemetryModule] DEBUG | ??:??:?? 11 [Screen] Finished building frames. numframes: 7 |
nevermind, this is an unrelated issue. mentioned on in 3938. The keyboard works fine |
could someone else please test. It works for me for both Wireless Stick Lite and Heltec V3 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I rewrote parts of the scanner to just scan for ID's specified. Somehow you reverted my deletes of your code, and now it's doing both approaches at the same time.
My idea was to scan during cardKB init again if the cardkb was net detected before, not do it 10 times at the end of main.cpp ...
@HarukiToreda can you test this latest code? it's working for me on the m5stack with cardkb. |
Just tested on both Heltec V3 and Wireless tracker with cardkbs. It works perfectly. |
I was able to fix the issue and tested it on Heltec V3, Wireless Stick Lite and Tdeck, no boot issues and keyboard works with no problems. This is regarding the issue #3749