Pular para o conteúdo principal

Configurando o Kit XIAO ESP32S3 & Wio-SX1262 como Gateway LoRaWAN de Canal Único

Gateways de canal único (chamados One-Channel Hub) são ferramentas de baixo custo que permitem aos usuários começar a explorar o mundo LoRa. Esses gateways podem receber pacotes LoRa em um fator de espalhamento e canal específicos e facilitar a troca desses pacotes com a rede. Devido ao seu baixo custo, muitos usuários começaram a construir seus próprios gateways de canal único para experimentar com LoRa.

O XIAO ESP32S3 como MCU host e o kit de rádio LoRa Wio-SX1262 podem ser configurados para funcionar como gateway de canal único. Este kit oferece uma solução prática para quem tem interesse em aprofundar-se na tecnologia LoRa e estabelecer conexões com o LNS (lora network server).

Este é o projeto no GitHub: One Channel Hub.

Gravar o Firmware

O firmware está preparado para instalação e vem pré-gravado no Kit XIAO ESP32S3 & Wio-SX1262 com case 3D. Se você quiser gravar o Kit XIAO ESP32S3 & Wio-SX1262 como Gateway LoRaWAN de Canal Único, basta fazer o download a partir da bin library.

dica

O Kit XIAO ESP32S3 & Wio-SX1262 com case 3D vem pré-gravado como um gateway LoRaWAN de Canal Único, pule para a próxima seção para configuração.

nota

Este firmware é construído com:

  • Selecionar a placa Seeed XIAO ESP32S3 Gateway
  • Modificar o tamanho da Flash para 8 MB
  • Habilitar Get config from flash
  • Desabilitar Wi-Fi provisionning
  • Desabilitar OLED Display

Uso:

  • Habilitar/desabilitar configuração através do botão do usuário
  • Nome de broadcast Bluetooth como "GW-XIAO-ESP32S3"
  • Conectar via SenseCraft APP e configurar Wi-Fi/LoRa

Se você não usa o ambiente completo ESP-IDF, também é possível gravar os arquivos binários fornecidos usando o utilitário esptool.

Clique para baixar o firmware:

Passo 1: Baixe o Esptool, para mais informações consulte a documentação do Esptool.

pip install esptool

Passo 2: Conecte o XIAO ESP32S3 ao seu PC.

Passo 3: Navegue até o arquivo baixado e abra o terminal/Command, então execute os comandos esptool.py.

  • Para Linux/macOS
esptool.py --chip esp32s3 -p port -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 8MB 0x0 seeed_xiao_esp32s3_devkit_bootloader.bin 0x10000 seeed_xiao_esp32s3_devkit_lorahub.bin 0x8000 seeed_xiao_esp32s3_devkit_partition-table.bin
  • Para Windows
py -m esptool --chip esp32s3 -p COM14 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 8MB 0x0 seeed_xiao_esp32s3_devkit_bootloader.bin 0x10000 seeed_xiao_esp32s3_devkit_lorahub.bin 0x8000 seeed_xiao_esp32s3_devkit_partition-table.bin

Substitua port pelo nome da porta serial usada. Se a conexão falhar, veja a seção Troubleshooting.

Gravar com esp-idf

Identifique o dispositivo serial associado ao One-Channel Hub a ser gravado. Para Linux e Mac, é possível verificar a porta serial por

ls /dev/cu*

depois grave usando idf.py, substitua a port

idf.py -p port flash

Se for retornado um erro de permissão, verifique se o usuário atual faz parte do grupo dialout. Se não, faça o seguinte, reinicie a máquina Linux e tente novamente:

sudo usermod -a -G dialout $USERNAME

Em uma configuração Windows, supondo que o dispositivo esteja montado como COM14, o comando acima seria algo como:

idf.py -p COM14 flash

Inicie o console do monitor para ver os logs (opcional).

idf.py -p port monitor

Gravar com esptool

Se não estiver usando o ambiente completo ESP-IDF, você pode simplesmente baixar os arquivos binários fornecidos seguindo a primeira seção.

Gravar com esptool-JS

Online esptool é recomendado para gravação.

Step1: Defina a taxa de Baud para 115200 e conecte à porta correta.

Step2: Escolha o arquivo bin e preencha o endereço de flash correspondente.

Endereço de FlashArquivo
0x0seeed_xiao_esp32s3_devkit_bootloader.bin
0x10000seeed_xiao_esp32s3_devkit_lorahub.bin
0x8000seeed_xiao_esp32s3_devkit_partition-table.bin

pir

Configuração via Sensecraft APP

Configuração de WiFi & LoRaWAN

Passo 1: Baixe o App SenseCraft: Download Link

Passo 2: Conecte o Kit XIAO ESP32S3 & Wio-SX1262 à alimentação.

Passo 3: Siga as instruções no aplicativo para configurar o WiFi e o LoRaWAN.

  • Registre-se e faça login no SenseCraft APP
  • Navegue até UserDevice Bluetooth Configuration
  • Selecione XIAO ESP32S3 & Wio-SX1262 Kit
  • Clique em Device is ready for configuration
  • Pressione o botão do kit uma vez. Quando o LED começar a piscar, ele entrará no modo de emparelhamento Bluetooth.

pir

Passo 4: Registre o Gateway LoRaWAN na The Things Network (TTN).

  • crie uma conta e faça login em https://eu1.cloud.thethings.network/.
  • Registre o gateway.
  • Copie o gateway EUI correto para o TTN e também preencha o frequency plan e o gateway ID corretos.
  • Reinicie o módulo gateway e aguarde cerca de 2 minutos. Depois você pode verificar o status de conexão do gateway.

Configuração via ESP BLE prov

nota

