Faça uso da conectividade Bluetooth do Pico W para transmitir valores de seu sensor de temperatura para um telefone Android.

O Raspberry Pi Pico W, uma popular placa de desenvolvimento IoT da Raspberry Pi Foundation, ganhou muita força entre os fabricantes após seu lançamento em 2022. Desde o lançamento oficial da versão 1.5.1 do C SDK e a versão mais recente do MicroPython, ficou mais fácil fazer a conectividade Bluetooth funcionar na placa Raspberry Pi Pico W (e WH).

A placa permite que você leia e compartilhe dados via Bluetooth, abrindo uma infinidade de oportunidades de projetos em torno da IoT. E o bom é que requer apenas uma atualização de firmware. Basta seguir os passos abaixo para ler os dados do sensor usando Bluetooth em seu Raspberry Pi Pico W.

Raspberry Pi Pico W/WH e Bluetooth

O Raspberry Pi Pico W é uma placa de microcontrolador que se baseia no sucesso do modelo Raspberry Pi Pico original. Mantendo o mesmo fator de forma de seu antecessor, ele adiciona conectividade Wi-Fi e Bluetooth. Ainda possui o padrão

instagram viewer
Pinagem Raspberry Pi Pico para seus cabeçalhos GPIO duplos de 20 pinos.

O Pico W está equipado com o chipset de rádio Infineon CYW43439, que suporta inerentemente Wi-Fi 802.11n e Bluetooth 5.2.

Instalando o Pico C/C++ SDK mais recente

O Pico C/C++ SDK é um kit de desenvolvimento de software projetado especificamente para programar o microcontrolador Raspberry Pi Pico usando as linguagens de programação C e C++. Ele fornece um conjunto de bibliotecas, ferramentas e recursos para simplificar o processo de desenvolvimento e permitir que os desenvolvedores criem aplicativos para a placa Pico.

Para trabalhar com o Pico C/C++ SDK, você precisará de alguns componentes de software essenciais. Aqui está uma lista dos programas necessários para download:

  • Compilador ARM GCC: Usado para compilar e construir seu código C/C++ para o microcontrolador Pico.
  • CMake: um sistema de compilação multiplataforma que ajuda no gerenciamento do processo de compilação e na geração de arquivos de projeto.
  • Ferramentas de compilação para o Visual Studio 2019: essas ferramentas são necessárias se você estiver usando o Visual Studio como seu ambiente de desenvolvimento integrado (IDE).
  • Pitão: Esta linguagem de programação é usada por algumas das ferramentas Pico SDK, portanto, certifique-se de ter a versão 3.9 ou superior instalada.
  • git: este sistema de controle de versão permite que você gerencie e rastreie alterações em sua base de código.
  • Código do Visual Studio: embora não seja obrigatório, o Visual Studio Code é um editor de código popular com excelente suporte para Pico SDK, fornecendo recursos como realce de sintaxe, conclusão de código e depuração.

Instalação do MicroPython

Alternativamente, você pode usar o MicroPython para programar seu Pico W, como usaremos em nosso exemplo abaixo. Aqui estão as etapas que você precisará seguir para instalá-lo e usá-lo.

Piscando o firmware UF2

Existem algumas maneiras de colocar a placa Pico W no modo bootloader. Uma maneira é executar o comando machine.bootloader() no MicroPython REPL. Outra opção é manter pressionado o botão BOOTSEL do Pico enquanto conecta a placa à porta USB do computador.

Assim que seu Pico estiver no modo bootloader, você notará que um dispositivo de armazenamento em massa USB aparece em seu computador.

Agora, tudo o que você precisa fazer é copiar o arquivo UF2, que contém o novo firmware, para este dispositivo de armazenamento em massa USB.

Você pode baixar o arquivo UF2 do Página de download do MicroPython- e se você quiser se aprofundar no que a atualização do suporte Bluetooth implica, você pode ir até o notas de lançamento.

Assim que o flash do firmware estiver em andamento, você verá o LED em sua placa Pico piscar rapidamente. A placa então se reinicializará automaticamente e estará pronta para uso.

Como alternativa, você pode atualizar o firmware para o Pico a partir do Thonny IDE, conforme detalhado abaixo.

Usando o Thonny IDE

