(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).