Se você quiser configurar o Wi-Fi usando ESP BLE prov e configurar o LoRaWAN usando o web client, precisa gravar este firmware. Observe que não é o mesmo firmware usado para configuração via aplicativo SenseCraft. Além disso, você pode configurar Enable Wi-Fi provisioning seguindo Customize and Build Firmware.

Configuração de Wi-Fi

Passo 1: Baixe o App ESP BLE prov:

Pressione o botão RST na placa e, em seguida, pressione o botão BOOT, o LED acenderá.

Passo 2: Conecte o XIAO ao seu PC e abra uma ferramenta de porta serial, como PuTTY, COMTOOL ou qualquer outra ferramenta de sua preferência.

Passo 3: Abra a comunicação do terminal

  • Para COMTOOL:

(1). Selecione a porta serial correta e defina a taxa de baud para 115200

(2). Vá para Terminal e abra a comunicação

pir

  • Para PuTTY:

(1). Selecione a linha serial correta e defina a taxa de baud para 115200

pir

(2). Vá para Terminal e clique em 'Implicit CR in every LF'

pir

Passo 4: Clique em 'Provison Device' no aplicativo ESP BLE prov

Uma vez conectado com sucesso, as informações da conexão Wi-Fi e o ID do gateway LoRa serão exibidos no terminal.

dica

Por favor, anote essas informações, elas são úteis para a configuração do Lora.

  1. Endereço IP: 192.168.1.44
  2. Porta: 8000
  3. Gateway EUI: 0xF09E9EFFFE20D02C

pir

A mensagem do encaminhador de pacotes LoRa, que está em formato Json, pode ser verificada no Terminal.

pir

Configuração LoRaWAN

Como anotamos o endereço IP e a porta, a interface web está disponível em: http://ip_address:8000, e abra-a no navegador.

pir

A interface web permite configurar os seguintes parâmetros:

Parâmetros de canal:

  • Frequência
  • Spreading Factor
  • Largura de banda

Servidor de rede LoRaWAN:

  • Endereço
  • Porta

Endereço do servidor SNTP: para obter a hora UTC

Há 2 botões na parte inferior do formulário de configuração:

Configure: quando pressionado, os parâmetros definidos no formulário HTML são gravados na memória flash (NVS).
Reboot: quando pressionado, um comando de reinicialização é acionado, o LoRaHub será reiniciado e a nova configuração será aplicada.

nota

Observe que a configuração gravada na memória flash só é levada em consideração na próxima reinicialização.

Tudo está configurado. Agora podemos conectar o kit XIAO ESP32S3 & SX1262 LoRa ao servidor de rede LoRa como TTN (The Things Network) e Chirpstack.

Personalizar e compilar o firmware

Se você quiser redefinir a configuração, a instrução a seguir pode ajudá-lo a compilar o firmware por conta própria no ambiente ESP-IDF.

Configurar ambiente

Este projeto é baseado no desenvolvimento Espressif ESP-IDF, consulte este guia para configurar o ambiente.

Obter o ESP-IDF

mkdir -p ~/esp
cd ~/esp
git clone -b v5.2.1 --recursive https://github.com/espressif/esp-idf.git

Configurar ferramentas

cd esp-idf/
./install.sh

Instalação do One Channel Hub

Passo 1: Clone o hub para o repositório local e navegue até o caminho do projeto.

git clone https://github.com/Seeed-Studio/one_channel_hub.git

cd ~/this_project_directory

Passo 2: Instale o driver necessário

  • Driver SX126x (sx1261, sx1262, sx1268):
git clone -b v2.3.2 https://github.com/Lora-net/sx126x_driver.git sx126x_driver
  • Driver llcc68:
git clone -b v2.3.2 https://github.com/Lora-net/llcc68_driver.git llcc68_driver
  • Driver lr11xx (lr1121):
git clone -b v2.4.1 https://github.com/Lora-net/SWDR001.git lr11xx_driver

Compilar o firmware

Passo 1: Entre no diretório do lorahub.

cd lorahub

Prepare seu terminal Linux/MAC para compilar com ESP-IDF a partir da linha de comando. Esta etapa pode ser ignorada no Windows, pois a ferramenta instalada 'ESP-IDF x.x CMD' preparará o ambiente automaticamente.

. ~/esp/esp-idf/export.sh

Configure o alvo ESP32 para o qual será feita a compilação.

idf.py set-target esp32s3

Personalize a compilação se necessário:

idf.py menuconfig

(1) Defina o tipo de placa:

LoRaWAN 1-CH HUB ConfigurationHardware ConfigurationBoard typeSeeed XIAO ESP32S3 Gateway

A configuração padrão do tipo de rádio LoRa é sx1262.

Não se esqueça de desativar o Display OLED.

pir

(2) Defina o tamanho da flash:

Serial flasher configFlash size → para XIAO ESP32S3 é 8MB.

pir

(3) Defina o Wi-Fi Provisionning:

  • Defina o Wi-Fi Provisionning via SenseCraft APP: LoRaWAN 1-CH HUB ConfigurationWiFi ConfigurationDisable WiFi Provisionning over BLE

  • Defina o Wi-Fi Provisionning via ESP BLE prov: LoRaWAN 1-CH HUB ConfigurationWiFi ConfigurationEnable WiFi Provisionning over BLE

    pir

Compile o projeto:

idf.py all

Recursos

Suporte Técnico & Discussão de Produto

Obrigado por escolher nossos produtos! Estamos aqui para oferecer diferentes tipos de suporte para garantir que sua experiência com nossos produtos seja a mais tranquila possível. Oferecemos vários canais de comunicação para atender a diferentes preferências e necessidades.

Loading Comments...