Ebyte E32 Командная строка интерфейс + минимальный графический интерфейс.
Работает с модулями Ebyte-E32 Lora с настраиваемым назначением выводов. 3 GPIS контролируются через Linux CDEV, а последовательный порт управляется устройством символов /dev/ttyXXX .
Использует Ebyte-E32-RS в качестве драйвера, а также некоторые признаки от Embedded-HAL и их реализации от Linux, заполненного Hal.
Для CLI используется CLAP.
Для графического интерфейса, поверх Clap, используется Klask.
Настраивается с помощью Config.toml в том же каталоге, что и Binary (или установите Option 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 | Raspberry Pi PIN (номер PIN -кода BCM) |
|---|---|
| Венчурной | 3V3 |
| Гнездо | Гнездо |
| Аукс | 18 |
| M0 | 23 |
| М1 | 24 |
| Техас | 15 (RX) |
| Rx | 14 (Техас) |
В этих примерах вы можете заменить ebyte-e32-cli на cargo run --bin ebyte-e32-cli если вы находитесь в каталоге Project Root. Этот каталог также содержит пример Config.toml .
Чтение данных или параметров модели (хороший первый тест):
ebyte-e32-cli {read-model-data|read-parameters}
Слушайте передачи:
ebyte-e32-cli listen
Настройка для адреса 1, канал 16, без изменений прямого погрешности, постоянная настойчивость:
ebyte-e32-cli configure --address 1 --channel 16 --fec off --persistence permanent
Для режима send введите свои сообщения в приглашение или впишите их через stdin .
GUI является целью по умолчанию, что означает, что вы можете запустить его с помощью cargo run . Для отправки данных используются данные, представленные на вкладке Input (где вы также можете выбрать файл для чтения ввода из).
С помощью подкоманда Configuration параметры модуля могут быть скорректированы. Обратите внимание, что настройки вашего модуля должны соответствовать настройкам другого модуля, чтобы любая передача была успешной.
С опцией persistence подкоманды Configuration настройки могут быть сохранены ( temporary или permanent ). В permanent режиме настройки будут сохраняться на модуле.
Вы можете запустить графический интерфейс на своей обычной ОС для тестирования.
Эти скриншоты слегка устарели, но показывают особенности GUI и CLI:








Основной драйвер (Ebyte-E32-RS) является платформой-агентом (не требует Linux, просто реализации embedded-hal ).
Эта программа требует устройства символов Linux и 3 линий CDEV GPIO.
Для устройства символов он должен быть доступен как /dev/ttyABC . Обратите внимание, что (в зависимости от вашего распределения) вам, возможно, придется добавить вашего пользователя в определенные группы, чтобы иметь возможность использовать последовательный порт, например, dialout .
Для линий GPIO найдите свои платы gpiochipXXX в /sys/class/gpio/gpiochipXXX , затем найдите строки, которые вы хотите подключить, и введите информацию в Config.toml .
Линия Aux должна поддерживать линию входной линии, линии M0 и M1 должны поддерживать выходные линии.
Помощь на верхнем уровне:
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
Справка подкомманды конфигурации ( 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]
Другие подкоманды не имеют дальнейших вариантов.
Периферийное устройство для оборудования последовательного порта должно быть включено (но без логин -оболочки).
