A STM32F103C8T6 (Blue Pill) Lora Gateway. A STM32F103C8T6 (Blue Pill) Lora Gateway. Um gateway da interface serial de Lora para USB. Não é um gateway de Lorawan para a rede de coisas!
Este gateway está recebendo e enviando mensagens LORA usando o chip Hoperf RFM95W.
O canal serial no conector UUSB é usado para enviar e receber mensagens. O protocolo usado no canal serial é como o RF12_DEMO de jeelabs.
Este gateway Lora está usando o Arduino Lora Lib para interface o RFM95W. O invertiq é usado para enviar mensagens para os nós, os nós precisam receber as mensagens com o invertiq ativado. Os nós estão enviando as mensagens com o invertiq desativado e o gateway também está recebendo pelo invertiq desativado. Ao usar a técnica, um gateway nunca recebe mensagens de outro gateway e um nó nunca recebe mensagem de outros nós, apenas gateway para nó e vice -versa.
| RFM95W | STM32F103 |
|---|---|
| VCC | 3v3 |
| Gnd | Gnd |
| Miso | PA6 |
| Mosi | PA7 |
| Sck | PA5 |
| NSS | PA4 |
| REINICIAR | PC14 |
| Dio0 | PA1 |
Estou usando o Arduino IDE com o STM32DUINO no gerente do conselho. Não há necessidade de piscar o carregador de inicialização, piscando a placa com o Stlink V2, com o Stlink V2 Não há necessidade de usar o interruptor dos jumpers de inicialização. Você pode encontrar aqui mais informações sobre a configuração aqui: https://alselectro.wordpress.com/2018/11/18/stm32f103-bluepill-getting-started-with-arduino-core/
Quando a placa estiver programada, conecte o cabo micro-USB à máquina e inicie um programa de terminal serial. Pressione 'H' para ver os comandos disponíveis:
Available commands:
<nn>n - set Gateway node ID (standard node ids are 1..7)
...,<nn>s - send data packet to node <nn>
<n>x - set reporting format (0: decimal, 1: hex, 2: hex+ascii)
<n>r - set reporting of RSSI signal strength (0:off, 1:on)
v - display board name and board id
h - this help
Padrão O ID do gateway está definido como '1', mas isso pode ser alterado.
Mude o nodeid de gateway em '2':
2n
Por padrão, o CRC é ativado, o primeiro byte é o nodeid.
OK <nodeId> <dataByte0> .. <dataByteX>
Por exemplo, do Nodeid 3, com 2 bytes de dados:
OK 3 1 2
<dataByte0>,<dataByteX>,<nodeId>s
Por exemplo, para enviar 2 bytes de dados para Nodeid 3:
1,2,3s
Ligue o modo de relatório RSSI:
1r
Isso receberá, por exemplo, uma resposta de mensagem de recebimento como esta:
OK 3 1 2 RSSI -62
Desligue o modo de relatório RSSI:
0r
A biblioteca Arduino Lora não possui nenhuma mensagem de baixo nível, reconhecendo implementado. Estou verificando uma mensagem no nível do aplicativo.