Free online MicroPython simulator for the Raspberry Pi Pico
O Mokxi é um simulador de MicroPython grátis que roda no seu navegador, sem instalar nada e sem precisar de conta. O Pico roda o firmware oficial MicroPython v1.29.0, byte a byte como o micropython.org o publica, no nosso próprio modelo do RP2040. Seu main.py é copiado para a placa do jeito que o Thonny copia, e machine.Pin, PWM, ADC, I2C e SPI acionam o circuito. Nada na página interpreta o seu Python.
- 503componentes na bancada
- 44placas rodando agora
- 1.00xtempo real, em todas as placas
Os números, não o marketing
Tirado do documento de contrato da própria placa e posto em palavras simples.
| O firmware | O UF2 oficial para o Raspberry Pi Pico, MicroPython v1.29.0, fixado pelo seu SHA-256 e iniciado pela boot ROM do RP2040 no nosso próprio núcleo Cortex-M0+ a 125 MHz. |
|---|---|
| machine | Pin com interrupções, PWM em todo pino GPIO, ADC nos GP26 a GP28, I2C e SoftI2C, SPI e SoftSPI, com I2C e SPI nos blocos do próprio RP2040 e DMA. |
| Bibliotecas | O ssd1306.py do micropython-lib desenha num OLED SSD1306, e um driver de BME280 lê o sensor, cada um como uma aba do projeto, como você os copiaria para um Pico de verdade. |
| O que não existe | Threads no segundo núcleo e machine.I2CTarget. Um programa que usa essas coisas para em vez de ler algo inventado. O PIO roda, e num Pico W o CYW43439 é modelado, então network.WLAN entra na rede simulada. |
Outros simuladores de MicroPython, com sinceridade
Se MicroPython é o que você precisa, saiba onde cada simulador para.
A página completa da placa
Todas as áreas de periféricos, todos os exemplos e as notas de ligação, num só lugar.
Exemplos que já rodam
Cada um está ligado e com código. Abra, aperte Rodar e depois mude o código.
Guias passo a passo para o Pico
Cada um tem os componentes, a ligação e o código, e termina num circuito que você pode rodar.
Perguntas
Este é o MicroPython de verdade?
Sim. É o firmware oficial do Raspberry Pi Pico, v1.29.0, o mesmo arquivo que você arrastaria para um de verdade, rodando instrução por instrução num RP2040 simulado. Nada na página interpreta Python.
Quais placas rodam MicroPython aqui?
O Raspberry Pi Pico e o Pico W (cujo CYW43439 é modelado, então network.WLAN entra na rede simulada), as placas ESP32-S3, ESP32-C3 e ESP32-C6, e as placas ESP32 clássicas (a DevKit V1, a DevKitC e a LOLIN32 Lite), cada uma com seu firmware oficial MicroPython v1.29.0.
Como eu começo?
Abra um dos exemplos abaixo, ou coloque um Pico no canvas e escolha MicroPython (main.py) no painel Firmware dele. Aperte Rodar: o main.py é copiado para a placa e roda, e print() aparece no Monitor Serial.
Existe um REPL?
Sim. Quando o main.py termina, ou depois de Ctrl-C, o Monitor Serial é o REPL da placa: digite 6*7 e ele responde 42.
Posso usar um OLED ou outros componentes I2C?
Sim. machine.I2C aciona o bloco I2C do próprio RP2040, I2C.scan() encontra os componentes no barramento, e o ssd1306.py do micropython-lib desenha num SSD1306. Um endereço ausente gera OSError: [Errno 5] EIO, como numa bancada.
Simula o PIO ou o segundo núcleo?
Ainda não. rp2.PIO e rp2.StateMachine dão falha, e iniciar uma thread no núcleo 1 para a placa com uma frase dizendo que isso não é simulado.
Posso mudar a velocidade do clock?
machine.freq(200_000_000) é aceito e informado, mas o núcleo continua a 125 MHz, então o código não fica mais rápido.
É grátis?
Sim, sem cartão e sem precisar de conta. O primeiro Rodar baixa o firmware, 229 KB, e o navegador o guarda para todos os Rodar seguintes.
Simuladores para um tipo de circuito
Um servo, um display, um driver de motor ou um retificador, cada um já rodando.
Teste seu próprio main.py no Pico
Escolha MicroPython (main.py) no painel Firmware do Pico e aperte Rodar. Nada para instalar e sem precisar de conta.