NimBLE port for ESP32
NimBLE port for ESP32
Hi.
I'm working on NimBLE por for ESP32.
https://github.com/jaracil/nimble-esp32
NimBLE is a complete BLE (Bluetooth Low Energy) lightweight and cleaner library.
https://github.com/apache/mynewt-nimble
It uses ~170K less program memory than bluedroid.
There is still a lot of work, but for now, the example compiles and works.
Any help is welcome
I'm working on NimBLE por for ESP32.
https://github.com/jaracil/nimble-esp32
NimBLE is a complete BLE (Bluetooth Low Energy) lightweight and cleaner library.
https://github.com/apache/mynewt-nimble
It uses ~170K less program memory than bluedroid.
There is still a lot of work, but for now, the example compiles and works.
Any help is welcome
-
- Posts: 42
- Joined: Wed Dec 09, 2015 6:39 pm
Re: NimBLE port for ESP32
Looks awesome! I'm just gearing up for a new project and will give this a spin for the BLE needs.
-
- Posts: 16
- Joined: Fri Sep 28, 2018 3:06 am
Re: NimBLE port for ESP32
Hi there,
Great to hear that you are working on NimBLE. As of now, we have an almost ready implementation of NimBLE stack ported onto ESP-IDF, along with a few sample examples. The features that are already tested are: Peripheral role (GATT Database Population, Advertisement, Handling Characteristic and Descriptor read/write, Notifications/Indications), Central role (Scanning, Discovery, Characteristic and Descriptor read/write, Subscription to Indications/Notifications) and BLE SMP. In this effort, we have also tried to make it cleaner and simpler by maintaining all the existing APIs of NimBLE along with a single ESP-NimBLE API for initialization.
Currently it is in the process of QA. It should be out on the Github soon.
Thanks,
Hrishikesh
Great to hear that you are working on NimBLE. As of now, we have an almost ready implementation of NimBLE stack ported onto ESP-IDF, along with a few sample examples. The features that are already tested are: Peripheral role (GATT Database Population, Advertisement, Handling Characteristic and Descriptor read/write, Notifications/Indications), Central role (Scanning, Discovery, Characteristic and Descriptor read/write, Subscription to Indications/Notifications) and BLE SMP. In this effort, we have also tried to make it cleaner and simpler by maintaining all the existing APIs of NimBLE along with a single ESP-NimBLE API for initialization.
Currently it is in the process of QA. It should be out on the Github soon.
Thanks,
Hrishikesh
Re: NimBLE port for ESP32
Cool! I stop my nimble port waiting for your news.
-
- Posts: 16
- Joined: Fri Sep 28, 2018 3:06 am
Re: NimBLE port for ESP32
Hello All,
The NimBLE preview release is out on Github: https://github.com/espressif/esp-idf/tr ... le-preview
The sample examples can be found here: https://github.com/espressif/esp-idf/tr ... oth/nimble
The NimBLE preview release is out on Github: https://github.com/espressif/esp-idf/tr ... le-preview
The sample examples can be found here: https://github.com/espressif/esp-idf/tr ... oth/nimble
-
- Posts: 42
- Joined: Wed Dec 09, 2015 6:39 pm
Re: NimBLE port for ESP32
Super cool! nice work all around. I spend some time yesterday evening digging into this branch and the results are good!
First off, it's quite a bit easier to use than Bluedroid, I reduced my overall code by about half.
I was able to follow the heart rate example easily and within about 30 minutes had setup functional Battery Service.
Nice work, I look forward to this making it into mainline.
First off, it's quite a bit easier to use than Bluedroid, I reduced my overall code by about half.
I was able to follow the heart rate example easily and within about 30 minutes had setup functional Battery Service.
Nice work, I look forward to this making it into mainline.
-
- Posts: 16
- Joined: Fri Sep 28, 2018 3:06 am
Re: NimBLE port for ESP32
Thanks for the report. Feel free to play around with the stack/examples and submit any feedback/issues.
Just FYI, if you didn't use this, NimBLE stack has the support for a few profiles (https://github.com/espressif/esp-nimble ... t/services) and battery service is one of them.
You can directly call the API ble_svc_bas_init() from the example and you are done.
Just FYI, if you didn't use this, NimBLE stack has the support for a few profiles (https://github.com/espressif/esp-nimble ... t/services) and battery service is one of them.
You can directly call the API ble_svc_bas_init() from the example and you are done.
-
- Posts: 42
- Joined: Wed Dec 09, 2015 6:39 pm
Re: NimBLE port for ESP32
Yup, did see that and mostly what I used as my basis. Working on adding a couple more services and will report on any issues I have.
Re: NimBLE port for ESP32
Any idea if/when this will make it into mainline? The code size reductions would be fantastic.
Update: Sorry, didn’t notice that the dates on this topic we’re so recent. It makes me look extremely impatient! I’ve been playing around with some builds of NimBLE and have been impressed. You all did a fantastic job with the integration!
Update: Sorry, didn’t notice that the dates on this topic we’re so recent. It makes me look extremely impatient! I’ve been playing around with some builds of NimBLE and have been impressed. You all did a fantastic job with the integration!
Who is online
Users browsing this forum: Baidu [Spider], Bing [Bot], MicroController and 91 guests