Raspberry Pi Pico: Conhecendo a extensão oficial para VS Code

Introdução

As placas Raspberry Pi Pico são placas que possuem microcontroladores desenvolvidos pela Raspberry Pi e seus microcontroladores vêm ganhando visibilidade no mercado por seu custo-benefício. Desenvolver firmware em C/C++ para a Raspberry Pi Pico utilizando o Pico SDK não é algo tão simples, é necessário fazer download de ferramentas essenciais para o toolchain, saber configurá-las e consequentemente ter certo conhecimento sobre as mesmas e como tudo se inter-relaciona, tudo para poder desenvolver o firmware para o target em questão sem muitos contratempos.

Recentemente, buscando melhorar a experiência no desenvolvimento de firmware para produtos que utilizam os microcontroladores RP2040 ou RP2350, a Raspberry Pi lançou a extensão para VS Code denominada “Raspberry Pi Pico”, uma extensão que auxilia no desenvolvimento de software embarcado, começando por auxiliar na autoconfiguração de todo ambiente para desenvolvimento — o que inclui a instalação e configuração de toda toolchain —, funções que auxiliam durante o desenvolvimento de código, tal como, funções de depuração, flashing de programa, etc.; e mais. Atualmente, a mesma suporta projetos em C/C++ ou MicroPython e já inclui diversas boards de outros fabricantes que utilizam o RP2040 ou RP2350.

Desafios no desenvolvimento de software utilizando o Pico/C++ SDK

Quem já utilizou a Raspberry Pico com o Pico C/C++ SDK sabe que preparar o ambiente para desenvolvimento, incluindo a instalação e configuração de ferramentas como gcc, cmake, openocd, gdb, entre outros, não é uma tarefa tão simples. Algumas opções para trabalhar com o Pico SDK são:

  • Windows: Um instalador disponibilizado pela Raspberry Pi (Pico Setup Windows; descontinuado), ou a utilização do WSL no mesmo com USBIPD-win.
  • Linux e MacOS: Soluções mais complexas, utilizando containers com ambiente e toolchain pré-configurados ou a instalação de todas as ferramentas necessárias no teu host, o que no geral demanda certo conhecimento da integração entre as ferramentas para ter o teu projeto em funcionamento.
Figura 1 – Opções comuns para Pico SDK – Fonte: Autoria Própria

Extensão oficial da Raspberry Pi Pico para o VS Code

Ainda no ano de 2024, a Raspberry Pi lançou a extensão “Raspberry Pi Pico” para o VS Code, uma ferramenta que busca facilitar o processo de instalação e utilização da toolchain da Raspberry Pi Pico em projetos da mesma. A mesma alinha praticidade e economia de tempo para o desenvolvedor poder ter uma melhor experiência na compilação cruzada para o target em questão. Atualmente a extensão encontra-se “em desenvolvimento”, porém já é recomendada em parte da documentação oficial da Raspberry Pi Pico, ela possui atualizações recorrentes e seu projeto se encontra no repositório pico-vscode.

Instalando as dependências

A instalação e uso da extensão já é sugerida na documentação oficial da Raspberry, conforme descrito no documento oficial da Raspberry Pi Pico “Getting Started with Raspberry Pi Pico-series: C/C++ development with Raspberry Pi Pico-series and other Raspberry Pi microcontroller-based boards”, capítulo 3, “Install the Raspberry Pi Pico VS Code Extension”, que trata sobre a instalação da extensão no VS Code, há poucos requisitos para a instalação da mesma, a depender do sistema operacional. Veja a seguir as dependências para cada sistema operacional segundo a documentação atual:

Windows: não há dependência necessária para instalar a extensão no VS Code do Windows.

Linux: No Linux é necessário instalar python3, git, tar, build-essential e gdb-multiarch, caso o OS seja Ubuntu 22.04, ainda é necessário instalar mais dois pacotes: libftdi1-2 e libhidapi-hidraw0 para utilizar o OpenOCD.

macOS: Já no Mac, a recomendação é a execução da seguinte linha de comando: $ xcode-select –install, para serem instalados o Git, Tar, e um compilador de C/C++ nativo.

Recomenda-se acompanhar também — além da documentação — o README do projeto pico-vscode no github para verificar as dependências atualizadas.

