3-Channel Neopixel Board for the Mercury System
SKU 7305-SB120EAN 8219671102834Item type: Assembled, Shields & add-onsIoT (Internet of Things)
Description
| 3-channel board that interfaces with Neopixel LED strips or rings. The board connects to the Base Board (BB) of the Mercury system over the I2C bus. The board address can be set dynamically with the 4-switch dip switch, which gives up to 15 different addresses (address 0x00 is reserved for the I2C bus). The board carries a jumper for choosing the power source: internal (VddBat) or external, through the terminal block provided. At the heart of the system is an 8 bit RISC PIC16F1829 microcontroller made by Microchip Technology Inc. | |||||||||||||
| Hardware features | |||||||||||||
![]() |
|||||||||||||
|
|||||||||||||
| Microcontroller features | |||||||||||||
|
|||||||||||||
| Hardware diagram | |||||||||||||
![]() |
|||||||||||||
| Mercury System | |||||||||||||
| Mercury System (MS for short) is a modular system for developing connectivity and IoT applications. The system uses several kinds of electronic board (logic unit, modem, slave board carrying sensors and actuators, power boards and so on) together with a complete SW structure that lets you build complex applications. Scalability, ease of use and modularity are the key factors, and they are guaranteed by the use of a mixed set of components that let you assemble the system the way you would build with LEGO© bricks.
The set of boards that makes up the Mercury System is organised into the following “families”: • Base Board (BB): It is the “brain” of the whole Mercury System and holds the main logic unit, several communication buses and the connectors for interfacing the slaves. It also carries a simple power supply and a charging unit for a single LiPo cell (enough to meet the power needs of simpler systems). It can exist in several variants, depending on the microcontroller unit used. • Modem Board (MB): this is the board that provides network connectivity. It can exist in several variants, depending on the network interface (GSM / GPRS, Wi-Fi, BT, Radio and so on). It is interfaced to the base board over a dedicated serial line. • Power Board (PB): this is the board that meets the particular energy needs of the system, when there are any. They can vary according to the specific energy requirement to be met (high power, solar harvesting, piezoelectric harvesting and so on). • Slave Board (SB): these are the peripherals of the system, and they vary according to the specific sensor or actuator fitted. Typical examples are SBs with relays, temperature sensors, RGB LED controllers, servo drivers and accelerometers. They talk to the BB over I2C or UART with a dedicated command set. • Expansion Board (EB): these are the boards that allow Mercury boards to be connected in a plane. There are variants that can carry displays, a battery holder and so on. • Brain-Less Board (BL): these are the boards without a controller. In general they carry really simple sensors or actuators that do not need the bus interface. They are an alternative to the slave boards for applications where cost has to be kept down. The Slave Boards and the Modem Boards come pre-programmed with a Firmware that implements a dedicated command set for high-level management, while the Base Boards carry a Software framework that provides all the low-level services (operating system, peripheral drivers, system services and so on), leaving the user only the application-level logic to develop. |
|||||||||||||
![]() |
|||||||||||||
| Mercury System Framework | |||||||||||||
| Mercury System Framework (MSF) is a layered Software framework designed specifically to support application development with the Mercury System. It gives the user a complete set of basic functions for interfacing the Slave Boards (SB) and the Modem Boards (MB) easily, as well as a number of Software and infrastructure system services. | |||||||||||||
![]() |
|||||||||||||
| The framework is made up of the following components:
HAL (Hardware Abstraction Layer): the purpose of this layer is to abstract the Hardware dependencies away from the layers above.
OSL (Operative System Layer): this layer consists of a lightweight RTOS that provides the system with basic services, such as scheduling tables for the various tasks, events, SW timers, alarms and so on. |
|||||||||||||
![]() |
|||||||||||||
| The Slave Boards of the Mercury System | |||||||||||||
| The layout of the Mercury Slave boards is standardised, so as to make interfacing with the Base Board simpler and to guarantee a high level of modularity and scalability. Every slave board has an I2C (Inter Integrated Circuit) communication line and a four-position dip switch for setting the slave board bus address dynamically. Addresses 0x01 to 0x0F are available for the Slaves, while address 0x00 is reserved for broadcast communications. This way up to 15 devices can be connected to the Base Board using the dynamic addressing scheme. That number can even be increased by reprogramming the Slave with an address supplied by the software. On top of that, two open collector digital lines connected to the external interrupts of the base board are provided for slave boards that have to raise asynchronous interrupts. And slave boards that need a higher bandwidth and peer-to-peer communication can be interfaced using a further UART channel.
There are several sub-families of Slave Board:
The table below gives a few examples for each sub-family:
|
|||||||||||||
| Documentation and useful links | |||||||||||||
Technical details
| Board type | Slave Board (SB) |
|---|---|
| Addressing | 4 Dip Switch |
| Peripheral description | 3 Neopixel channels |
| Neopixel Outputs | connectors for the Neopixel channels |
| MCU | PIC16F1829 main controller board |
| Programmer Connector | PicKit 3 Microchip programmer/debugger connector |
| External Power Connector | terminal block for external power |
| Memory type | Flash |
| Memory | 14 KB |
| CPU Speed (MIPS) | 8 |
| RAM Bytes | 1,024 |
| Data EEPROM (bytes) | 256 |
| Digital Communication Peripherals | 1-UART, 1-A/E/USART, 1-SPI, 1-I2C1-MSSP(SPI/I2C) |
| Capture/Compare/PWM Peripherals | 2 CCP, 2 ECCP |

























