This section covers the essential setups you need to get started. From setting up your development environment to writing your first program and understanding Toit's package system.


This section explores various hardware aspects. From controlling output pins to using the I2C bus or BLE, it provides a comprehensive understanding of interfacing with different hardware components.



Tutorials on controlling output devices, such as LEDs.

Pulse Width Modulation

Pulse Width Modulation (PWM) is a technique for controlling the average power delivered by an electrical signal. By averaging the output over time, the result is an analog signal that can be used to control devices such as motors, LEDs, and buzzers.


Tutorials on using pins as input.


This section provides an introduction to I2C and guides you through using it with different sensors and devices.

Miscellaneous hardware components

Tutorials on how to use a variety of other hardware components you may find useful in your projects.


Learn how power management works and save precious battery life.


Learn the basics of Bluetooth Low Energy (BLE).

The following tutorials teach you how to advertise data, scan for nearby devices, and connect to a BLE device.


Get to know about how to use the network capabilities of your device.


Learn how to use containers to run multiple programs independently on your device, and how they can communicate with each other.

Common tasks

Learn how to carry out common tasks such as working with dates and times, and synchronizing the time with an NTP server.

Starter projects

A few simple projects to get you started.