Instalando a extensão no VS Code

Após instalar as dependências, para instalar a extensão no VS Code é necessário seguir os passos a seguir:

Figura 2 – Instalando Extensão Pico – Fonte: Autoria própria

  1. Abra o ícone Extensions
  2. Procure por “raspberry pi pico”
  3. Instale a extensão clicando em “Install”

Quando a instalação finalizar, verifique se o símbolo da extensão aparecerá no “Activity sidebar” do VS Code, conforme demonstrado na imagem abaixo:

Figura 3 – Verificando a instalação da extensão Pico – Fonte: Autoria própria

Criando um projeto “Hello, world!”

Na figura abaixo é possível verificar diversas funções da extensão, as quais podem ser divididas basicamente em três partes, conforme imagem abaixo:

Figura 4 – Funções da Extensão Pico – Fonte: Autoria própria

  • Funções gerais: Servem para auxiliar na criação ou importação de projetos.
  • Funções de desenvolvimento: Auxiliam no desenvolvimento e teste do firmware; Estão disponíveis funções para compilar o código, gravar o programa na placa, depurar, e assim por diante.
  • Documentação: Ao clicar em um dos tópicos, é possível abrir parte da documentação da Raspberry no próprio VS Code.

Criando um novo projeto

Para continuar, clicaremos em General → New C/C++ Project, e a tela que aparecerá deverá ser parecida com a da imagem abaixo:

Figura 5 – Criando projeto com extensão Pico – Fonte: Autoria própria

Nesse caso o projeto chamará “hello_world”, defini o target, que será o Pico W, e também configurei para utilizar a comunicação UART (Console over UART) entre o MCU e o meu host, para que assim eu receba o printf(“Hello World!) através do Debug Probe conectado na Raspberry Pico W.

Após clicar no botão Create, acontecerão as seguintes coisas:

  • O VS Code baixará, instalará o SDK selecionado e o restante do toolchain.
  • O projeto será criado, configurado e iniciado já com o ambiente de desenvolvimento previamente definido.

Montagem do circuito

Para este projeto estou utilizando uma Raspberry Pi Debug Probe conectada ao Raspberry Pi Pico W, o código é enviado através da Debug Probe para a Pico W, segue montagem conforme imagem a seguir:

Figura 6 – Montagem física do circuito – Fonte: Autoria própria

Testando o código

Para compilar e gravar o firmware no nosso target, basta ir até a extensão Raspberry Pi Pico e clicar em “Flash Project”, o código então será gravado na Pico.

Figura 7 – Gravando o código – Fonte: Autoria Própria

E por fim, na imagem a seguir é possível ver a leitura dos dados que a Pico W está enviando através do Debug Probe via UART para o computador através da extensão “Serial Monitor”.

Figura 8 – Verificando os dados UART – Fonte: Autoria própria 

Conclusão

A extensão demonstra ser uma boa opção para desenvolvedores de software embarcado para microcontroladores RP2040 ou RP2350, ela se destaca primeiramente pela facilidade de configuração do ambiente para trabalhar com o firmware para estes targets, dado que para tal é necessário a instalação das dependências e da extensão, e também por possuir features “de fábrica” para depuração, flashing, e assim por diante, tudo pré-configurado, mas também abrindo espaço para customizações, para que assim se adeque melhor ainda dado a necessidade de cada tipo de desenvolvedor de firmware.

Como é uma extensão relativamente nova, a mesma pode apresentar alguns bugs, ou falta de informação em documentos oficiais sobre sua utilização, mesmo assim é uma boa alternativa, principalmente porque a Raspberry Pi e os contribuidores do projeto vêm contribuindo para torná-la a cada dia mais útil e funcional.

Referências

Licença Creative Commons Esta obra está licenciada com uma Licença Creative Commons Atribuição-CompartilhaIgual 4.0 Internacional.
Comentários:
Notificações
Notificar
0 Comentários
recentes
antigos mais votados
Inline Feedbacks
View all comments
Home » Software » Raspberry Pi Pico: Conhecendo a extensão oficial para VS Code

EM DESTAQUE

WEBINARS

VEJA TAMBÉM

JUNTE-SE HOJE À COMUNIDADE EMBARCADOS

Talvez você goste: