Skip to main content

RAK7204 AT Command Manual

You can configure your RAK7204 WisNode Sense Home by sending AT Commands via a Serial port tool running on your PC. The following list shows the AT Commands that you can use:

The AT commands can be classified in the following groups:

  • Read Command : Reads the current configuration or status of the board. The command name and the list of parameters are separated by = character. The <m> parameter is separated with its associated value <n> by the : character.
at+get_config=<m>:<n>

  • Write Command : Writes/Modifies the current configuration of the board. The command name and the list of parameters are separated by = character. The <m> parameter is separated with its associated value <n> by the : character.
at+set_config=<m>:<n>

  • Operational Commands : There are also commands that are neither read nor write commands. The purpose is to execute an action, for example:
at+send=lora:<m>:<n> // Sends data through the LoRa transceiver.

  • Special Command : The RAK7204 UART port has two operational modes: Configuration Mode and Data Transmission Mode. When switching from data transmission mode to configuration mode the command to be entered is +++ and does not contain terminators such as \ r and \ n.

After executing the command, a response is sent back to the external MCU. The usual reply has the following format:

OK [information]\r\n

NOTE

Only the read commands have information in the replied message, while Write commands do not have an informative description.


The firmware developed running in the external MCU will expect at a minimum string of Ok\r\n after sending a successful command to the board. On the other hand, when the command is not successfully executed by the board, you will receive a response in the following format:

ERROR: [ErrCode]\r\n

Error Code Table

Error CodeDescription
1The last command received is an unsupported AT command.
2Invalid parameter in the AT command.
3There is an error when reading or writing the flash memory.
4There is an error when reading or writing through IIC bus.
5There is an error when sending data through the UART port.
80The LoRa transceiver is busy, could not process a new command.
81LoRa service is unknown. Unknown MAC command received by node. Execute commands that are not supported in the current state, such as sending at+join command in P2P mode.
82The LoRa parameters are invalid.
83The LoRa parameters are invalid.
84The LoRa data rate (DR) is invalid.
85The LoRa frequency and data rate are invalid.
86The device has not joined into a LoRa network.
87The length of the packet exceeded that maximum allowed by the LoRa protocol.
88Service is closed by the server. Due to the limitation of duty cycle, the server will send "SRV_MAC_DUTY_CYCLE_REQ" MAC command to close the service.
89This is an unsupported region code.
90Duty cycle is restricted. Due to duty cycle, data cannot be sent at this time until the time limit is removed.
91No valid LoRa channel could be found.
92No available LoRa channel could be found.
93Status is error. Generally, the internal state of the protocol stack is wrong.
94Time out reached while sending the packet through the LoRa transceiver.
95Time out reached while waiting for a packet in the LoRa RX1 window.
96Time out reached while waiting for a packet in the LoRa RX2 window.
97There is an error while receiving a packet during the LoRa RX1 window.
98There is an error while receiving a packet during the LoRa RX2 window.
99Failed to join into a LoRa network.
100Duplicated downlink message is detected. A message with an invalid downlink count is received.
101Payload size is not valid for the current data rate (DR).
102Many downlink packets are lost.
103Address fail. The address of the received packet does not match the address of the current node.
104Invalid MIC is detected in the LoRa message.

General AT Command

  1. at+version

This command is used to get the current firmware version number.

OperationCommandResponse
Readat+versionOK <version number>

Parameter: NONE

Example:

at+version\r\n
OK V3.0.0.14.H.p_rst

  1. at+help

This command is used to obtain all AT commands supported by the current firmware.

OperationCommandResponse
Readat+helpOK <all AT commands>

Parameter: NONE

Example:

at+help\r\n
OK

*************************************************
===============AT Commands List==================
Device AT commands:

at+version
at+help
at+set_config=device:restart
at+set_config=device:sleep:X
at+get_config=device:status
at+set_config=device:uart:X:Y
at+set_config=device:uart_mode:X:Y
at+send=uart:X:YYY
at+set_config=device:gpio:X:Y
at+get_config=device:gpio:X
at+get_config=device:adc:X

LoRaWAN AT commands:

