New firmware release 1.3.0.b1
-
Hello everyone,
On this release we have added support for the RTC and for the BLE GATT server. These are the notes:
- esp32: BLE GATT Server API with callback method for characteristics.
- esp32/mods/: support RTC, enable missing utime functions, store files with valid timestamps.
- esp32/mods/pybadc.c: remove leftover bit shift from CC3200, 12 bit works now.
- esp32: General reliability improvements to threading.
- py: Create MICROPY_PY_THREAD_GIL_DIVISOR constant to optimize GIL lock/unlock process.
- esp32.mods/machpin: Add pin hold() method.
- esp32/mods/moucrypto.c: Add hardware RNG as getrandbits().
- esp32/mods/machtimer.c: Implement sleep_us().
Check this example that shows how to create a functional BLE peripheral with just a few lines of code:
https://docs.pycom.io/pycom_esp32/library/network.Bluetooth.html#network.service.callback
Please check the docs for the now pretty much complete time module:
https://docs.pycom.io/pycom_esp32/library/utime.html
The newly added RTC class:
https://docs.pycom.io/pycom_esp32/library/machine.RTC.html
I hope that you find the new features useful, specially the ones for BLE. We are mindful that Bluetooth is a huge thing, so we will be adding more functionality to it every week.
Cheers,
Daniel -
This is going to be great!
I have waited for this for so long!
Thanks @daniel and the pycom team!Cheers,
M. -
LoPy update went smooth.
I see free RAM is reduced a bit again, it is 32k.
-
@daniel Great features! Congrats for the Dev Team! Btw, I've got a question about
rtc.inittzinfo argument. How to use it? Thanx -
Hi @daniel
I have started to code for the new1.3.0.b1this morning and I just noticed that there is no event type for BLE Characteristic subscription, probably namedCHAR_SUBSCRIBE_EVENT.
Am I missing something? If not, do you have a plan for it in the near future?Also, it wouldn't hurt if we know when a peripheral has been connected to BLE server too!
One more thing I want to suggest is that to keep the convention of your syntax uniform. Most (I'm to sure if all) call back functions have this syntax:
callback(event_handler, event_type, ...)but the characteristic callback iscallback(event_type, event_handler,...)
I'm not sure if the function's argument list is important to the functionality itself. I'm not very python say :) -
The download section of the homepage is still with 1.0.0.b3 What is the update frequency here?
Great that RTC is working now!
-
@rvandam The updater downloads the latest firmware. The updater version is not the firmware version.
-
@bmarkus yes, we are aware if this issue, and it's on the top of our list to bring the available RAM to around 96Kb once Espressif starts optimizing the IDF. They have assured us that it will be possible.
-
@daniel said in New firmware release 1.3.0.b1:
@bmarkus yes, we are aware if this issue, and it's on the top of our list to bring the available RAM to around 96Kb once Espressif starts optimizing the IDF. They have assured us that it will be possible.
God save us!
-
Good job guys!
Can you give us a forcast about the release date of the sleep modes and wifi/bluetooth disabling functions? -
@mohpor good point about the order of parameters, we'll correct it.
Regarding the events, we will add more callbacks and events next week, which will include characteristic subscriptions, and notifications for when a connection is open. Thanks for the feedback.
Cheers,
Daniel -
@jswanljung ah yes of course, I should have known. Thanks for your message
-
Thank you very much guys! The BLE API looks pretty easy to use and nicely designed. This will open us a lot of new possibilities!
I'm planning to setup a Web Bluetooth app which will allow us to easily configure our devices from a website :) -
Where do we find this elusive firmware update? Can't wait to use it.
If it is not available yet, when? -
@iotoz it's here: https://www.pycom.io/support/supportdownloads/
(Under Firmware Updates)
Cheers,
Daniel -
@daniel Thanks for that, I had checked there. I can still only find pycom_update_1.0.0.b3.tar.gz for linux, or any other platform.
Any chance that you can post a direct link to the linux firmware 1.3.0.b1 ?
Would be ideal to see a Git rep with the firmware versions to choose. -
@iotoz that's the version of the updater only. Please use it and it will tell you that it's going to apply firmware version 1.3.0.b1 to your modules.
-
Hi thanks for the update. I have a project connecting to websockets over ssl. Since last release my project broke, a ssl fix was promised this release however the project still doesn't run. Can I expect a fix in the next days? Is there a way to revert my firmware to a previous version? I like to revert to version 1.1.
Keep up the good work.
-
@iotoz yes we are aware that it was promised for this release but we haven't been able to fix it yet, sorry for the delay. Long story short, the TLS/SSL library runs out of memory while wrapping the socket. This problem was introduced when we enabled Bluetooth support. We have raised this issue with Espressif and they are working on optimizations to solve this once and for all. We were really hoping to sort it out for this release but unfortunately it wan't possible.
Trust me, this is a major issue for us as well, and it's on the top of out list. We'll let you know once we have more news.
Cheers,
Daniel -
@iotoz we have made previous releases available, but 1.1.0 is not there. We'll make that one available on Monday. I'll let you know once that's done.
Cheers,
Daniel
Hello! It looks like you're interested in this conversation, but you don't have an account yet.
Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.
With your input, this post could be even better 💗
Register Login