i2c smorgasbord
Last week I showed a 7-segment LED - the first i2c module - it's a tiny MCU (the SiliconLabs EFM8BB1) and LED display, plus some discrete parts. The whole module is meant to make it much easier to add a 7-segment display to a design. There's no layout -- drop in the 18x18 mm module and connect power and I2C. The rest is software.
This week a bunch of other modules are done. They're all using the same MCU (which keeps life simple) and have the same physical layout.
Clockwise, from top-left:
- 2-digit 7-segment LED
- RGB LED
- IR receiver (and remote)
- alarm buzzer
- analog knob

And of course they are all regular I2C devices, so usage is straightforward - for example send a RGB value to the LED, and it lights up in that color. This behavior is implemented by the microcontroller firmware. In the available 2K of flash, it's actually quite easy to fit in some quite sophisticated control logic.
The 2-digit 7-segment display is nice and bright, and the controller supports 256-step dimming. It has cuttable jumpers for setting the I2C address, so multiples can be put in a row.
The RGB LED is really bright, and has a nice gamma curve so it has plenty of detail at the low-end. The difference between #000000 and #010101 is only just visible. A lot of dimmable LEDs don't work this way, but since the MCU has 16-bit PWM, it's quite easy to get a proper dimming curve.
The IR receiver listens for NEC codes, and supplies them to the MCU as if they were key-press events. It works really well, and the IR sensor is sensitive enough to work across a room.
The alarm buzzer makes a variety of noises, all controlled by I2C writes. It's really loud. The plan is to extend the sound effects to fit in the 2K flash space.
The analog knob is a single-turn potentiometer that reads as a single I2C value 0-255. Couldn't be simpler.
The footprint uses castellated holes, so you can solder a 4-pin header straight to them. But you can also stick them onto a carrier board. Here's the temperature sensor, alarm buzzer and analog knob put together - maybe for an instant temperature alarm?