at+set_config=lora:default_parameters
at+join
at+send=lora:X:YYY
at+set_config=lora:region:XXX
at+get_config=lora:channel
at+set_config=lora:dev_eui:XXXX
at+set_config=lora:app_eui:XXXX
at+set_config=lora:app_key:XXXX
at+set_config=lora:dev_addr:XXXX
at+set_config=lora:apps_key:XXXX
at+set_config=lora:nwks_key:XXXX
at+set_config=lora:multicastenable:X
at+set_config=lora:multicast_dev_addr:XXXX
at+set_config=lora:multicast_apps_key:XXXX
at+set_config=lora:multicast_nwks_key:XXXX
at+set_config=lora:join_mode:X
at+set_config=lora:work_mode:X
at+set_config=lora:ch_mask:X:Y
at+set_config=lora:class:X
at+set_config=lora:confirm:X
at+set_config=lora:dr:X
at+set_config=lora:tx_power:X
at+set_config=lora:adr:X
at+set_config=lora:send_interval:X:Y
at+get_config=lora:status
at+set_config=lora:dutycycle_enable:X
at+set_config=lora:send_repeat_cnt:X

LoRaP2P AT commands:

at+set_config=lorap2p:XXX:Y:Z:A:B:C
at+set_config=lorap2p:transfer_mode:X
at+send=lorap2p:XXX

===================List End======================
*************************************************

  1. at+set_config=device:restart

This command is used to restart the device.

OperationCommandResponse
Readat+set_config=device:restart

Parameter: NONE

Example:

LoRa (R) is a registered trademark or service mark of Semtech Corporation or its affiliates. LoRaWAN (R) is a licensed mark.
========================================================
______ ___ _ __ _ _ _ _
| ___ \/ _ \ | | / / | | | (_) | |
| |_/ / /_\ \| |/ / | | | |_ _ __ ___| | ___ ___ ___
| /| _ || \ | |/\| | | '__/ _ \ |/ _ \/ __/ __|
| |\ \| | | || |\ \ \ /\ / | | | __/ | __/\__ \__ \
\_| \_\_| |_/\_| \_/ \/ \/|_|_| \___|_|\___||___/___/
========================================================
********************************************************
RAK7204 Version:3.0.0.14.H.p_rst
********************************************************
========================================================
periodic rst is enabled. (interval:86400)
UART1 work mode: RUI_UART_NORMAL, 115200, N81
UART3 work mode: RUI_UART_USER, 115200, N81
BME680 init success.
autosend_interval: 240s
Current work_mode:LoRaWAN, join_mode:OTAA, MulticastEnable: false, Class: A
Initialization OK

  1. at+set_config=device:sleep:<status>

This command is used to change the current state of the device between the sleep and the wake-up mode.

OperationCommandResponse
Writeat+set_config=device:sleep:<status>OK<STATUS>

Parameter:

Status 0: wake up
1: sleep

Example:

at+set_config=device:sleep:1\r\n
OK Sleep

at+set_config=device:sleep:0\r\n
Go to Sleep
OK

  1. at+get_config=device:status

This command is used to obtain the current status of the device.

OperationCommandResponse
Readat+get_config=device:statusOK<information>

Parameter: None

Example:

at+get_config=device:status\r\n
OK.
*************************************************
===============Device Status List================
Board Core: RAK7204
MCU: STM32L151CB_A
LoRa chip: SX1276

Battery Voltage:4.195 V
BME680 sensor data:
Humidity:20.462 %RH
Temperature:23.51 degree
Pressure:628.91 hPa
Gas_resistance: 14748 Ohms
===================List End======================
*************************************************

Interface Type AT Command

  1. at+set_config=device:uart:<index>:<baud_rate>

This command is used to configure the baud rate for a UART port.

NOTE

There will be no reply after executing this configuration if a different baud rate is set. To make your UART serial communication work again, configure the UART baud rate setting of the Serial Port Tool based on the new baud rate.

OperationCommandResponse
Writeat+set_config=device:uart:<index>:<baud_rate>OK

Parameter:

index UART Number: 1 or 3. Two UART ports are currently supported starting FW V3.0.0.14.H - UART1 and UART3
baud_rate UART Baud rate:1200, 2400, 4800, 9600, 19200, 38400, 57600,115200

Example:

at+set_config=device:uart:1:115200\r\n
OK.

  1. at+set_config=device:uart_mode:<index>:<mode>

