Voltar às atualizações
New releaseSep 9, 2026

renode v1.17.0

Framework de simulação de código aberto para desenvolver, testar e depurar software não modificado para sistemas embarcados e IoT multinó, suportando ARM, RISC-V, x86 e mais.

Compartilhar

Renode

Copyright (c) 2010-2026 Antmicro

View on Antmicro Open Source Portal

O que é o Renode?

O Renode foi criado pela Antmicro como uma ferramenta virtual de desenvolvimento para redes embarcadas multi-nó (com e sem fio) e tem como objetivo permitir um fluxo de trabalho escalável para criar sistemas IoT eficazes, testados e seguros.

Com o Renode, desenvolver, testar, depurar e simular software não modificado para dispositivos IoT é rápido, econômico e confiável.

As arquiteturas suportadas incluem:

  • ARMv7 and ARMv8 Cortex-A, Cortex-R and Cortex-M
  • x86 and x86_64
  • RISC-V
  • SPARC
  • POWER
  • Xtensa
  • MSP430X

Por que usar o Renode?

O Renode foi criado com base em muitos anos de experiência no desenvolvimento de software para sistemas embarcados — tanto para gateways, computadores de bordo, quanto para nós sensores e microcontroladores.

Testar e desenvolver sistemas embarcados físicos é difícil devido à baixa reprodutibilidade e falta de visibilidade do estado atual de um sistema, especialmente em cenários multi-nó.

O Renode resolve esse problema permitindo que você execute binários não modificados — idênticos aos que você normalmente gravaria no hardware alvo — em uma placa virtual ou sistema de placas.

Um aspecto importante da ferramenta é que ela simula não apenas CPUs, mas SoCs inteiros (por exemplo, SoCs heterogêneos multi-core e vários periféricos), bem como as conexões com e sem fio entre eles, permitindo que os usuários abordem cenários complexos e testem software de produção real.

Instalação

Builds e versões disponíveis

Nightly builds

Nightly builds do Renode para todos os sistemas estão disponíveis em builds.renode.io.

Os builds mais recentes estão sempre disponíveis como pacotes renode-latest.*. Os seguintes formatos de pacote estão disponíveis:

Lançamentos estáveis

Lançamentos estáveis numerados e suas notas de lançamento estão disponíveis na seção Releases no GitHub.

Instalação a partir do homebrew tap

No macOS, tanto as versões estáveis quanto as nightly do Renode podem ser instaladas com Homebrew a partir do nosso tap personalizado. Para instalar a versão estável, use brew install renode/tap/renode, ou brew install renode/tap/renode-nightly para a última nightly build. Isso instalará todas as dependências, incluindo a pré-configuração do ambiente python para renode-test

Usando o lançamento portátil Linux

Se você é um usuário Linux, a maneira mais fácil de usar o Renode é baixar o linux-portable mais recente da seção de releases e descompactá-lo usando:

mkdir renode_portable
wget https://builds.renode.io/renode-latest.linux-portable.tar.gz
tar xf  renode-latest.linux-portable.tar.gz -C renode_portable --strip-components=1

Para usá-lo de qualquer local, entre no diretório criado e adicione-o ao PATH do sistema:

cd renode_portable
export PATH="`pwd`:$PATH"

Observe que o pacote portátil requer GTK2 disponível no host para ser executado com a UI ativada.

Siga a seção Pré-requisitos Adicionais se desejar usar o Robot Framework para testes. Caso contrário, prossiga para a seção 'Executando o Renode'.

Instalando dependências

dotnet

O Renode requer dotnet >= 6.0.

Para instalar o dotnet, siga o guia de instalação oficial.

Outras dependências (somente Linux)

No Ubuntu 20.04, você pode instalar as dependências restantes com o seguinte comando:

sudo apt-get install policykit-1 libgtk2.0-0 screen uml-utilities gtk-sharp2 libc6-dev libicu-dev gcc python3 python3-pip

Se estiver usando uma distribuição diferente, você precisará instalar uma lista análoga de pacotes usando seu gerenciador de pacotes; note que os nomes dos pacotes podem diferir ligeiramente.

Instalando a partir de pacotes

Vá para a seção de releases deste repositório e baixe um pacote apropriado para o seu sistema.

Linux

Instale o Renode com seu gerenciador de pacotes preferido usando os pacotes fornecidos *.deb, *.rpm ou *.pkg.tar.xz.

macOS

Use o *.dmg fornecido normalmente.
Além disso, para usar o Renode pela linha de comando no macOS, crie aliases apropriados adicionando alias renode='/Applications/Renode.app/Contents/MacOS/renode' e alias renode-test='/Applications/Renode.app/Contents/MacOS/renode-test' ao seu arquivo .bashrc ou .zshrc, dependendo do shell que você está usando.

Windows

