Quarky Intellio I2C Communication
-
Available in: Block Coding
-
Mode: Stage Mode
-
WiFi Required: No
-
Compatible Hardware in Block Coding: Quarky Intellio
-
Compatible Hardware in Python: Quarky Intellio
-
Object Declaration in Python: NA
Introduction
The Quarky Intellio I2C Communication Extension allows Intellio to exchange data with other boards and I2C-compatible devices through the SDA and SCL lines.
Unlike Quarky, which supports only Master operation in this extension, Intellio can work as either a Master or a Slave.
This makes configurations such as the following possible:
- Intellio Master → Intellio Slave
- Quarky Master → Intellio Slave
- Intellio Master → multiple sensors
- Intellio Master → expansion boards
- Multiple I2C devices sharing one bus
What Is I2C Communication?
I2C is a short-distance digital communication method that connects devices using:
- SDA: Serial Data
- SCL: Serial Clock
A single bus can support one Master and multiple Slaves, provided each Slave uses a unique address.
Master Mode
When Intellio works as the Master, it:
- Starts communication
- Generates the clock
- Selects the Slave address
- Sends data
- Requests data from Slaves
Slave Mode
When Intellio works as a Slave, it:
- Waits for the Master
- Listens for its assigned address
- Receives data
- Returns data when requested
I2C Addresses
Every Intellio configured as a Slave must have a unique address.
For example:
0x08
If several Slaves share the same SDA and SCL lines, each must use a different address to avoid communication conflicts.
Accessing the I2C Extension in PictoBlox
Step 1: Open PictoBlox and select the Block Coding environment.

Step 2: Select Quarky Intellio as the board.

Step 3: Click on the Add Extension button from the bottom left corner of the Blocks Palette.
Step 4: Search for and select the Intellio I2C Communication.

For Intellio, the extension provides both Master and Slave blocks.

Intellio I2C Pin Mapping
| Intellio Pin | I2C Function |
| A1 | SDA |
| A2 | SCL |
Connecting Intellio Master to Intellio Slave
Connect:
- Master A1 → Slave A1 for SDA
- Master A2 → Slave A2 for SCL
- Master GND → Slave GND
- Connect VCC only when voltage and supply requirements are compatible.
Then configure one Intellio as the Master and the other as a Slave with a unique address.

Connecting Quarky Master to Intellio Slave
Connect:
- Quarky D1 → Intellio A1
- Quarky D2 → Intellio A2
- GND → GND
- Connect a compatible VCC supply if required.
Then initialise Quarky as Master and Intellio as Slave.
Separately Powered Boards
The boards can be powered separately.
In this case:
- VCC does not necessarily need to be connected.
- GND must still be common.
- SDA and SCL must use pull-ups to a voltage safe for every connected device.
Do not connect two different power outputs unless the hardware documentation explicitly allows it.