This command is used to set the UART operation between the AT configuration mode and the data transmission mode.

OperationCommandResponse
Writeat+set_config=device:uart_mode:<index>:<mode>OK

Parameter:

index UART Number: 1 or 3. Two UART ports are currently supported starting FW V3.0.0.14.H - UART1 and UART3
mode UART Mode: Only 1 can be selected, which means the UART is set to data transmission mode

Example:

at+set_config=device:uart_mode:1:1\r\n
Uart transparent mode configure success
OK

  1. at+send=uart:<index>:<data>

This command is used to send data over a UART port.

OperationCommandResponse
Writeat+send=uart:<index>:<data>OK

Parameter:

index UART Port Number. Currently, the RAK7204 only supports UART1.
mode The data you want to send. The maximum length of data is 250 characters, equivalent to 255 — the length of at+... — the length of \ r\ n.

Example:

at+send=uart:1:12345\r\n
OK12345

  1. at+set_config=device:gpio:<pin_num>:<status>

This command is used to set the voltage level state (high or low) of a pin on a board.

OperationCommandResponse
Readat+get_config=device:gpio:<pin_num>OK<status>

Parameter:

pin_num Pin index of the board
status 0: Low voltage level
1: High voltage level

Example:

at+set_config=device:gpio:2:0\r\n
OK

  1. at+get_config=device:gpio:<pin_num>

This command is used to obtain the voltage level status of a pin on a board.

OperationCommandResponse
Writeat+set_config=device:gpio:<pin_num>:<status>OK

Parameter:

pin_num Pin index of the board
status(Return Value) 0: Low voltage level
1: High voltage level

Example:

at+get_config=device:gpio:2\r\n
OK 1

  1. at+get_config=device:adc:<pin_num>

This command is used to obtain the voltage level of an ADC pin of the board.

OperationCommandResponse
Readat+get_config=device:adc:<pin_num>OK<voltage>

Parameter:

pin_num ADC pin index of the board
Voltage(Return Value) Voltage,Unit: mV

Example:

at+get_config=device:adc:2\r\n
OK 681mV

LoRaWAN Type AT Command

  1. at+join

This command is used to join a LoRaWAN network.

OperationCommandResponse
at+joinOK Join Success

Parameter: NONE

Example:

at+join\r\n
OTAA:
DevEui:00662CA006D4F7E5
AppEui:70B3D57ED003CBC5
AppKey:72E181E4428C4F305827284D2FD54618
OTAA Join Start...
[LoRa]:Join Success
OK
  1. at+send=lora:<port>:<data>

This command is used to send data via LoRaWAN.

OperationCommandResponse
at+send=lora:<port>:<data>OK

Parameter:

port Sending port of LoRa. The value range is 1-223.
data The sending data format is in hexadecimal format. The possible values are between 00-FF. The board will internally cast every two characters into a byte before sending it to the LoRa transceiver. The maximum length varies depending on the band frequency and DR (LoRaWAN standard). Refer to Appendix III.

Example:

When sending data as unconfirmed uplink:

at+send=lora:1:5A00\r\n
OK

When sending data as confirmed uplink:

at+send=lora:1:5A00\r\n
OK
at+recv=0,-48,7,0
NOTE

When sending a confirmed message, you will receive an ACK response, i.e. at+recv=.... The 0, -105, -12,0 stands for:

  • 0: For the LoRa port;
  • -105: For the RSSI;
  • -12: For the SNR;
  • 0: For the length of the data (no valid data in ACK).

  1. at+set_config=lora:region:<region>

This command is used to set the appropriate working frequency band.

OperationCommandResponse
Writeat+set_config=lora:region:<region>OK

Parameter:

region EU433, CN470, IN865, EU868, US915, AU915, KR920, AS923. The default is EU868.

Example:

at+set_config=lora:region:EU868\r\n
OK
NOTE

In the AS923 frequency band, the supported frequency plan is "as2" and dwell is set to 1.


  1. at+get_config=lora:channel

This command is used to read all the LoRa channel information for the device's current region.

OperationCommandResponse
Readat+get_config=lora:channelOK <channel information>

Parameter: NONE

Example: EU868 region