Instale o Renode a partir do arquivo *.msi fornecido. O instalador permitirá adicionar ícones à sua Área de Trabalho e/ou Menu Iniciar e uma entrada ao seu PATH.

Pré-requisitos adicionais

Testes com Robot Framework

Para escrever e executar casos de teste, o Renode se integra ao framework de testes Robot. Isso requer que você instale o Python 3 (no Windows, você também precisará do Cygwin - veja as instruções de instalação avançadas) com pip (note que o pacote relevante pode ser chamado de python-pip ou python3-pip no Linux).

Uma vez que você tenha Python 3 e pip, instale módulos adicionais:

python3 -m pip install -r tests/requirements.txt

Outras ferramentas

Além disso, cada uma das ferramentas no subdiretório /tools pode conter um arquivo requirements.txt separado dos requisitos do Renode.

Instale-os em seu ambiente virtual com pip install -r requirements.txt.

Compilando a partir do código fonte

Para informações sobre como compilar o Renode a partir do código fonte, veja a documentação.

Executando o Renode

Após seguir as instruções acima sobre instalação a partir de um pacote, você deve ter o comando renode disponível em todo o sistema:

renode [flags] [file]

Se você o compilou a partir do código fonte, navegue até o diretório relevante e use:

./renode [flags] [file]

O argumento opcional [file] permite fornecer o caminho para um script a ser executado na inicialização.

O script aceita várias flags opcionais, as mais úteis são apresentadas abaixo:

-p                  Remove códigos de controle (ex.: cores) da saída
-P      INT32       Em vez de abrir uma janela, escuta comandos do Monitor na porta especificada
-e      COMANDO     Executa comando na inicialização (executado após o script opcional). Pode ser usado várias vezes
--console           Executa o Monitor no console em vez de uma janela separada
--disable-gui       Desativa o suporte GUI XWT. Define automaticamente HideMonitor
--hide-monitor      Não mostra a janela do Monitor
--hide-log          Não mostra mensagens de log no console
--hide-analyzers    Não mostra analisadores
-v                  Exibe a versão e sai
-h                  Exibe informações de ajuda e uso

O Renode pode ser executado em sistemas Windows com um conjunto similar de flags opcionais.

Cenário de exemplo

Abaixo, você pode ver um pedaço de firmware executando em hardware simulado. O Monitor do Renode é visível junto com uma janela de analisador exibindo a saída UART e o logger. Para mais informações sobre esta configuração específica, veja seu repositório dedicado.

Renode screencast

Formas alternativas de executar o Renode no Linux

renode-run

renode-run é um script Python que baixa e executa o Renode, e permite executar facilmente demos disponíveis no Renodepedia bem como arquivos ELF locais. Vá para o repositório para instruções de uso.

renode-run depende de um pacote portátil e sua principal vantagem é a facilidade de atualizar o Renode para a última nightly build usando um único comando.

pyrenode3

pyrenode3 é uma biblioteca Python para interagir com o Renode programaticamente. Vá para o repositório para instruções de uso.

Executando o Renode em um container Docker

Se você deseja executar o Renode no Docker, pode usar imagens pré-construídas disponíveis no Docker Hub.

Para iniciar o Renode em modo interativo no Linux, assumindo que você tenha o Docker instalado em seu sistema, execute um dos seguintes:

  • Para a versão numerada mais recente:
    docker run -ti -e DISPLAY -v $XAUTHORITY:/home/developer/.Xauthority --net=host antmicro/renode:latest
    
  • Para uma nightly build dotnet:
    docker run -ti -e DISPLAY -v $XAUTHORITY:/home/developer/.Xauthority --net=host antmicro/renode:nightly-dotnet
    

Isso exibirá a janela do Monitor do Renode. Alternativamente, você pode fornecer seu comando personalizado no final da linha acima.

Para executar a imagem em modo console sem passagem do servidor X, execute:

docker run -ti antmicro/renode bash

Você pode adicionar mais switches -v ao comando para montar seus próprios diretórios.

Para mais informações e o Dockerfile subjacente, visite o repositório no GitHub.

Documentação

A documentação está disponível no Read the Docs.

Licença e contribuições

O Renode é distribuído sob a licença MIT permissiva. Para detalhes, veja o arquivo LICENSE.

Estamos felizes em aceitar relatórios de bugs, solicitações de funcionalidades e contribuições via pull requests / issues no GitHub. Para detalhes, veja o arquivo CONTRIBUTING.md.

Suporte comercial

Suporte comercial para o Renode é fornecido pela Antmicro, uma empresa especializada em ajudar seus clientes a adotar novas tecnologias embarcadas e metodologias de desenvolvimento modernas.

A Antmicro criou e mantém o Framework Renode e ferramentas relacionadas e está feliz em fornecer serviços como adição de novas plataformas, integrações, plugins e ferramentas.

Para consultar sobre nossos serviços, entre em contato conosco pelo e-mail [email protected].

Categorias