Primeiro, conecte seu Pico a um computador via USB. Certifique-se de que o Pico esteja no modo bootloader pressionando o botão BOOTSEL ao conectar a placa.

Inicie o Thonny IDE em seu computador e você verá uma interface com a janela do editor, conforme mostrado abaixo.

Você precisará alterar o interpretador usado para MicroPython. No menu Thonny, vá para Ferramentas > Opções.

No Opções janela, clique no Intérprete aba. Escolher MicroPython (Raspberry Pi Pico) de Intérprete menu suspenso.

Definir a porta para Tente detectar automaticamente, clique no link de instalação na parte inferior, que abrirá outra janela de instalação. O IDE deve preencher automaticamente com os detalhes de sua placa juntamente com o firmware mais recente que você precisa instalar. Após a conclusão da instalação, clique no botão Fechar botão e, em seguida, selecione OK.

Salvando os Módulos Bluetooth Necessários

Para habilitar a comunicação Bluetooth Low Energy em seu Raspberry Pi Pico, você precisará salvar dois módulos MicroPython. Veja como você pode fazer isso usando o Thonny IDE (ou outros IDEs como o uPyCraft).

vá para o nosso repositório GitHub e pegue o primeiro código auxiliar sob o nome ble_advertising.py. Isso ajudará você a gerar cargas úteis e transmiti-las aos nós conectados.

Depois de copiar o código, abra um novo projeto no Thonny IDE e cole-o no editor. Em seguida, salve no Pico W it como ble_advertising.py clicando em Arquivo > Salvarcomo e então selecionando Framboesa Pi Pico.

Crie outro arquivo no Thonny e copie o código em um arquivo chamado ble_simple_peripheral.py no repositório do GitHub.

Salve o código com seu nome original na placa Pico W como você fez antes.

Lendo dados por Bluetooth LE usando Pi Pico W

Primeiro, certifique-se de pré-carregar a placa Pico W com os dois módulos (conforme abordado acima). Em seguida, crie um novo arquivo e copie o código abaixo nele.

de máquina importar Pino, ADC
importar Bluetooth
de ble_simple_peripheral importar BLESimplesPeripheral

# Crie um objeto Bluetooth Low Energy (BLE)
ble = bluetooth. BLE()

# Crie uma instância da classe BLESimplePeripheral com o objeto BLE
sp = BLESimplePeripheral (ble)
adc = ADC(4)

enquantoVerdadeiro:
se sp.is_connected(): # Verifique se uma conexão BLE foi estabelecida
# Leia o valor do sensor de temperatura interna
temperatura = adc.read_u16() * 3,3 / (65535 * 0,8)

# Transmite o valor da temperatura por BLE
temperature_data = str (temperatura).encode()
sp.enviar(dados_da_temperatura)
tempo.dormir(1)

Este código irá ler o sensor de temperatura interna do Pico e transmiti-lo via Bluetooth. Salve o arquivo como main.py em sua placa Pico W, em seguida, execute-o em Thonny. Você deve conseguir ver "Iniciando Publicidade" na área Shell.

Configurando o aplicativo Android

No seu telefone Android, instale o aplicativo Serial Bluetooth Terminal da Google Play Store.

Download:Terminal Serial Bluetooth (Compras gratuitas no aplicativo disponíveis)

Ligue o Bluetooth do seu telefone e inicie o aplicativo. Navegar para Dispositivos.

Vou ao Bluetooth LE guia, em seguida, clique em VARREDURA.

Após a digitalização, você verá o nome do Pico W listado como mpy-uart. Clique nele para se conectar.

Depois que os dois dispositivos estiverem conectados, você verá a palavra "Conectado" no aplicativo terminal visualizar.

Os valores do sensor de temperatura devem começar a ser preenchidos no terminal do aplicativo a cada segundo, conforme a figura acima.

Você pode se conectar via Bluetooth a outro Pico W servindo em uma função "central" pré-carregando o módulo auxiliar com o nome ble_simple_central.py encontrado no repositório MUO GitHub.

Melhore sua experiência no Pico W

Com a integração Bluetooth, a coleta de valores do sensor torna-se fácil, desbloqueando novas possibilidades e aprimorando a experiência geral de trabalhar com o Raspberry Pi Pico W em projetos de IoT.