at+get_config=lora:channel\r\n
OK * 0,on,868100000,0,5; * 1,on,868300000,0,5; * 2,on,868500000,0,5; 3,off,0,0,0; 4,off,0,0,0; 5,off,0,0,0; 6,off,0,0,0; 7,off,0,0,0; * 8,on,867100000,0,5; * 9,on,867300000,0,5; *10,on,867500000,0,5; *11,on,867700000,0,5; *12,on,867900000,0,5; 13,off,0,0,0; 14,off,0,0,0; 15,off,0,0,0
NOTE

With *0,on,868100000,0,5 as an example,the following is the channel parameter analysis:

  • * at the beginning if the channel is open;
  • 0 is the channel ID;
  • on indicates the current status of the channel;
  • 868100000 is the actual frequency of the channel,unit is Hz;
  • 0,5 indicates the DR of the channel, DR0~DR5.

  1. at+set_config=lora:ch_mask:<channel_number>:<status>

This command is used to switch a channel (turn on or off) in the current region.

OperationCommandResponse
Writeat+set_config=lora:ch_mask:<channel_number>:<status>OK

Parameter:

channel_number Channel number
status 0: off
1: on

Example:

at+set_config=lora:ch_mask:0:0\r\n
OK

  1. at+set_config=lora:dev_eui:<dev_eui>

This command is used to set the Device EUI parameter for the LoRaWAN OTAA mode.

OperationCommandResponse
Writeat+set_config=lora:dev_eui:<dev_eui>OK

Parameter:

dev_eui Device EUI

Example:

at+set_config=lora:dev_eui:3530353064377716\r\n
OK

  1. at+set_config=lora:app_eui:<app_eui>

This command is used to set the Application EUI parameter for the LoRaWAN OTAA mode.

OperationCommandResponse
Writeat+set_config=lora:app_eui:<app_eui>OK

Parameter:

app_eui Application EUI

Example:

at+set_config=lora:app_eui:0000000000000001\r\n
OK

  1. at+set_config=lora:app_key:<app_key>

This command is used to set the Application Key parameter for the LoRaWAN OTAA mode.

OperationCommandResponse
Writeat+set_config=lora:app_key:<app_key>OK

Parameter:

app_key Application Key

Example:

at+set_config=lora:app_key:841986913ACD00BBC2BE2479D70F3228\r\n
OK

  1. at+set_config=lora:dev_addr:<dev_addr>

This command is used to set the Device Address parameter for the LoRaWAN ABP mode.

OperationCommandResponse
Writeat+set_config=lora:dev_addr:<dev_addr>OK

Parameter:

dev_addr Device Address

Example:

at+set_config=lora:dev_addr:260125D7\r\n
OK

  1. at+set_config=lora:apps_key:<apps_key>

This command is used to set the Application Session Key parameter for the LoRaWAN ABP mode.

OperationCommandResponse
Writeat+set_config=lora:apps_key:<apps_key>OK

Parameter:

apps_key Application Session Key

Example:

at+set_config=lora:apps_key:841986913ACD00BBC2BE2479D70F3228\r\n
OK

  1. at+set_config=lora:nwks_key:<nwks_key>

This command is used to set the Network Session Key parameter for the LoRaWAN ABP mode.

OperationCommandResponse
Readat+set_config=lora:nwks_key:<nwks_key>OK

Parameter:

nwks_key Network Session Key

Example:

at+set_config=lora:nwks_key:69AF20AEA26C01B243945A28C9172B42\r\n
OK

  1. at+set_config=lora:join_mode:<mode>

This command is used to switch the LoRaWAN access mode between the OTAA and the ABP mode.

OperationCommandResponse
Writeat+set_config=lora:join_mode:<mode>OK

Parameter:

mode Activation mode
0: OTAA
1: ABP
The default is OTAA.

Example:

at+set_config=lora:join_mode:0\r\n
OK

  1. at+set_config=lora:class:<class>

This command is used to set the LoRaWAN class to Class A, Class B, or Class C.

OperationCommandResponse
Writeat+set_config=lora:class:<class>OK

Parameter:

class 0: Class A
1: Class B (Not supported at this time)
2: Class C
The default is Class A.

Example:

at+set_config=lora:class:0\r\n
OK

  1. at+set_config=lora:confirm:<type>

This command is used to set the type messages to be sent: Confirmed/Unconfirmed.

OperationCommandResponse
Writeat+set_config=lora:confirm:<type>OK

Parameter:

type 0: unconfirm type
1: confirm type
The default is unconfirm type.

Example:

at+set_config=lora:confirm:0\r\n
OK
  1. at+set_config=lora:dr:<dr>

This command is used to set the data rate (DR) of LoRa.

OperationCommandResponse
Writeat+set_config=lora:dr:<dr>OK

Parameter:

dr The data rate of LoRa is related to the current region. In most of the LoRa areas, it is common to use 0 to 5. Detailed reference can be made to LoRaWAN 1.0.2 specification.

Example:

at+set_config=lora:dr:5\r\n
OK
  1. at+set_config=lora:tx_power:<tx_power>

This command is used to set the RF transmission power level of the LoRa transceiver. The unit is in dBm.

OperationCommandResponse
Writeat+set_config=lora:tx_power:<tx_power>OK

Parameter:

tx_power LoRa transmit power level varies depending on frequency band and DR. Refer to the LoRaWAN 1.0.2 specification or Appendix II for details.
The default is 0.

Example:

at+set_config=lora:tx_power:0\r\n
OK

  1. at+set_config=lora:adr:<status>

This command is used to turn on/off the ADR feature of the LoRa communication.

OperationCommandResponse
Writeat+set_config=lora:adr:<status>OK

Parameter:

status 0: Turn off
1: Turn on
The default is on.

Example:

at+set_config=lora:adr:1\r\n
OK

  1. at+get_config=lora:status

This command is used to get all the information related to the current LoRa status, except the channel information.

OperationCommandResponse
Readat+get_config=lora:statusOK <lora status detail>

Parameter: NONE

Example:

at+get_config=lora:status\r\n
OK Work Mode: LoRaWAN
Region: EU868
Send_interval: 200s
Auto send status: true
Send_interval work at sleep
MulticastEnable: false
DutycycleEnable: false
Send_repeat_cnt: 0
Join_mode: OTAA
DevEui: 00662CA006D4F7E5
AppEui: 70B3D57ED003CBC5
AppKey: 72E181E4428C4F305827284D2FD54618
Class: A
Joined Network:true
IsConfirm: confirm
AdrEnable: true
EnableRepeaterSupport: false
RX2_CHANNEL_FREQUENCY: 869525000, RX2_CHANNEL_DR:3
RX_WINDOW_DURATION: 3000ms
RECEIVE_DELAY_1: 1000ms
RECEIVE_DELAY_2: 2000ms
JOIN_ACCEPT_DELAY_1: 5000ms
JOIN_ACCEPT_DELAY_2: 6000ms
Current Datarate: 5
Primeval Datarate: 5
ChannelsTxPower: 0
UpLinkCounter: 2
DownLinkCounter: 0

  1. at+set_config=lora:send_interval:<status>:<interval>

This command is used to set the time interval for sending data.

OperationCommandResponse
Writeat+set_config=lora:send_interval:<status>:<interval>OK

Parameter:

status Enable/disable the mechanism for sending data in intervals.
0: the device will not send data automatically.
1: the device will send data every 'interval' seconds.
interval Time in seconds. This parameter is only valid if 'status' is set to 1.

Example:

at+set_config=lora:send_interval:1:120\r\n
OK

  1. at+set_config=lora:work_mode:<mode>

This command is used to set the Working Mode:

OperationCommandResponse
Writeat+set_config=lora:work_mode:<mode>OK

Parameter:

mode 0: LoRaWAN®
1: LoRaP2P
2: Test Mode.

Example:

