-
-
Notifications
You must be signed in to change notification settings - Fork 150
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
The future of this repo... new ESP MCU's cannot be supported. #685
Comments
Removed NimBLE-Arduino as it is no longer going to be supported on ESP32 CPUs. See h2zero/NimBLE-Arduino#685. Implemented BLE device-to-device communication using JSON encoded data. Later I will put the message handling code into BLEMessaging.cpp and .h. Inveigle starts a CatsPlay experience based on RSSI distance values from BLE.cpp. BLE now runs a server and client on the device - same for a nearby device. Inveigle uses BLE to see if it received a Pounce from another cat. CatsPlay experience SetUp determines the heading to the other device and plays 1 of 8 videos where the cat looks to the other cat. Run will let the user make a TOF gesture to send a Pounce method to the other device, and making no gestures after 10 seconds runs TearDown to show the cat video ending the play. In a future update BLE shares the local RTC time between devices. If one device has valid time them the other one uses the same. I'm doing this just in case the device is not tracking GPS satellites, nor using NTP over Wifi, so the watch wearer doesn't have to set the time.
Sorry to hear that.
Maybe I'm a bit suspicious. Espressif dropped BlueDroid in favor of Nimble in the ESP32-S3. Now they have their own NimBLE-Arduino implementation in ESP-Arduino which, by the way, does not work properly (at least, for me). Their implementation "features" the same bug I fixed here some time ago. I moved to the ESP32 platform because of a blocking bug in the Arduino Nano that never got attention. If Espressif does the same thing, I will quit home-made projects.
This is not an option for me. Let me explain. I have no problem to work with ESP-IDF, but the average DIY enthusiast will never touch a home-made project if such a tool is involved. I need to keep my projects accesible to a wide audience, which includes non-IT people.
We are in debpt with you. Thanks for your hard work. Permit me to forecast. If Espressif tampers with the most widely used Bluetooth library for Arduino, their sales will not go very far. |
Thank you @afpineda for your support! I'm incredibly grateful to all of you for the support and contributions. |
For anyone who may consider it usefulI've built ArduinoBLE recently for ESP32-C6 target and Arduino Core 3.0.4. It needs to apply a minor patch: arduino-libraries/ArduinoBLE#364 My use case (HM-10 compatible BLE UART) boots and works nicely on ESP32-C6 afterwards.
Positive effect of using ArduinoBLE as a replacement for Bluedroid with ESP32-C6 and Arduino Core 3.0.4 is saving approx. 450 Kbytes of flash memory space and approx. 40 Kbytes of RAM. |
@lyusupov I am very interested. Did you test NimBLE on ESP32-C6 BLE without using the HM-10? Could you please help me in the process? If you are available, please let me know how I can get in touch. Thanks |
My apologies to all, I cannot find a workaround for the upstream changes that have affected this repo's ability to work with arduino-esp32 core and the new C6/H2/C2 MCU's. The issue I created espressif/arduino-esp32#9835 has been relegated to a discussion, where there is essentially no visibility, so I have now closed it 😞.
This marks the end of my support for NimBLE on the esp32 platform for Arduino, I will continue to maintain this as best as I can for the chips that can use it, the latest Espressif devices and future one will not be supported here, unless I can find a way to get around the roadblocks.
I suggest to you all... plead actually... move on from Arduino, it's great to start from, but you can do better. Use IDF directly and esp-nimble-cpp with Arduino as a component if you want to use the work here, as I will always be able to support this via wrapping the underlying NimBLE stack. Better yet use PlatformIO with idf and arduino and link esp-nimble-cpp as a lib_dep :) I'll make some instruction for this in the near term.
Thank you all for the incredible support, I've put in thousands of hours to make this work and it always puts a big smile on my face to see people recommending/using and submitting issues to this repo.
The text was updated successfully, but these errors were encountered: