I2C

The i2c extension controls and monitors components over an I2C bus. Provided are a set of interfaces through the support of adafruit-blinka. There are a large variety of supported linux boards that you can use I2C on.

This extension does not take an extension level config and is focused on interfaces.


Character Display Interface

Connect and control a character display over I2C to display messages.

OptionTypeRequiredDescription
key[String]YesUnique slug id for the component
address[Integer]YesThe i2c address of the display (as an integer) Default: 39.
name[String]NoFriendly display name of component. Useful for UI.
model[String]NoModel of display to use. Options: i2c, rgb, or pcf. Default i2c
default_duration[Integer]NoTime in seconds for messages to be displayed on screen by default when no duration is provided. Default: 5
max_duration[Integer]NoThe max time in seconds that messages can be on the screen. Default: 60
message_limit[Integer]NoNumber of messages to accept into queue before overwriting. Default: 20
topic[Integer]NoChannel to listen for events on. Default: char_display/{key}
persist_display[Boolean]NoSet to True to keep last message on screen when no new messages are available. Default: False

Config Examples

Here is a config of a complete i2c display.

"char_display": [{
    "key": "i2c_display_1",
    "interface": "i2c",
    "address": 39,
    "name": "I2C LCD Display",
    "model": "pcf",
    "max_duration": 30,
    "default_duration": 10,
    "topic": "char_display/i2c_display_1",
    "message_limit": 20,
    "persist_display": false
}]