EBYTE E32 Interface da linha de comando + GUI mínima.
Funciona com os módulos LORA EBYTE-E32 com atribuição de pino configurável. Os 3 GPIOs são controlados via Linux CDEV e a porta serial é controlada por um dispositivo de caractere normal /dev/ttyXXX .
Usa o EBYTE-E32-RS como motorista, além de algumas características do HAL incorporado e suas implementações do Linux-embebedded-Hal.
Para o CLI, o aplauso é usado.
Para a GUI, em cima do aplauso, o klask é usado.
Configurável com Config.toml no mesmo diretório que o binário (ou defina a opção config ):
serial_path = " /dev/ttyAMA0 "
baudrate = 9600
parity = " None "
data_bits = 8
stop_bits = 1
gpiochip_path = " /dev/gpiochip0 "
aux_pin = 18
m0_pin = 23
m1_pin = 24| Ebyte Pin | Pino de Raspberry Pi (número do pino BCM) |
|---|---|
| VCC | 3v3 |
| Gnd | Gnd |
| Aux | 18 |
| M0 | 23 |
| M1 | 24 |
| Tx | 15 (RX) |
| Rx | 14 (TX) |
Nesses exemplos, você pode substituir ebyte-e32-cli por cargo run --bin ebyte-e32-cli se estiver no diretório raiz do projeto. Este diretório também contém um exemplo Config.toml .
Leitura de dados ou parâmetros do modelo (bom primeiro teste):
ebyte-e32-cli {read-model-data|read-parameters}
Ouça transmissões:
ebyte-e32-cli listen
Configure para o endereço 1, canal 16, sem correção de erro a termo, persistência permanente:
ebyte-e32-cli configure --address 1 --channel 16 --fec off --persistence permanent
Para o modo send , insira suas mensagens no prompt ou transmitam -as via stdin .
A GUI é o alvo padrão, o que significa que você pode iniciá -lo com cargo run . Para enviar dados, os dados fornecidos na guia Input são usados (onde você também pode selecionar um arquivo para ler a entrada).
Com o subcomando Configuration , os parâmetros do módulo podem ser ajustados. Observe que as configurações do seu módulo precisam corresponder às configurações do outro módulo para que qualquer transmissão seja bem -sucedida.
Com a opção persistence do subcomando Configuration , as configurações podem ser salvas ( temporary ou permanent ). No modo permanent , as configurações serão persistidas no módulo.
Você pode executar a GUI no seu sistema operacional normal para teste.
Essas capturas de tela estão um pouco desatualizadas, mas mostram os recursos da GUI e da CLI:








O driver subjacente (EBYTE-E32-RS) é agnóstico da plataforma (não requer Linux, apenas implementações de embedded-hal ).
Este programa requer um dispositivo de caracteres Linux e 3 linhas CDEV GPIO.
Para o dispositivo de caracteres, ele deve estar disponível como /dev/ttyABC . Observe que (dependendo da sua distribuição) pode ser necessário adicionar seu usuário a determinados grupos para poder usar a porta serial, como dialout .
Para as linhas GPIO, encontre suas placas gpiochipXXX in /sys/class/gpio/gpiochipXXX e encontre as linhas que você deseja conectar e inserir as informações em Config.toml .
A linha AUX deve suportar ser uma linha de entrada, as linhas M0 e M1 devem suportar linhas de saída.
Ajuda de nível superior:
ebyte-e32-ui 0.5.0
CLI + GUI for interacting with EByte E32 LoRa modules
USAGE:
ebyte-e32-cli [OPTIONS] <SUBCOMMAND>
OPTIONS:
--config <CONFIG> Configuration file [default: Config.toml]
-h, --help Print help information
-V, --version Print version information
SUBCOMMANDS:
configure Write Ebyte module parameters
help Print this message or the help of the given subcommand(s)
listen Listen for incoming data on the Ebyte module
read-model-data Read Ebyte module data and print to stdout
read-parameters Read Ebyte module parameters and print to stdout
send Send data from stdin over the Ebyte module
Subcomando de configuração Ajuda ( ebyte-e32-cli help configure ):
ebyte-e32-cli-configure
Write Ebyte module parameters
USAGE:
ebyte-e32-cli configure [OPTIONS] --address <ADDRESS> --channel <CHANNEL>
OPTIONS:
-a, --address <ADDRESS>
Module Address (16 Bit)
--air-rate <AIR_RATE>
Air Baudrate [default: bps2400] [possible values: bps300, bps1200, bps2400, bps4800,
bps9600, bps19200]
-c, --channel <CHANNEL>
Channel (8 Bit)
--fec <FEC>
Forward Error Correction Mode [default: on] [possible values: on, off]
-h, --help
Print help information
--io-drive-mode <IO_DRIVE_MODE>
IO drive Mode for AUX pin [default: push-pull] [possible values: push-pull,
open-collector]
--persistence <PERSISTENCE>
Whether settings should be saved persistently on the module [default: temporary]
[possible values: temporary, permanent]
--transmission-mode <TRANSMISSION_MODE>
Transmission Mode [default: transparent] [possible values: transparent, fixed]
--transmission-power <TRANSMISSION_POWER>
Transmission Power [default: dbm30] [possible values: dbm30, dbm27, dbm24, dbm21]
--uart-parity <UART_PARITY>
UART Parity [default: none] [possible values: none, odd, even]
--uart-rate <UART_RATE>
UART Baudrate [default: bps9600] [possible values: bps1200, bps2400, bps4800, bps9600,
bps19200, bps38400, bps57600, bps115200]
--wakeup-time <WAKEUP_TIME>
Wireless Wakeup Time [default: ms250] [possible values: ms250, ms500, ms750, ms1000,
ms1250, ms1500, ms1750, ms2000]
Os outros subcomandos não têm mais opções.
O periférico de hardware da porta serial deve ser ativado (mas sem shell de login).
