This version is a big step forward towards leveraging the whole potential of your Arduino 101. The mayor number change reflects this, and while you can take a look at the whole changelog, I'll try to summarize what's new and how it can affect your (present and future) sketches.

First of all, we are introducing the BLE Central role. This opens a world of possibilities (proximity tracking, to name one) but comes at a cost:- sketches are bigger since a lot of code has been moved from the x86 firmware to the Arduino core. This problem will be solved with the upcoming core release, when we'll also update the RTOS to make it smaller and faster- RAM usage has increased a bit (this too will be solved with the x86 FW update) but shouldn't affect any existing sketch- BLE firmware is being updated silently if not in sync with the library. This happens on both Java IDE and Arduino Create. If you want to restore the previous one (for example, if you need for any reason to downgrade the core) you must reinstall 1.0.7 and "burn the bootloader" again to restore the old firmware, otherwise your sketches using BLE won't work. The UI will tell you what to do so there is no need to worry.

Said that, we are excited to make this new APIs available and we're sure you will push these new capabilities to the limit!

But this release is not only BLE-centric! There are a lot of fixes everywhere, some of which has been kindly contributed by the vibrant 101 community via github.

Power management is now a first-class citizen and the upcoming "companion" library will allow you to make your battery-powered projects last longer at no cost.

IMU APIs have been expanded to handle precise synchronisation with the underlying readings, so it is now possible to avoid a lot of pitfalls arising from fusion algorithms being fed with out-of-sync data.

So, fire up your Board Manager, upload the core and show everyone what you can do with this tiny powerful board!

After chasing my tail over drivers and many supposed fixes I got down and dirty with the problems last night.

Was given the impression that just uploading a sketch would also swap out the core but that didn't seem to be the case under windows 7 x64 pro.

Ended up uninstalling the 101 and its associated com ports using admin device manager showing hidden devices with the 101 connected until I had deleted its associated hardware.

Disconnected the 101 and re-boot.re-connect once re-boot was complete.

101 showed up properly so opened DESKTOP ide 1.8.2 and did the Programmer "Arduino/Genuino 101 Firmware Updater"

First attempt failed so re did the delete hardware section above again.This time the firmware went up just fine.

Tried the "blink" example and that workedTried the same one again but it failed.

Another computer re-boot

Three sketches went up no problem.Swapped to CREATE which has always been a NO GO here for the 101.

YAY the 101 is now working in CREATE.It had always failed at the "touching com port" before but not any more.

My many thanks for the release of these cores to all concerned as they have fixed so many issues I had with my 101.

IMPORTANT NOTE. Also TURN OFF your anti virus or other software security until the UPDATE has gone up to the board as I am pretty sure that was part of the update failures problem I had.

It may not be the answer you were looking for but its the one I am giving based on either experience, educated guess, google or the fact that you gave nothing to go with in the first place so I used my wonky crystal ball.

Unfortunately it seems that updating the core somehow destroyed my 101. Updated via the board manager and flashed the new BLE firmware. Then i realized my recent sketch stopped working properly. So i tried to rewind the whole process by downgrading the firmware via the process described above (reinstalling 1.07 and burning the bootloader). Now i'm not able to upload a sketch anymore. The error message says to press the Master reset button but this doesn't help. Any tip how to revive my 101?

Somebody else asked me and I wrote up a slightly better step through that I did on a basis that I wrote as I did it again to make sure I was correct.

Upgrading the cores also saw the drivers re-do themselves with the intel drivers offering themselves each time.You must say yes to those if they come up.

Also what OS which IDE etc etc etc.

It may not be the answer you were looking for but its the one I am giving based on either experience, educated guess, google or the fact that you gave nothing to go with in the first place so I used my wonky crystal ball.

@rgb3,there's 0% chance that the "burn bootloader" feature bricks a board because the bootloader is untouched and it starts every time you connect a board via USB. Try completely unconnecting the board, launch the upload and then connect the board as soon as the flasher writes "Press MASTER_RESET" . Let me know if it works or not so we can setup a debugging session, thanks!

"- sketches are bigger since a lot of code has been moved from the x86 firmware to the Arduino core. This problem will be solved with the upcoming core release, when we'll also update the RTOS to make it smaller and faster"

A sketch of mine went from 60% ->95% when is the upcoming core release and what changes do I have to make to get it?

Thanks so much for the work on the new version - working pretty good thus far in my testing.

The examples are nice and simple - AND - I am trying to figure out how to do have the central device use a setEventHandler for notifications on when a peripheral updates a value.

Setup:Arduino 101 - running in peripheral mode. Advertising two services and two characteristics per service, set to Read and Notify.Arduino 101 - running in central mode. Successfully connects, reads services and the corresponding characteristics and sets notification to true.

I can manually loop and check if the characteristic value has changed - but this is really limiting. Would much rather have an event handler to pick up the value and trigger activity instead.

@rgb3,there's 0% chance that the "burn bootloader" feature bricks a board because the bootloader is untouched and it starts every time you connect a board via USB. Try completely unconnecting the board, launch the upload and then connect the board as soon as the flasher writes "Press MASTER_RESET" . Let me know if it works or not so we can setup a debugging session, thanks!

Thank you very much for your help! After some more attempts it worked and all seems to be fine again. I realized that i have to manually switch the programmer to "Arduino 101 firmware updater" everytime i want to upload a sketch. Then it works. Strange thing is, my other (not updated) 101 Boards (and UNOs) work with the default AVRII programmer. Anyway, thanks a lot, glad my 101 didn't brick

Ah - my previous message about having to downgrade to 1.07 was inaccurate. The actual issue was having to run the IDE in administrator (sudo) mode. Without sudo I get the "Flashing is taking longer than expected" message. Even in administrator mode, it's flaky - sometimes have to press the Master Reset, sometimes the regular Reset. Eventually works, but a bit unpredictable.

@ leo900,the 101 can absolutely communicate with another 101 since 2.0.2

@drmpf,have you already opened an issue on the 101 github? We are collecting a series of "difficult" sketches to improve our regression test suite, if you could post a sketch exposing the problem it would be a great help! Thanks