BlueCore4-Ext is a popular Bluetooth chip used in many Bluetooth modules, some priced below $10. The idea is to create Wireless Sensor/Control Network using this modules, as Bluetooth is really ubiquitous technology nowadays, so any smartphone can be used to provide user UI/control for such network. This is especially facilitated by the fact that BlueCore4-Ext is a SoC (system-on-chip) integrating microcontroller and peripherals in one package (small too), allowing it to be programmed with a user firmware for autonomous functioning with minimum of additional components. It even has built-in temperature sensor, so just add a battery and you have ready-made wireless temperature sensor (not too precise, granted, but you can calibrate it yourself ;-) ).
(Image by robocraft.ru)
BluTuNode is a firmware for such a Bluetooth Wireless Node, which allows to control it from a host over the air.
Source code: http://github.com/pfalcon/blutunode
Features implemented:
Appendix:
Some technical characteristics of BC4-based module:
SoC: BC417 (BC417143B full model ID)
CPU: XAP2+, 16-bit RISC (no special 8-bit data support), Harward architecture, 64Kword data space, 1Mword+ code space
Flash: 1Mbyte (512Kwords, 75% typically occupied by Bluetooth stack/OS)
RAM: 24Kword
Execution environment: Virtual machine, no native hardware access (later versions of firmware OS support "native" mode, heavily bounds-checked still).
(Image by robocraft.ru)
BluTuNode is a firmware for such a Bluetooth Wireless Node, which allows to control it from a host over the air.
Source code: http://github.com/pfalcon/blutunode
Features implemented:
- Full control of GPIO: input/output, configuring direction, pullups/pulldowns, etc.
- Reading sampled from build ADCs.
- Reading of temperature sensor.
- Querying other system parameters.
- Querying Bluetooth parameters.
- Poll mode, when module automatically reads some sensor at specified period and sends information to host.
- UART control (note that this is generally not a priority, because UART is mostly used to connect to host/microcontroller, and this firmware is designed for autonomous modules).
- SPI/I2C/1-wire support to connect external sensors.
- More Bluetooth-level information and control.
- OpenSource tools to program/manage BlueCore modules.
- Flash access/writing, over-the-air firmware updates.
Appendix:
Some technical characteristics of BC4-based module:
SoC: BC417 (BC417143B full model ID)
CPU: XAP2+, 16-bit RISC (no special 8-bit data support), Harward architecture, 64Kword data space, 1Mword+ code space
Flash: 1Mbyte (512Kwords, 75% typically occupied by Bluetooth stack/OS)
RAM: 24Kword
Execution environment: Virtual machine, no native hardware access (later versions of firmware OS support "native" mode, heavily bounds-checked still).