Difference between revisions of "BLE Board"

From Kevin Darrah Wiki
Jump to: navigation, search
 
(10 intermediate revisions by the same user not shown)
Line 2: Line 2:
  
 
[[File:BLEboardbreadboard.png|400px]]
 
[[File:BLEboardbreadboard.png|400px]]
 +
 +
 +
UPDATE - Anaren has now obsoleted this module and the Atmosphere IDE is closed down.  You can still fully program the module through the Cypress WICED IDE.  See the Remote Starter project below for a full example how to do this.  You can use this project as your starting point. 
 +
  
 
= Bluetooth Low Energy Board =
 
= Bluetooth Low Energy Board =
Line 11: Line 15:
 
* Powerful ARM Cortex M3 Processor there to run the BLE radio and plenty of room for custom code.  Programmable through a simple Serial Interface - no expensive JTAG debuggers needed, just a [[The_USB_to_Serial_Converter:|USB to Serial Converter]]
 
* Powerful ARM Cortex M3 Processor there to run the BLE radio and plenty of room for custom code.  Programmable through a simple Serial Interface - no expensive JTAG debuggers needed, just a [[The_USB_to_Serial_Converter:|USB to Serial Converter]]
 
* FREE! Web based software to program the module and create an App called [https://atmosphere.anaren.com Atmosphere]
 
* FREE! Web based software to program the module and create an App called [https://atmosphere.anaren.com Atmosphere]
* Free Offline SDK (WICED) available as well [https://community.broadcom.com/community/wiced-smart/wiced-smart-documentation HERE]
+
* Free Offline SDK (WICED) available as well [https://community.cypress.com/community/wiced-smart/wiced-smart-documentation HERE]
 
* On board LED, Reset Button, and Recovery Button
 
* On board LED, Reset Button, and Recovery Button
 
* UART, SPI, I2C, GPIO all broken out.
 
* UART, SPI, I2C, GPIO all broken out.
Line 18: Line 22:
 
** [https://atmosphere.anaren.com/wiki/Main_Page Main Wiki]
 
** [https://atmosphere.anaren.com/wiki/Main_Page Main Wiki]
 
** [https://atmosphere.anaren.com/wiki/A20737_Module A20737 Module]
 
** [https://atmosphere.anaren.com/wiki/A20737_Module A20737 Module]
** [https://www.anaren.com/airforwiced/sites/default/files/temp/PDFs/ANN-20737x.pdf Detailed Datasheet]
+
** [https://atmosphere.anaren.com/wiki/images/e/ec/ANN-20737x.pdf Detailed Datasheet]
 +
 
 +
== Purchase ==
 +
 
 +
[[File:tindie-larges.png|link=https://www.tindie.com/stores/kdcircuits]]
  
 
== Pin Out ==
 
== Pin Out ==
Line 24: Line 32:
  
 
[[File:BLEdiagramV1color.png|600px]]
 
[[File:BLEdiagramV1color.png|600px]]
 
== Purchase ==
 
The boards are available through [http://mklec.com/project-kits/kd-circuits/bluetooth-low-energy-board-anaren-A20737-module MKLEC]  and work nicely with the [http://mklec.com/project-kits/kd-circuits/the-usb-to-serial-converter-module-FTDI USB to Serial Converter]
 
 
    
 
    
 
== Tutorials ==
 
== Tutorials ==
Line 52: Line 57:
 
  Resources:
 
  Resources:
 
  [https://atmosphere.anaren.com/wiki/Recovering_the_A20737_Module_using_the_AIR_for_WICED_Smart_Programmer_Pod Anaren Guide for Recovering]
 
  [https://atmosphere.anaren.com/wiki/Recovering_the_A20737_Module_using_the_AIR_for_WICED_Smart_Programmer_Pod Anaren Guide for Recovering]
 +
 +
==== Low Power Modes ====
 +
Working through the various low power modes from within Atmosphere.
 +
{{#evt:
 +
service=youtube
 +
|id=https://www.youtube.com/watch?v=OTAerw7iBGY
 +
|dimensions=560x315
 +
}}
 +
Resources:
 +
[https://atmosphere.anaren.com/forum/sleep-modes-explained-and-tested The forum post about the sleep modes]
 +
[http://www.kevindarrah.com/download/bluetooth/LowPower.atmo.zip The .ATMO file] used in the video that you can import into atmosphere.
 +
 +
==== Serial Communication (Wireless Serial Monitor Arduino Project) ====
 +
Sending and Receiving Data to/from an Arduino from a "Serial Monitor" type app
 +
{{#evt:
 +
service=youtube
 +
|id=https://www.youtube.com/watch?v=9IfFaX2Mr6c
 +
|dimensions=560x315
 +
}}
 +
Resources:
 +
Here's the project file you can import into the IDE: [http://www.kevindarrah.com/download/bluetooth/Serial_8_15_16.atmo.zip ATMO project file]
 +
[http://www.kevindarrah.com/download/bluetooth/SerialBLE.ino The Arduino Code used in the video]
  
 
==== Projects ====
 
==== Projects ====
Line 60: Line 87:
 
|dimensions=560x315
 
|dimensions=560x315
 
}}
 
}}
 
+
===== Remote Starter =====
 
Here I hacked my Remote Starter on my car:
 
Here I hacked my Remote Starter on my car:
 
{{#evt:
 
{{#evt:
Line 71: Line 98:
 
  [http://www.kevindarrah.com/download/bluetooth/BLEBOARD_TEST.zip The Bluetooth Low Energy Module Code]
 
  [http://www.kevindarrah.com/download/bluetooth/BLEBOARD_TEST.zip The Bluetooth Low Energy Module Code]
 
  [http://www.kevindarrah.com/download/bluetooth/BLEBOARD_TEST_iOS.zip The iOS code here]
 
  [http://www.kevindarrah.com/download/bluetooth/BLEBOARD_TEST_iOS.zip The iOS code here]
  [https://community.broadcom.com/community/wiced-smart/wiced-smart-documentation Broadcom SDK (don't forget to sign up)]
+
  [https://community.cypress.com/community/wiced-smart/wiced-smart-documentation Broadcom SDK (don't forget to sign up)]
 
  The Make Target Path: BLEBOARD_TEST-BCM920737TAG_Q32 BT_DEVICE_ADDRESS=random download
 
  The Make Target Path: BLEBOARD_TEST-BCM920737TAG_Q32 BT_DEVICE_ADDRESS=random download
 
  [https://youtu.be/ZKNQhzPwH0s DS18B20 Temp Sensor Video]
 
  [https://youtu.be/ZKNQhzPwH0s DS18B20 Temp Sensor Video]
Line 77: Line 104:
 
  [https://www.udemy.com/u/robpercival/ Best Udemy Teacher]
 
  [https://www.udemy.com/u/robpercival/ Best Udemy Teacher]
  
 +
===== Controlling WS2812 LEDs =====
 +
Controlling the color of WS2812 LEDs through an Arduino
 +
{{#evt:
 +
service=youtube
 +
|id=https://www.youtube.com/watch?v=DJqbPdoHtbM
 +
|dimensions=560x315
 +
}}
 +
Resources:
 +
[http://www.kevindarrah.com/wiki/index.php?title=Power_Cheater The Level Shifter Board Wiki]
 +
[https://www.youtube.com/watch?v=VAa4duqMrgs WS2812B Video]
 +
[http://www.kevindarrah.com/download/bluetooth/WS2812_v1.atmo.zip Here's the project file you can import into the IDE]
 +
[http://www.kevindarrah.com/download/bluetooth/SerialBLE_WS2812.ino And the Arduino Code]
  
  
Line 88: Line 127:
 
[https://atmosphere.anaren.com/wiki/A20737_Module A20737 Module]
 
[https://atmosphere.anaren.com/wiki/A20737_Module A20737 Module]
  
[https://www.anaren.com/airforwiced/sites/default/files/temp/PDFs/ANN-20737x.pdf Detailed Datasheet]
+
[https://atmosphere.anaren.com/wiki/images/e/ec/ANN-20737x.pdf Detailed Datasheet]
  
 
And make sure to check out the  [https://atmosphere.anaren.com/forum Forum HERE]
 
And make sure to check out the  [https://atmosphere.anaren.com/forum Forum HERE]
Line 97: Line 136:
  
 
'''On Windows, Failure to Open Serial Port when Programming''' <br/>
 
'''On Windows, Failure to Open Serial Port when Programming''' <br/>
Again, check out the last few minutes of the getting started video.  There is a bug with programmer utility (v1.5.1), so just download v1.2.0 and everything should work.  Anaren is aware of this and is working on a fix.
+
Again, check out the last few minutes of the getting started video.  There is a bug with programmer utility (v1.5.1), so just download v1.2.0 and everything should work.  Anaren is aware of this and is working on a fix. EDIT: 8/3/16 Anaren has fixed this issue with the latest release. 
  
 
=== Disclaimer ===
 
=== Disclaimer ===
 
I'm just a guy who designs boards, so I'll try my best to support you as much as I can and provide tutorials as I have time for.  Every board that is sold has been functionally tested, so if something is not working on your end, it is not likely due to hardware problems.  Most people blame the hardware when things don't work, but I have tested that each of these boards can be programmed, each pin works, and that the Bluetooth radio is functional.  Also, these boards are for educational, hobbyists, DIYer, maker, and development use only.  If you are interested in working this board into your product, please [http://www.kdcircuits.com/#contact contact me] for more information
 
I'm just a guy who designs boards, so I'll try my best to support you as much as I can and provide tutorials as I have time for.  Every board that is sold has been functionally tested, so if something is not working on your end, it is not likely due to hardware problems.  Most people blame the hardware when things don't work, but I have tested that each of these boards can be programmed, each pin works, and that the Bluetooth radio is functional.  Also, these boards are for educational, hobbyists, DIYer, maker, and development use only.  If you are interested in working this board into your product, please [http://www.kdcircuits.com/#contact contact me] for more information

Latest revision as of 08:15, 25 September 2018

...Back to Projects:

BLEboardbreadboard.png


UPDATE - Anaren has now obsoleted this module and the Atmosphere IDE is closed down. You can still fully program the module through the Cypress WICED IDE. See the Remote Starter project below for a full example how to do this. You can use this project as your starting point.


Bluetooth Low Energy Board

Introduction

The BLE Board is based on Anaren's BLE Module A20737. This is one of the easiest to work with Bluetooth Low Energy Modules I have ever worked with, so I made a simple board to make it that much easier to get up and running with Bluetooth Low Energy in your next project.

  • Uses the A20737 Module
  • FCC certified with PCB Antenna, so no RF design needed
  • Powerful ARM Cortex M3 Processor there to run the BLE radio and plenty of room for custom code. Programmable through a simple Serial Interface - no expensive JTAG debuggers needed, just a USB to Serial Converter
  • FREE! Web based software to program the module and create an App called Atmosphere
  • Free Offline SDK (WICED) available as well HERE
  • On board LED, Reset Button, and Recovery Button
  • UART, SPI, I2C, GPIO all broken out.
  • Bread Board friendly on 0.1" headers
  • Detailed tutorials coming soon on BLE to iOS/Android, Device to Device communication, and Beacon Functionality - it's going to be a fun ride! In the mean time, Anaren has tons of information:

Purchase

Tindie-larges.png

Pin Out

BLEdiagramV1.png

BLEdiagramV1color.png

Tutorials

Getting Started

Start Here! This video gives an overview of the board, software installation, how to create a simple program and load it into the board, and even a few things to watch out for:

Resources for Getting Started:
Atmosphere Portal
Where to Download the Programmer Utility
FTDI Drivers
The .ATMO file used in the video that you can import into atmosphere.

Recovering the Board

Just a quick one here to show you how to recover the BLE Board's boot loader just in case it should ever get corrupted by cutting power during programming or if for some reason the board no longer accepts a program.

Resources:
Anaren Guide for Recovering

Low Power Modes

Working through the various low power modes from within Atmosphere.

Resources:
The forum post about the sleep modes
The .ATMO file used in the video that you can import into atmosphere.

Serial Communication (Wireless Serial Monitor Arduino Project)

Sending and Receiving Data to/from an Arduino from a "Serial Monitor" type app

Resources:
Here's the project file you can import into the IDE: ATMO project file
The Arduino Code used in the video

Projects

This is an older video I made to show how easy it is to get up and running with the module:

Remote Starter

Here I hacked my Remote Starter on my car:

Resources for the Remote Starter Project
The Bluetooth Low Energy Module Code
The iOS code here
Broadcom SDK (don't forget to sign up)
The Make Target Path: BLEBOARD_TEST-BCM920737TAG_Q32 BT_DEVICE_ADDRESS=random download
DS18B20 Temp Sensor Video
Ray Wenderlich for iOS tutorials
Best Udemy Teacher
Controlling WS2812 LEDs

Controlling the color of WS2812 LEDs through an Arduino

Resources:
The Level Shifter Board Wiki
WS2812B Video
Here's the project file you can import into the IDE
And the Arduino Code


Support

You can contact me for design services HERE

Anaren has a lot of information on their Wiki and datasheets:

Main Wiki

A20737 Module

Detailed Datasheet

And make sure to check out the Forum HERE

Known Issues and Gotchas

Board doesn't retain program after power cycle
Check out the last few minutes of the getting started video. Did you leave the programmer plugged in during your power cycle? If so, then the board will power up in a reset state. Just re-program the board and you're good to go, or remove the programmer, power in via the power pins and it will boot up and run your program normally.

On Windows, Failure to Open Serial Port when Programming
Again, check out the last few minutes of the getting started video. There is a bug with programmer utility (v1.5.1), so just download v1.2.0 and everything should work. Anaren is aware of this and is working on a fix. EDIT: 8/3/16 Anaren has fixed this issue with the latest release.

Disclaimer

I'm just a guy who designs boards, so I'll try my best to support you as much as I can and provide tutorials as I have time for. Every board that is sold has been functionally tested, so if something is not working on your end, it is not likely due to hardware problems. Most people blame the hardware when things don't work, but I have tested that each of these boards can be programmed, each pin works, and that the Bluetooth radio is functional. Also, these boards are for educational, hobbyists, DIYer, maker, and development use only. If you are interested in working this board into your product, please contact me for more information