The design offers a customizable LED control solution with complete RGB control, brightness, and effects via a GUI optimised for mobile device integration.
Complete control of RGB LEDs allows users to manage the colour, blink rate, brightness, and breathing (turn on/turn off speed) through an SPI interface and a software GUI that operates on MAC and Windows PCs via a USB cable. Additionally, the Lattice RGB reference design offers a low-cost, rapid customization option, enabling the integration of a fully controlled LED into any type of design and allowing for quick adaptation of LED operation to meet specific application needs.
The feature set provides complete control of an RGB LED, including colour, brightness and intensity, blink rate, and breathing (turn on/turn off speed), through a software demonstration GUI compatible with both MAC and Windows PCs via USB. Users can control all four LED functions and evaluate their designs using hardware evaluation boards such as the iCE40LP1K Evaluation Kit, iCE40 Ultra Breakout Board, or iCE40 UltraLite Breakout Board. The ultra-compact design requires as few as 700 LUTs, making it highly efficient and adaptable for various applications.
The iCE40 Ultra Mobile Development Platform is designed to operate multi-colour LEDs (RGB) with individual brightness adjustments using Pulse Width Modulation (PWM), automatic blinking control, and an optional breath on/off feature. It is equipped with an iCE40 Ultra device programmed with a design incorporating an I2C slave interface, data control, buffer, and LED control functionalities. This device can be seamlessly interfaced with the application processor to drive the LED effectively.
Additionally, the module features an RGB driver equipped with a constant current sink and incorporates a power-on system reset function. The I2C Slave Wrapper module is a crucial component that instantiates the i2c Slave module, where the I2C hard IP primitive is embedded. This setup implements a state machine designed to interface with the system bus. The state machine is responsible for the initial configuration of the primitive either at power-on or following a reset event. It also handles the tasks of reading and writing to the system bus, enabling the extraction of data received on the I2C controller and its subsequent delivery to higher-level modules, signalled by a receiver-ready indicator.
The iCE40 Ultra family from Lattice Semiconductor is a low-power chip for smartphones, tablets, and handheld gadgets. It helps manage sensors and other tasks while using very little energy. This chip can connect to mobile sensors and processors using built-in SPI and I2C blocks. It also has two built-in clocks, one running at 10 kHz for low-power tasks that are always on and another at 48 MHz for more active tasks when needed.
Lattice Semiconductor has tested this reference design. It comes with a bill of materials (BOM), schematics, assembly drawing, printed circuit board (PCB) layout, and more. The company’s website has additional data about the reference design. To read more about this reference design, click here.