Programando a Franzininho WiFi com Zephyr RTOS

Franzininho WiFi com Zephyr

O Zephyr Project é uma iniciativa de código aberto da Linux Foundation que visa fornecer um RTOS (Real-Time Operating System) escalável, seguro e flexível para dispositivos IoT (Internet of Things) de todos os tamanhos. O projeto foi criado para atender à demanda crescente de sistemas operacionais de tempo real confiáveis para dispositivos conectados à Internet. Com o Zephyr Project, os desenvolvedores podem criar aplicativos IoT seguros e robustos em várias plataformas, desde dispositivos wearables e sensores de baixo consumo até sistemas de borda mais complexos. Além disso, o Zephyr Project é altamente personalizável e suporta uma ampla variedade de arquiteturas de processadores e dispositivos de hardware. Isso o torna uma opção atraente para desenvolvedores de IoT que buscam um RTOS de alto desempenho e fácil de usar.

Nesse texto apresentaremos os primeiros passos para configurar o ambiente para programar a Franzininho WiFi. 

Antes de começarmos o texto, deixamos aqui o agradecimento ao Felipe Neves por adicionar o suporte a Franzininho WiFi ao Zephyr project no final de 2022.

Sobre a Franzininho WiFi

Franzininho WiFi é uma placa de desenvolvimento educacional baseada no ESP32-S2, que SoC da Espressif com Wi-Fi e baixo consumo de energia, projetado para ser seguro e econômico, com alto desempenho e um rico conjunto de recursos de IOs.

Recursos da Franzininho WiFi

A Franzininho WiFi possui os seguintes recursos:

  • Módulo ESP32-S2
    • Microcontrolador Xtensa® single-core32-bit LX7 operando em até 240 MHz
    • Memórias: 128 KB de ROM, 320 KB de SRAM, 16 KB SRAM no RTC, 4MB de Flash
    • WiFi 802.11 b/g/n
    • Interfaces: GPIO, SPI, LCD, UART, I2C, I2S, Camera, IR,contador de pulsos, LED PWM, TWAI(CAN), USB 1.1 OTG, ADC, DAC, touch, sensor de temperatura interno.
    • Inicialização segura baseada em RSA-3072
    • Criptografia flash baseada em AES-XTS-256
    • Chave privada protegida e dispositivo seguro contra acesso de software
    • Aceleradores criptográficos para desempenho aprimorado
    • Proteção contra-ataques de injeção de falha física
  • Pinout:
    • 40 pinos divididos em 2×20 headers de 2,54 mm
    • 35 GPIOs
    • Compatível com protoboard
  • 2 LEDS de uso geral
  • Botões: 1xReset, 1 x Boot
  • USB: conector micro USB – OTG 1.1
  • Alimentação:
    • 5V via conector USB
    • 5V e GND via pinos
    • 3V3 e GND via pinos
  • Formas de programação:
    • ESP-IDF,
    • Arduino,
    • CircuitPyhton,
    • MicroPython,
    • Zephyr,
    • NuttX
Franzininho WiFi com Zephyr

Confira mais detalhes da placa em: Franzininho WiFi: A placa versátil para iniciantes e desenvolvedores experientes

Programando a Franzininho WiFi com Zephyr RTOS

Instalação do Zephyr RTOS:

Para instalação do Zephyr siga os passos apresentados e: https://docs.zephyrproject.org/latest/develop/getting_started/index.html

Se preferir um material em português, recomendo os seguintes artigos publicados aqui no Embarcados:

Zephyr RTOS no ESP32 – Primeiros Passos

Zephyr RTOS – Instalando o Ambiente de Desenvolvimento

Pré-requisitos

O Espressif HAL requer blobs binários de WiFi e Bluetooth para funcionar. Execute o comando abaixo para recuperar esses arquivos:

west blobs fetch hal_espressif

Observação:

Recomenda-se executar o comando acima após : west update

Building & Flashing

O Build & Flash é feito normalmente (consulte Construindo um aplicativo e Executando um aplicativo para obter mais detalhes):

# From the root of the zephyr repository
west build -b esp32s2_franzininho samples/hello_world

O target flash normalmente funcionará com a configuração da placa esp32s2_franzininho. Aqui está um exemplo para o Hello World:

# From the root of the zephyr repository
west build -b esp32s2_franzininho samples/hello_world
west flash

Abra o monitor serial usando o seguinte comando:

west espressif monitor

Depois que a placa for automaticamente inicializada, você deverá ver a seguinte mensagem no monitor:

***** Booting Zephyr OS vx.x.x-xxx-gxxxxxxxxxxxx *****
Hello World! esp32s2_franzininho

Observação:

Para o Flaash e Build é necessário um conversor USB/Serial ligados aos pinos TX(43) e RX(44). A USB ainda não está suportada.

Saiba Mais

Webinar Gravado: Zephyr RTOS – Por que você deveria utilizá-lo em seu próximo projeto?

Blink LED no ESP32 e Zephyr RTOS

Webinar gravado: Zephyr Project – Um RTOS para IOT

Criando uma aplicação Zephyr out-of-tree com WIFI do ESP32 habilitado

Zephyr RTOS – Primeiro Projeto BLE: Monitor Cardíaco

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 » Programando a Franzininho WiFi com Zephyr RTOS

EM DESTAQUE

WEBINARS

VEJA TAMBÉM

JUNTE-SE HOJE À COMUNIDADE EMBARCADOS

Talvez você goste: