The factory default firmware of BLExxx module is UARTDEMO example project, which can be found in ...\ble\example\dkble\uartdemo\ directory under the SDK folder, e.g. c:\Bluegiga\... .
This example configures the BLExxx Bluetooth Smart module to expose the BGAPI protocol over UART interface with the following settings:
The power mode 3 (sleep mode) is enabled in this example, and the wake-up pin is configured to P0_0 pin (P0_0 or BUTTON1 button on DKBLE development kit). When the power mode 3 is enabled the device will not be able to receive commands or data over UART unless the wake-up pin (P0_0) is asserted which in this firmware it corresponds a the high state. Note: the wake-up pin is level-triggered (not edge-triggered) and that pin has to be kept asserted until you would like the module to sleep again.
The example uses UART in the pin configuration channel 1 and alternate 1, which is the configuration used in the DKBLE development kits.
If you try this example with the DKBLE development kit, make sure the "USB to UART converter" is turned on and the device is NOT powered by a CR2032 battery, as it’s not able to power up the level shifter or USB to UART converter.
We always use the latest official SDK version for production. However, some older inventory or distribution channels may have some stock with an older SDK version. It is strongly recommended to download the latest firmware (latest SDK version) into module before development. BLEGUI can be used to check the version.
2014.10.29 16:58:26.257 ble_rsp_system_get_info major: 1 (0x0001) minor: 2 (0x0002) patch: 2 (0x0002) build: 100 (0x0064) ll_version: 3 (0x0003) protocol_version: 1 (0x01) hw: 3 (0x03)
This means the version is 1.2.2-build 100.
Note: The production firmware is built with SDK version 1.3.2-100.
How to modify the default configurations for my application?
If you want to disable sleep mode, you can add the following line in the hardware.xml file
<sleep enable="false" />
If you want to change the default UART baud rate, you can edit the following line in the hardware.xml file:
<usart channel="1" mode="uart" alternate="1" baud="xxxxxxx" endpoint="api" />
For example, <usart channel="1" mode="uart" alternate="1" baud="115200" endpoint="api" />
Then, save the hardware.xml file and download the FW into to module by BLE Update Tool ( http://community.silabs.com/t5/Wireless-Knowledge-Base/HOW-TO-Using-the-BLE-Update-utility-to-program-a-BLE-module/ta-p/147579).