jmarcelino 4 Posted June 10, 2013 Share Posted June 10, 2013 Hi everyone, I've been tinkering around with Bluetooth LE (BLE) for some time now, it's a great way to connect projects to things like smartphones or other electronics. For example TI offers the fantastic SensorTag that packs a bunch of very interesting sensors and Bluetooth LE radio into a little box powered only by a CR2032 battery! There's a lot of other BLE things on the market too, like proximity keytags, fitness wristbands and very soon the Pebble smartwatch will have BLE support too. It's disappointing that the Launchpad doesn't yet have a ready-to-use booster pack that can communicate with this, especially when TI are the ones offering the most popular BLE chip at the moment - the CC2540. Part of the reason may be that the CC2540 needs the IAR compiler, whose price puts it outside of reach for hobbyists. However companies like Bluegiga have built a really nice open API around the CC2540 and packaged it as a ready to use modules such as the BLE112. While my background is software I've been trying a diversify and learn a bit more about hardware, so as a little project I've decided to bring this nice module to the Launchpad. A lot of the design was already done for the (OSHW) BLE112 breakout by Bluegiga's Jeff Rowberg - http://www.inmojo.com/store/jeff-rowberg/item/ble112-bluetooth-low-energy-breakout/ - so I merely tweaked with it a bit and simplified it to the Launchpad. I connected only the UART as I want to keep most of the GPIO pins free to add other boosterpacks on top. The BLE112 module can be programmed to use the BGAPI protocol over the serial connection, which allows full control of the Bluetooth LE stack. The next step will be to port the excellent BGAPI library at https://github.com/jrowberg/bglib to Energia. For simpler applications the BLE112 can also be programmed to just relay RX/TX data to the serial port. The module can be programmed via the PROGRAM header using a TI CC Debugger and Bluegiga's software. I think OTA programming may eventually be possible since it's already supported on the CC2540 itself. Following the existing (classic) Bluetooth BoosterPacks, I've left the breakout pins so extra connections can be easily patched if needed. I also connected the S2 pin to the BLE112 reset line (active low) thinking I can use the existing pushbutton as a BLE reset button. But not 100% sure that will work. The other design choice was placing the BLE112 at the very bottom, I did this to keep the antenna away from other boosterpacks as much as possible. I'm specifically looking to drive the RePaper e-paper boosterpack on top of this one. Please let me know your questions, suggestions or criticism This is only my 2nd board, ever, and still taking my first steps into Eagle thanks to the great tutorials at Dangerous Prototypes and others, so I really appreciate all insight. Cheers, Jose BLE112Boost.pdf BLE112Boost.brd bluehash 1 Quote Link to post Share on other sites
jmarcelino 4 Posted June 22, 2013 Author Share Posted June 22, 2013 (edited) Tough crowd! Anyway I went ahead with making the board and happy to report it works very well with the Launchpad and Energia (just uses Serial) Only nitpick is if I set P1.3 HIGH in software by mistake - P1.3 is connected to the BLE112 module RESET pin, active low - the module stops working until I manually reset it. Setting P1.3 low or pressing S2 works just fine in resetting the module, though. Maybe I should have added a diode to stop such coding mistakes happening? Not sure what's the right thing to do or choose, any help would be great. Anyway here's a photo of it working, showing the blue LED lit which means my iPhone connected to it over Bluetooth Low Energy and is accepting data sent via serial. All the pins except the P1.1 and P1.2 UART are free for other uses, so I used stackable pins to other add BoosterPacks on top. I'm happy to share this with the community if there's interest. Currently I'm working on the firmware for the BLE112 module and IOS CoreBluetooth that should make this really easy to use. Edited October 15, 2013 by bluehash [ADMIN] Please upload pics to 43oh. spirilis and dubnet 2 Quote Link to post Share on other sites
spirilis 1,265 Posted June 22, 2013 Share Posted June 22, 2013 Nice! Talk to @@bluehash about selling the PCBs thru the 43oh Store if you'd like. I am sure there will be interest (I'm a droid user but picked a Samsung phone supporting the broadcom-ble driver for when I want to dive in) Sent from my Galaxy Note II with Tapatalk Quote Link to post Share on other sites
bluehash 1,581 Posted June 22, 2013 Share Posted June 22, 2013 Hi everyone, I've been tinkering around with Bluetooth LE (BLE) for some time now, it's a great way to connect projects to things like smartphones or other electronics. For example TI offers the fantastic SensorTag that packs a bunch of very interesting sensors and Bluetooth LE radio into a little box powered only by a CR2032 battery! There's a lot of other BLE things on the market too, like proximity keytags, fitness wristbands and very soon the Pebble smartwatch will have BLE support too. It's disappointing that the Launchpad doesn't yet have a ready-to-use booster pack that can communicate with this, especially when TI are the ones offering the most popular BLE chip at the moment - the CC2540. Part of the reason may be that the CC2540 needs the IAR compiler, whose price puts it outside of reach for hobbyists. However companies like Bluegiga have built a really nice open API around the CC2540 and packaged it as a ready to use modules such as the BLE112. While my background is software I've been trying a diversify and learn a bit more about hardware, so as a little project I've decided to bring this nice module to the Launchpad. A lot of the design was already done for the (OSHW) BLE112 breakout by Bluegiga's Jeff Rowberg - http://www.inmojo.com/store/jeff-rowberg/item/ble112-bluetooth-low-energy-breakout/ - so I merely tweaked with it a bit and simplified it to the Launchpad. I connected only the UART as I want to keep most of the GPIO pins free to add other boosterpacks on top. The BLE112 module can be programmed to use the BGAPI protocol over the serial connection, which allows full control of the Bluetooth LE stack. The next step will be to port the excellent BGAPI library at https://github.com/jrowberg/bglib to Energia. For simpler applications the BLE112 can also be programmed to just relay RX/TX data to the serial port. The module can be programmed via the PROGRAM header using a TI CC Debugger and Bluegiga's software. I think OTA programming may eventually be possible since it's already supported on the CC2540 itself. Following the existing (classic) Bluetooth BoosterPacks, I've left the breakout pins so extra connections can be easily patched if needed. I also connected the S2 pin to the BLE112 reset line (active low) thinking I can use the existing pushbutton as a BLE reset button. But not 100% sure that will work. The other design choice was placing the BLE112 at the very bottom, I did this to keep the antenna away from other boosterpacks as much as possible. I'm specifically looking to drive the RePaper e-paper boosterpack on top of this one. Please let me know your questions, suggestions or criticism This is only my 2nd board, ever, and still taking my first steps into Eagle thanks to the great tutorials at Dangerous Prototypes and others, so I really appreciate all insight. Cheers, Jose Sorry Jose. Posts are now slipping through my watch. This is great! I'm sure many will be interested in this. If you want to be sponsored for parts, let me know. Quote Link to post Share on other sites
GeekDoc 226 Posted June 24, 2013 Share Posted June 24, 2013 Sorry Jose. Posts are now slipping through my watch. @@bluehash I know your pain! The community has grown so much that I just don't have the time to read every post. I always feel like I'm missing something good, though! Quote Link to post Share on other sites
dubnet 238 Posted June 26, 2013 Share Posted June 26, 2013 @@GeekDoc and @@bluehash I will second that. I am trying to stay current but keep falling further behind. On the other hand it is great to have all the new people joining with their really interesting projects. Quote Link to post Share on other sites
Rei Vilo 695 Posted October 12, 2013 Share Posted October 12, 2013 @@jmarcelino Nice BoosterPack! I notice it uses the 2x10 BoosterPack, while most of the recent boards use the 4x10 format, like the Stellaris and the F5529 BoosterPack. It would be great to add room for the 4x10 format, so the BoosterPack can work with all the LaunchPads. About the rePaper screen, it works fine on a F5529: have a look at Pervasive Displays EPaper Boosterpack thread. Quote Link to post Share on other sites
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.