Arduino BLE Shield

Firmware v1.1.0 available for the BLE-Shield v1.0.0

Hello everyone,

I already published the new firmware v1.1.0 for the BLE-Shield v1.0.0 to my github repository which is available through this link: In this firmware I omitted the internal 16 byte buffer so the shield now acts better as a serial bridge as before. I removed the control characteristics to query the content of the buffer and reset the buffer count completely.

The remaining characteristics are now:

The characteristics of the BLE-Shield v1.0.0 running firmware v1.1.0

The characteristics of the BLE-Shield v1.0.0 running firmware v1.1.0

  • BT Device Address: 65C228DA-BAD1-4F41-B55F-3D177F4E2196
  • RX: F897177B-AEE8-4767-8ECC-CC694FD5FCEE
  • TX: BF45E40A-DE2A-4BC8-BBA0-E5D6065F1B4B

and the new one:

  • Baudrate: 2FBC0F31-726A-4014-B9FE-C8BE0652E982

Baudrate is a one byte characteristic, which is used to set the baudrate of the shield. You can use BLExplr to write hex the following hex values to the BLE-Shield:

  • 0x00 = 9600 Baud
  • 0x01 = 14400 Baud
  • 0x02 = 19200 Baud
  • 0x03 = 28800 Baud
  • 0x04 = 38400 Baud

The dafault baudrate of the BLE-Shield v1.0.0 is now set to 9600 baud, but you can set the baud rate e.g. bach to 19200 if you would like to use it at the same speed as before. The baudrate setting is stored in the BLE112 modules PStore, so it will remain set even after reboot or removing it from a power source. In the BLE112 modules boot event, the PStore is read and the module reprogrammed with the latest baudrate setting. Very easy to handle.

The BLE Update tool showing a BLE112 module without license key.

The BLE Update tool showing a BLE112 module without license key.

The firmware is built using the latest Bluegiga SDK v1.1.1b71. This said, if you want to reflash your BLE-Shield with this new firmware you need to download the new SDK and BLE Update tool as well. For those users who never used the BLE Update Tool before, it is much easier to handle compared to Tis SmartRF Programmer. Just plug the Shield to an Arduino, power the Arduino connect the CC-Debugger with the BLE-Shields programming header, and press the reset button on the CC-Debugger. In the BLE Update tool, make sure that you configured the correct SDK version and press the Info button. The Kickstarter batches of the BLE-Shield were build with BLE112 modules prior to SDKv1.1.1, where the BLE Stacks License key was not yet available on the modules. That’s why you will see an output as shown in the screenshot below. There is no License Key shown, but a Link to “Request license key” link. Please use this link and post an email to Bluegiga’s support to get license key for your BLE112 modules on the BLE-Shield.

Once you received the license key from Bluegiga’s support, paste the key to the Textfield “License key” select the hex file of the new firmware 1.1.0 downloaded from github to flash the hex file or select the BLE-Shield.bgproj file to compile and flash it to the BLE-Shield.

That’s it! Your BLE-Shield is now running the latest firmware with baud rate selection feature. BTW: The latest BLExplr v1.1.0 already supports the new characteristics and shows the RX characteristic as a Textbox, where all received bytes are concatenated and not replaced by the latest byte received 🙂 Update the 3rd Party UUID descriptions from the Apps settings and you are reads to go. You will see that the RX characteristic is shown as Datatype: Serial characteristic, indicating that the behavior of the app is different.

I hope that you like the new firmware and please let me know if you encounter any trouble while upgrading the firmware or using it.