at+set_config=lora:work_mode:0\r\n
LoRa (R) is a registered trademark or service mark of Semtech Corporation or its affiliates. LoRaWAN (R) is a licensed mark.
========================================================
______ ___ _ __ _ _ _ _
| ___ \/ _ \ | | / / | | | (_) | |
| |_/ / /_\ \| |/ / | | | |_ _ __ ___| | ___ ___ ___
| /| _ || \ | |/\| | | '__/ _ \ |/ _ \/ __/ __|
| |\ \| | | || |\ \ \ /\ / | | | __/ | __/\__ \__ \
\_| \_\_| |_/\_| \_/ \/ \/|_|_| \___|_|\___||___/___/
========================================================
********************************************************
RAK7204 Version:3.0.0.14.H.p_rst
********************************************************
========================================================
periodic rst is enabled. (interval:86400)
UART1 work mode: RUI_UART_NORMAL, 115200, N81
UART3 work mode: RUI_UART_USER, 115200, N81
BME680 init success.
autosend_interval: 200s
Current work_mode:LoRaWAN, join_mode:OTAA, MulticastEnable: false, Class: A
Initialization OK

  1. at+set_config=lora:dutycycle_enable:<status>

This command is used to enable or disable the Duty Cycle feature.

OperationCommandResponse
Writeat+set_config=lora:dutycycle_enable:<status>OK

Parameter:

status 0: disable
1: enable
The default is disable.

Example:

at+set_config=lora:dutycycle_enable:1\r\n
OK

  1. at+set_config=lora:multicastenable:<IsEnable>

This commands is used to enable multicasting.

OperationCommandResponse
Writeat+set_config=lora:multicastenable:<IsEnable>OK

Parameter:

IsEnable 0: disable
1: enable
The default is disable.

Example:

at+set_config=lora:multicastenable:1\r\n
OK

  1. at+set_config=lora:multicast_dev_addr:<multicast_dev_addr>

This command is used to set the Device Address for the multicast feature.

OperationCommandResponse
Writeat+set_config=lora:multicast_dev_addr:<multicast_dev_addr>OK

Parameter:

multicast_dev_addr Multicast Device Address

Example:

at+set_config=lora:multicast_dev_addr:260111fd\r\n
OK

  1. at+set_config=lora:multicast_apps_key:<multicast_apps_key>

This command is used to set the Application Session Key for the multicast feature.

OperationCommandResponse
Writeat+set_config=lora:multicast_apps_key:<multicast_apps_key>OK

Parameter:

multicast_app_addr Multicast Application Session Key

Example:

at+set_config=lora:multicast_apps_key:F13DDFA2619B10411F02F042E1C0F356\r\n
OK

  1. at+set_config=lora:multicast_nwks_key:<multicast_nwks_key>

This command is used to set the Network Session Key for the multicast feature.

OperationCommandResponse
Writeat+set_config=lora:multicast_nwks_key:<multicast_nwks_key>OK

Parameter:

multicast_nwks_key Multicast Network Session Key

Example:

at+set_config=lora:multicast_nwks_key:1D1991F5377C675879C39B6908D437A6\r\n
OK

  1. set_config=lora:default_parameters

This command is used to restore the factory setting.

OperationCommandResponse
Writeat+set_config=lora:default_parametersOK

Parameter: NONE

Example:

at+set_config=lora:default_parameters\r\n
OK

  1. set_config=lora:periodic_rst_interval:<time>

This command is used to set a periodic restart.

OperationCommandResponse
Writeat+set_config=lora:periodic_rst_interval:<time>OK

Parameter:

time Time in seconds.

Example:

at+set_config=lora:periodic_rst_interval:864000\r\n
interval_time=864000
OK

LoraP2P AT Command

  1. at+set_config=lorap2p:<frequency>:<spreadfact>:<bandwidth>:<codingrate>:<preamlen>:<power>

This command is used to set the relevant parameters of LoRAP2p mode and is only valid when the LoRa mode was switched to LoRaP2P before.

OperationCommandResponse
Writeat+set_config=lorap2p:<frequency>:<spreadfact>:<bandwidth>:<codingrate>:<preamlen>:<power>OK

Parameter:

frequencyFrequency, the unit is Hz
The default is 869525000Hz.
spreadfactSpreading factor
The default is 12.
bandwidth0: 125KHz
1: 250KHz
2: 500KHz

The default is 0.
codeingrate1: 4/5
2: 4/6
3: 4/7
4: 4/8
The default is 1.
preamblePreamble Length. 5~65535
The default is 8.
powerTX power. The unit is in dBm. 5~20
The default is 20.

Example

at+set_config=lorap2p:869525000:12:0:1:8:20\r\n
OK

  1. at+set_config=lorap2p:transfer_mode:<mode>

