A Web Application providing comprehensive access to I²C Bus devices. Running fully in the browser via Web Technologies (WebHID / SerialPort / ArrayBuffers etc)
Note: Chrome is recommended.
In order to bridge I²C into the browsers environment, several devices can be used:
- ExCamera i2cDriver (SerialPort)
- MCP2221 (WebHID)
- I2CBusService (REST API)
Each of these devices support the I2CBus
abstraction interface provided by AOD and makes extensive use of modern ArrayBuffer
.
Both drivers and bridges are fully isomorphic code supporting this native webapp and nodejs environments.
The I2CBus-TCA9548 is a similar I2CBus
implementation. It can provide auto-magic channel management of he TCA9548 device.
The above mentioned I2CBus-Service provides a REST API client that exposes a I2CBus
into the browser. The service itself can be setup to use all of the listed bridges above.
NodeJS (on devices like a Raspberry PI) can access the native Linux I²C Bus. A common implantation for this is i2c-bus
library.
In order to make it compatible with AOD I2CBus
API the adapter has been provided I2CBusFivdi.
This can be used withing the I2CBuService
or standalone in order to use AOD compatible devices.
While the bridges support a scan
mode screen, they also provide adding devices manually from a custom address. This can be useful when using devices such as the LTC4316 which can shift the address of a device, or when underlying bridge scans are not desired or able to find the device specified.
Many devices are supported natively:
Temperature:
GPIO Expander
Segment Display
Real-Time Clock
RFID / NFC
Accelerometer / Magnetometer
Current / Voltage
I²C Multiplexer
Potentiometer
Analog to Digital
Light
LED
Haptic Feedback