19 Responses to Firmware v1.1.0 available for the BLE-Shield v1.0.0

  1. hugo August 26, 2013 at 08:28 #


    do you know if BLE112 serial default profile have RTS / DTR io working or only RX / TX ?


    • Michael Kroll August 26, 2013 at 08:54 #

      the BLE112 supports rx/tx/rts/cts.
      I’m only using rx/tx since the Arduino does not 🙂


      • hugo August 27, 2013 at 12:22 #


        Thank you for your answer.

        So, it is not possible to use this module for programming Arduino sketch via the reset bootloader feature (DTR)

        • Michael Kroll August 27, 2013 at 12:54 #

          this is totally untested.
          Can you hint me to a link where this feature is described?


        • Michael Kroll August 27, 2013 at 12:56 #

          I missed something. I was thinking you were asking about the BLEBee. No, you cannot program the Arduino through the BLE-Shield even with firmware 1.1.0.


          • hugo August 28, 2013 at 07:08 #

            Sorry Michael, i have not been clear, i spoke about BLE112.

            I search a solution to program Arduino over Bluetooth and for that, the bluetooth module must have RX, TX and DTR, DTR is used to reset the board, at this time, bootloader standby for a while for a programmer command.

            2 last questions about BLE112 :
            – Generic BLE112 default profile (not yours) have RX and TX mapped on P0_5 / P0_4 ? or i have to buy a CC-Debugger ?
            – BLE112 can speak with an old hardware device not compliant with Bluetooth 4 like an usb key ?

            Thank you !

          • Michael Kroll August 28, 2013 at 09:26 #

            You cannot program the BLE112 over RX/TX mapped to P0_4/P0_5. You need a CC-Debugger to achieve that.
            No, the BLE112 module is Bluetooth 4.0 only. It cannot communicate with an old Bluetooth Classic Dongle.

            Michael Kroll.

  2. Tyler September 1, 2013 at 02:12 #

    Hi Michael, I would like to update but I don’t have a CC Debugger. Is there some other way to update the firmware?

    • Michael Kroll September 1, 2013 at 09:34 #

      Hi Tyler,
      I’m sorry but you must have a CC-Debugger in order to update the firmware of the BLE-Shield v1.0.0.

  3. Mark September 3, 2013 at 16:12 #

    Hi Michael,
    I have a dongle usb bluegiga and a BLE shield.
    I tried your sketch and i discovered that it lost two byte, instead of receving 4D2A1020 receiving 2A1020. Could you tell me why?
    If I’d like to work with two sensors (pressure sensor and temperature sensor) is it possible to generate two service in RX?
    If it’s possible,How can I send data from Arduino to two services?

  4. Jonas Arvidsson September 14, 2013 at 15:12 #


    I cannot connect (using BLExplr) to the shield when I flash the new firmware (1.1.0) on to the BLE-shield. But if I flash it with 1.0.1 I can again connect to it.

    Is there anyone else having this problem?

  5. Arturo October 16, 2013 at 16:04 #


    The BLExplr application runs just under iPhone?, I’ve downloaded to iPad, it runs and finds the BLE112 but never connects to it.

    Is there another application for iPad?

    Best Regards,


    • Michael Kroll October 16, 2013 at 16:08 #

      Hello Artuo,
      what peripheral are you using?
      Just a BLE112 module?
      What iPad are you using?


  6. Arturo October 16, 2013 at 19:22 #

    Hi Michael,

    I am using the BLE 112 Evaluation board, I’ve downloaded your firmware to this board.

    The iPad I am using is the mini-iPad, I’ve read that this model is equipped with BLE.

    Thank you for your promt replay.

    Best Regards,


  7. Arturo October 16, 2013 at 22:45 #

    I downloaded the diferent versions of the the BLE-Shield firmware to the BLE-112:

    – BLE-Shield-16bytes-rx-v1.0.0
    – BLE-Shield-16bytes-rx-v1.0.1
    – BLE-Shield-16bytes-rx-v1.0.1-REV-B
    – BLE-Shield-v1.1.0
    – BLE-Shield-v2.0.0

    For the iPad, the application has the same name, BLE-Shield, under the iphone directory. Once the application downloaded to the ipad, the UI finds the BLE, when I select connect to the BLE, the iPad stays in the “Connecting state” without reach a successful connection, I suppose this is normal because of is not optimized for this device (iPad).

    Thanks for your time.

    • Michael Kroll October 17, 2013 at 09:59 #

      Aha… now I understood.
      You have downloaded the BLE-Shield app source code from github as well? I have not yet tested it with iOS7 or the new firmwares. The app was part of the Kickstarter and I have not touched it for ages.

      Could you try to use BLExplr from the app store to check if this works for you even if the app costs $3

      Please let me know.


  8. Saurabh Gulia February 5, 2014 at 08:55 #

    Hey Michael!!

    I have bought the BlueGiga BLE 112, and made a breakout board of this. Now can you please guide me how to connect it with Arduino Mega and which libraries(functions) to use to make it discoverable and to communicate with iPhone.
    I am a college student, doing my final project on it.
    Please help

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Powered by WordPress. Designed by WooThemes