terça-feira, abril 13, 2021

Usando a Raspberry Pi Pico na IDE Arduino - Suporte Oficial e Não Oficial

Talvez estejamos mal acostumados, mas a forma oficial da Raspberry para programação C/C++ na PiPico vem sendo considerada bastante complicada. É necessário instalar vários softwares (um plugin para o Visual Code automatiza isto, mas ainda são vários passos a serem seguidos) e a criação de um novo projeto requer mais que simplesmente dar File New e sair digitando.

O que muitos desejam é o suporte ao PiPico na IDE do Arduino. E isso já existe, tanto de forma oficial como não oficial. Vamos ver aqui como instalar e alguns detalhes sobre isso (por enquanto ainda não tenho muita experiência com as duas opções).


A Opção Não Oficial: Arduino-Pico de Earle F. Philhower III

Earle saiu na frente com este projeto. Desde o começo esta opção tem um suporte bastante completo às funções e bibliotecas Ardino e ela vem sendo atualizada com frequência. Além do PiPico são suportadas outras placas baseadas no RP2040.

Para instalar é necessário acrescentar a URL abaixo em "URLs Adicionais para Gerenciadores de Placas" (que fica em Arquivo Preferências):

https://github.com/earlephilhower/arduino-pico/releases/download/global/package_rp2040_index.json

Feito isso, basta entrar em Ferramentas, Placa, Gerenciador de Placas, esperar atualizar, procurar por Pico e selecionar Raspberry Pico/RP2040.

Na primeira gravação é necessário acionar o botão BOOTSEL, nas seguintes não será necessário (a maioria das vezes...).

A melhor referência sobre projeto está em https://arduino-pico.readthedocs.io/en/latest/.

A Versão Oficial

Anunciada no Arduino Day, já está disponível o suporte oficial ao PiPico. Neste caso não precisa incluir nenhuma URL adicional, basta ir direto em Ferramentas, Placa, Gerenciador de Placas, esperar atualizar, procurar por Pico e selecionar Arduino Mbed OS RP2040 boards. No momento apenas a PiPico é suportada.

O ponto que me chamou a atenção é a referência ao Mbed OS. Trata-se de um sistema operacional de tempo real (RTOS) para placas com ARM Cortex-M, criado pela ARM em parceria com outras empresas. Ele é usado em outras placas da Arduino, em particular os Nano 33 BLE. É um caminho diferente do usado na versão não-oficial, que roda em "bare metal". Não custa lembrar que a Arduino ainda não lançou uma placa com o RP2040.


Ambas as alternativas são recentes e estão em evolução, muitos bugs ainda devem existir. Um fator importante será o equilíbrio entre a compatibilidade com sketchs já existentes e o suporte a características próprias do PiPico. Neste ponto a solução oficial tem a vantagem de que suas decisões, como novas bibliotecas e funções, ganharem automaticamente o título de "oficiais".

Crédito: fiquei sabendo do suporte oficial através deste vídeo.


Nenhum comentário: