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.
Set up Visual Studio Code and Jaguar for local development.
Write a simple program that runs "hello world" on your device.
A description of 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 (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.
Use PWM to fade an LED.
Use PWM to control a servo motor.
Use PWM to control a buzzer.
Tutorials on using pins as input.
Use a button.
Use binary sensors.
Analog to Digital Converter
Use the built-in analog-to-digital converter (ADC).
Use a potentiometer with an ADC.
This section provides an introduction to I2C and guides you through using it with different sensors and devices.
An introduction to I2C.
Measure temperature, humidity, and pressure with a BME280 sensor.
Pixel graphics on an SSD1306 display.
Tutorials on how to use a variety of other hardware components you may find useful in your projects.
Use a neopixel LED strip/ring.
Use a DHT11 sensor to measure temperature and humidity.
Use a DS18B20 sensor to measure the temperature.
Measure distance with an HC-SR04 ultrasonic distance sensor.
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.
Introduction to BLE.
Get to know about how to use the network capabilities of your device.
Connect to the internet with HTTP.
HTTP chat server
Write an HTTP chat server using websockets.
HTTP File server
Build a simple file server with HTTP. This server runs on your desktop computer and not on your device.
Send data to a Google Sheets spreadsheet.
Communicate with your device through Telegram.
Store data in a Supabase database.
MQTT with Adafruit
Use Adafruit IO as your MQTT broker.
MQTT with AWS IoT Core
Use AWS IoT Core as your MQTT broker.
Learn how to use containers to run multiple programs independently on your device, and how they can communicate with each other.
Containers with the SDK
Containers with Jaguar
Containers with Artemis
Learn how to carry out common tasks such as working with dates and times, and synchronizing the time with an NTP server.
Date, time, and NTP
Learn how to synchronize the time with an NTP server, and how to work with dates and times.
Learn how to work with secrets in your Toit project.
Over the air updates
Learn how to update your device's firmware over the air.
Ensure that your device never gets stuck and is always running with a watchdog.
A few simple projects to get you started.