Comments (14)
Version 1.0.0 released!
from nimble-arduino.
You will also need to open an issue in arduino github: https://github.com/arduino/Arduino/issues pointing to this repo. But yes, that's about it.
from nimble-arduino.
I don't know if it fits here but is there a plan to publish this library to the Arduino library manager? I think this would tremendously expand user base and as a result - improve the library thanks to more testing.
from nimble-arduino.
Yes this is planned. If I’m not mistaken as soon as I slap a release tag on, the library manager should pick it up automatically.
from nimble-arduino.
Looks like arduino library manager doesn’t work with Submodules so I’ll test with subtrees and see if that works.
from nimble-arduino.
@h2zero a github action or a travis job can pull those submodules, perform some code quality checks and unit/compilation tests then create the release tarballs for you
on push/pull request = perform check + tests
on tag = perform check + tests + create tarball
from nimble-arduino.
@tobozo that’s a great idea, thanks! I’ll look into that. I’m not very familiar with Travis yet, good opportunity to learn more about it.
from nimble-arduino.
it's probably the worst implementation ever but here's a travis example I'm using to get arduino-ci to compile a few test sketches (see before_deploy
and deploy
) and create a tarball, a bit useless since this project doesn't have submodules, but still a valid example since travis automatically performs a submodule update.
if you plan to use a github action instead, the upload-releas-asset action is a good start
from nimble-arduino.
Thanks @tobozo, I'll give that a try when I get some time.
from nimble-arduino.
I just came here to express my deepest gratitude for making this library. BLE resource consumption is currently one of the biggest pain points IMHO.
One thing I'd consider an improvement still would be the switch from std::string to String throughout the API. Is this something worth discussing?
from nimble-arduino.
@everslick This would not be an improvement :-) I personally try to never use arduino Strings, ever. Here is an interesting article why that is the case: https://majenko.co.uk/blog/evils-arduino-strings
from nimble-arduino.
@lknop All that is said about String
in this article, is also (and even more so) true for std::string
. String
has some optimizations for MCU platforms and I'd expect some improvements in memory consumption by replacing std::string
with String
. Besides it would improve Arduino compatibility, because one would not need to convert between types so often. String
is great when used wisely - most important: preallocate enough mem with resize()
before concatenation and pass String
objects around via reference or const
reference whenever possible. So avoiding String
just because will very likely increase your codesize. Look at the implementation of String
and you will see that it is a very well implemented class
. Just my 2 cents. ;-)
from nimble-arduino.
@everslick point taken, I just thought that it's in the same ballpark so that would give little advantage. I never got to analysing the String implementation, that's a good idea for a long evening, maybe I'll find time for it this weekend, thanks.
Nevertheless I think I read that @h2zero 's main interest is the esp-idf implementation and the Arduino port is secondary, so I assume it would not be welcome to let those two drift apart, but I may be wrong. I wonder if you are right that it would really be less heap-hungry to use String rather than std::string.
from nimble-arduino.
Hi @everslick, I agree that using String
would be better in Arduino. The problem with is it's not usable outside of Arduino.
This library is a mirror of the esp-idf library and changing this to use String
here would break that relationship and would need to be maintained separately. That is something I'm not too keen to do. I think it's best to stick to the STL as much as possible.
from nimble-arduino.
Related Issues (20)
- How to get current PHY mode HOT 4
- Name clash of `const char *TAG` with Arduino core macro `TAG`. HOT 5
- ESP32-S3 Extended Advertising: Capturing Packets HOT 4
- Error compile Arduino BLE 5 example for ESP32 HOT 5
- API change - feature test macro missing HOT 2
- Error in converting EddystoneTLM negative temperatures to float HOT 4
- ESP32-S3 crash with arduino-esp32 core 3.x.x HOT 28
- The future of this repo... new ESP MCU's cannot be supported. HOT 3
- NimBLE-Arduino crashes with esp32 version 3.0.1. and a LilyGo T-display S3 HOT 4
- NimBLE-Arduino debug exception when trying to initialize BLE functions HOT 3
- Crash with 'Arduino Nano ESP32' on core ESP32 3.0.1 with NimbleV1.4.2 HOT 2
- BLE SERVICE and WiFi.scanNetworks not wokring simulteneously HOT 3
- GAP server event to get client rssi HOT 2
- increasing heap consumption over time HOT 12
- NimBLE-Arduino 1.4.2: problem with device name? HOT 1
- How to pass correct hid device name HOT 8
- esp_bt.h: No such file or directory HOT 3
- Cannot set TX power to +8dbm for nRF52840 HOT 3
- NRA connection on NON-esp device (NRF81522)
- NimBLEAddress initialization failure with 17bytes address string HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from nimble-arduino.