This command is used to switch the state of the LoRa transceiver between sending and receiving state, and it’s only valid when the LoRa mode was set to LoRaP2P before.

OperationCommandResponse
Writeat+set_config=lorap2p: transfer_mode:<mode>OK

Parameter

mode1: receiver mode
2: sender mode
The default is sender mode.

Example

at+set_config=lorap2p:transfer_mode:1\r\n
OK

  1. at+send=lorap2p:<data>

This command is used to send data through LoRaP2P, and only valid when the LoRa work mode was set to LoRaP2P before.

OperationCommandResponse
Sendat+send=lorap2p:<data>OK

Parameter

mode1: receiver mode
2: sender mode
The default is sender mode.

Example

at+send=lorap2p:1234\r\n
OK

In LoRa P2P mode, the receiving node receives the data and outputs the data in the following format:

at+recv=<RSSI>,<SNR>,< Data Length >:< Data >

Appendix I: Data Rate by Region

EU433/EU868/AS923
Data RateConfigurationIndicative Physical Bit Rate [bit/s]
0LoRa: SF12 / 125 kHz250
1LoRa: SF11 / 125 kHz440
2LoRa: SF10 / 125 kHz980
3LoRa: SF9 / 125 kHz1760
4LoRa: SF8 / 125 kHz3125
5LoRa: SF7 / 125 kHz5470
6LoRa: SF7 / 250 kHz11000
7FSK: 50 kbps50000
8 ~ 15RFU

CN470/KR920
Data RateConfigurationIndicative Physical Bit Rate [bit/s]
0LoRa: SF12 / 125 kHz250
1LoRa: SF11 / 125 kHz440
2LoRa: SF10 / 125 kHz980
3LoRa: SF9 / 125 kHz1760
4LoRa: SF8 / 125 kHz3125
5LoRa: SF7 / 125 kHz5470
6 ~ 15RFU

US915
Data RateConfigurationIndicative Physical Bit Rate [bit/s]
0LoRa: SF10 / 125 kHz980
1LoRa: SF9 / 125 kHz1760
2LoRa: SF8 / 125 kHz3125
3LoRa: SF7 / 125 kHz5470
4LoRa: SF8 / 500 kHz12500
5 ~ 7RFU
8LoRa: SF12 / 500 kHz980
9LoRa: SF11 / 500 kHz1760
10LoRa: SF10 / 500 kHz3900
11LoRa: SF9 / 500 kHz7000
12LoRa: SF8 / 500 kHz12500
13LoRa: SF7 / 500 kHz21900
14 ~ 15RFU

AU915
Data RateConfigurationIndicative Physical Bit Rate [bit/s]
0LoRa: SF12 / 125 kHz250
1LoRa: SF11 / 125 kHz440
2LoRa: SF10 / 125 kHz980
3LoRa: SF9 / 125 kHz1760
4LoRa: SF8 / 125 kHz3125
5LoRa: SF7 / 125 kHz5470
6LoRa: SF8 / 500 kHz12500
7RFURFU
8LoRa: SF12 / 500 kHz980
9LoRa: SF11 / 500 kHz1760
10LoRa: SF10 / 500 kHz3900
11LoRa: SF9 / 500 kHz7000
12LoRa: SF8 / 500 kHz12500

IN865
Data RateConfigurationIndicative Physical Bit Rate [bit/s]
0LoRa: SF12 / 125 kHz250
1LoRa: SF11 / 125 kHz440
2LoRa: SF10 / 125 kHz980
3LoRa: SF9 / 125 kHz1760
4LoRa: SF8 / 125 kHz3125
5LoRa: SF7 / 125 kHz5470
6RFURFU
7FSK: 50 kbps50000
8 ~ 15RFURFU

Appendix II: TX Power by Region

EU868

By default, MaxEIRP is considered to be +16 dBm.

TXPowerConfiguration (EIRP)
0MaxEIRP
1MaxEIRP - 2 dB
2MaxEIRP - 4 dB
3MaxEIRP - 6 dB
4MaxEIRP - 8 dB
5MaxEIRP - 10 dB
6MaxEIRP - 12 dB
7MaxEIRP - 14 dB
8 ~ 15RFU

