Ir para o conteúdo principal

Configurando seu projeto (wokwi.toml)

Para simular seu projeto no Wokwi, você precisa criar dois arquivos no diretório raiz do seu projeto:

  • wokwi.toml - um arquivo de configuração que informa ao Wokwi como executar seu projeto.
  • diagram.json - um arquivo de diagrama que descreve o circuito.

wokwi.toml

Um arquivo wokwi.toml básico se parece com isto:

[wokwi]
version = 1
firmware = 'path-to-your-firmware.hex'
elf = 'path-to-your-firmware.elf'

Substitua "path-to-your-firmware" pelo local do firmware compilado, relativo ao arquivo wokwi.toml (que é o diretório raiz do seu espaço de trabalho).

A extensão do arquivo de firmware depende da placa que você está usando:

PlacaTipos de firmware suportados
Arduino Uno/Mega, ATtiny85.hex, .elf
Raspberry Pi Pico.hex, .uf2
ESP32 Family.bin, .uf2, .elf

Verifique sua configuração pressionando F1 e selecionando "Wokwi: Start Simulator".

Aviso

Evite usar barras invertidas (\) em seus caminhos. Em vez disso, use a barra (/), pois permite abrir seu projeto em qualquer plataforma (Windows, Mac e Linux).

Redirecionamento de porta serial

Wokwi for VS Code permite que você se conecte à porta serial do microcontrolador simulado usando um servidor TCP RFC2217. Para habilitar este recurso, adicione a seguinte configuração ao seu arquivo wokwi.toml, dentro da seção [wokwi]:

rfc2217ServerPort = 4000

Isso iniciará um servidor RFC2217 na porta 4000. Você pode usar qualquer cliente telnet (por exemplo, PuTTY) para se conectar à porta serial. Além disso, você pode usar o suporte RFC2217 do PySerial para se conectar à porta serial do seu código Python:

import serial
ser = serial.serial_for_url('rfc2217://localhost:4000', baudrate=115200)
ser.write(b'hello')

Nota: Certifique-se de que a guia do simulador esteja visível no VS Code, caso contrário, a simulação pode pausar e você não obterá nenhuma saída serial do microcontrolador.

Gateway IoT (ESP32 Wi-Fi)

O Wokwi for VS Code inclui uma versão integrada do Wokwi Private IoT Gateway, que permite conectar o WiFi virtual do ESP32 simulado à sua rede local e à Internet.

Você também pode se conectar ao ESP simulado do seu computador (por exemplo, você está executando um servidor web no ESP32). Para fazer isso, configure o encaminhamento de porta em wokwi.toml. Por exemplo, para encaminhar a porta local 8180 para a porta 80 no ESP32, adicione a seguinte configuração:

# Encaminhe http://localhost:8180 para a porta 80 no ESP32 simulado:
[[net.forward]]
from = "localhost:8180"
to = "device:80"

Para um exemplo completo, consulte o projeto ESP32 Web Server.

Chips personalizados

Você pode carregar chips personalizados para a simulação adicionando uma seção [[chip]] à sua configuração wokwi.toml. O exemplo a seguir carregará um chip de "chip/inverter.chip.wasm" e o disponibilizará sob o nome chip-inverter no diagrama do Wokwi:

[[chip]]
name = 'inverter' # Para usar o chip no diagram.json, adicione uma peça do tipo "chip-inverter".
binary = 'chips/inverter.chip.wasm'

O Wokwi também requer um arquivo JSON que descreva os pinos do chip. O arquivo JSON deve ter o mesmo nome do binário wasm, mas com uma extensão json (por exemplo, chips/inverter.chip.json do exemplo acima). Para um exemplo completo, confira o repositório do chip inversor.

Você pode adicionar vários chips ao seu projeto adicionando várias seções [[chip]], cada uma com um nome e binário diferentes.

diagram.json

Você pode copiar o arquivo de diagrama de um projeto existente em Wokwi.com. Por exemplo, se você estiver trabalhando em um projeto ESP32, poderá copiar o conteúdo do arquivo diagram.json de https://wokwi.com/projects/new/esp32.