This page describes the PicoBus.1 object, its states and its transitions.

Bus state

The bus can be in several states
Initial state of the bus at power up
when no node has taken ownership of the bus
Master election
when one or more nodes are trying to take the bus ownership
when a master has bound the bus to a group nodes

Unknown state

This is the initial state entered when a node power ups. In this state, the node must be quiet waiting for the following events:


This state is entered after a period of inactivity longer than 1ms.

In this state, no node owns the bus and any node can start a master election process sending a break command.

Master election

In this state zero, one or more nodes competes to become the master. After the break symbol, all the nodes in competition start sending its own address. Every time a 1 symbol is sent, the bus is checked for collisions. If another node has overwritten the 1 symbol with a 0 symbol, the node refrains to become the master and waits for the next election.

After the 32 bit address is sent correctly, the node becomes the master and sends another 32 bit address representing the target node or group and the bus becomes bound and a 8-bit CRC checksum.

If no node is ready to become master after 1ms, the bus changes to the idle state.

Bound state

In this state, the master is ready to send commands to a single node or a group of nodes.

The bus exits this state when:

In this state, the master sends one PicoMessage.1 and, optionally, receives a response. Then, it can send more messages or release the bus issuing a break symbol.