EBYTE E32命令線接口 +最小GUI。
使用具有可配置的銷釘分配的EBYTE-E32 LORA模塊。 3 GPIO通過Linux CDEV控制,串行端口由正常/dev/ttyXXX字符設備控制。
使用EBYTE-E32-Rs作為驅動器,以及來自嵌入式HAL的某些特徵及其來自Linux嵌入的HAL的實現。
對於CLI,使用鼓掌。
對於GUI,在拍手之上,使用Klask。
可與Config.toml配置在與二進制的同一目錄中(或設置選項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(BCM PIN編號) |
|---|---|
| VCC | 3v3 |
| gnd | gnd |
| 輔助 | 18 |
| M0 | 23 |
| M1 | 24 |
| TX | 15(RX) |
| Rx | 14(TX) |
在這些示例中,如果您在項目根目錄中,則可以將ebyte-e32-cli替換為cargo run --bin ebyte-e32-cli 。該目錄還包含一個示例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子命令,可以調整模塊參數。請注意,您的模塊設置必須匹配另一個模塊的設置,以使任何傳輸成功。
使用Configuration子命令的persistence選項,可以保存設置( temporary或permanent )。在permanent模式下,設置將持續到模塊上。
您可以在普通操作系統上運行GUI進行測試。
這些屏幕截圖略有過時,但顯示了GUI和CLI的功能:








底層驅動程序(EBYTE-E32-RS)是平台 - 敏銳的(不需要Linux,僅僅是embedded-hal的實現)。
該程序需要Linux字符設備和3個CDEV GPIO線。
對於字符設備,應作為/dev/ttyABC提供。請注意,(取決於您的分佈),您可能必須將用戶添加到某些組中才能使用串行端口,例如dialout 。
對於GPIO行,在/sys/class/gpio/gpiochipXXX中找到董事會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]
其他子命令沒有其他選擇。
必須啟用串行端口硬件外圍設備(但沒有登錄外殼)。