US915
TXPowerConfiguration (conducted power)
030 dBm - 2*TXpower
128 dBm
226 dBm
3 ~ 9
1010 dBm
11 ~ 15RFU

AU915

By default, MaxEIRP is considered to be +30 dBm.

TXPowerConfiguration (EIRP)
0MaxEIRP
1 ~ 10MaxEIRP - 2*TXPower
11 ~ 10RFU

KR920

By default, MaxEIRP is considered to be +14 dBm.

TXPowerConfiguration (EIRP)
0MaxEIRP
1MaxEIRP - 2 dB
2MaxEIRP - 4 dB
3MaxEIRP - 6 dB
4MaxEIRP - 8 dB
5MaxEIRP - 10 dB
6MaxEIRP - 12 dB
7MaxEIRP - 14 dB
8 ~ 15RFU

AS923

By default, Max EIRP shall be 16 dBm.

TXPowerConfiguration (EIRP)
0MaxEIRP
1MaxEIRP - 2 dB
2MaxEIRP - 4 dB
3MaxEIRP - 6 dB
4MaxEIRP - 8 dB
5MaxEIRP - 10 dB
6MaxEIRP - 12 dB
7MaxEIRP - 14 dB
8 ~ 15RFU

IN865

By default, MaxEIRP is considered to be 30 dBm.

TXPowerConfiguration (EIRP)
0MaxEIRP
1MaxEIRP - 2 dB
2MaxEIRP - 4 dB
3MaxEIRP - 6 dB
4MaxEIRP - 8 dB
5MaxEIRP - 10 dB
6MaxEIRP - 12 dB
7MaxEIRP - 14 dB
8MaxEIRP - 16 dB
9MaxEIRP - 18 dB
10MaxEIRP - 20 dB
11 ~ 15RFU

CN470

By default, MaxEIRP is considered to be +19.15 dBm.

TXPowerConfiguration (EIRP)
0MaxEIRP
1MaxEIRP - 2 dB
2MaxEIRP - 4 dB
3MaxEIRP - 6 dB
4MaxEIRP - 8 dB
5MaxEIRP - 10 dB
6MaxEIRP - 12 dB
7MaxEIRP - 14 dB
8 ~ 15RFU

EU433

By default, MAxEIRP is considered to be +12.15 dBm.

TXPowerConfiguration (EIRP)
0MaxEIRP
1MaxEIRP - 2 dB
2MaxEIRP - 4 dB
3MaxEIRP - 6 dB
4MaxEIRP - 8 dB
5MaxEIRP - 10 dB
6 ~ 15RFU

Appendix III: Maximum Transmission Load by Region

NOTE

M in the following list is the length with MAC header, N is the length without MAC header, and the maximum sending data length is N.

EU868
Data RateMN
05951
15951
25951
3123115
4250242
5250242
6250242
7250242
8 ~ 15Not DefinedNot Defined

US915
Data RateMN
01911
16153
2133125
3250242
4250242
5 ~ 7Not DefinedNot Defined
86153
9137129
10250242
11250242
12250242
13250242
14 ~ 15Not DefinedNot Defined

AU915
Data RateMN
05951
15951
25951
3123115
4250242
5250242
6250242
7Not DefinedNot Defined
86153
9137129
10250242
11250242
12250242
13250242
14 ~ 15Not DefinedNot Defined

KR920
Data RateMN
05951
15951
25951
3123115
4250242
5250242
6 ~ 15Not DefinedNot Defined

AS923
Data RateUplink MAC Payload Size (M)Downlink MAC Payload Size (M)
UplinkDwellTime = 0UplinkDwellTime = 1DownlinkDwellTime = 0DownlinkDwellTime = 1
059N/A59N/A
159N/A59N/A
259195919
31236112361
4250133250133
5250250250250
6250250250250
7250250250250
8RFURFU

IN865
Data RateMN
05951
15951
25951
3123115
4250242
5250242
6250242
7250242
8 ~ 15Not DefinedNot Defined

CN470
Data RateMN
05951
15951
25951
3123115
4250242
5250242
6 ~ 15Not DefinedNot Defined

EU433
Data RateMN
05951
15951
25951
3123115
4250242
5250242
6250242
7250242
8 ~ 15Not DefinedNot Defined