Comunición PUNTO a PUNTO (LORA) módulo RAK3172
#firmware RUI 3 4
AT
AT+VER=? #VERSION AT+VER=RUI_4.1.0_RAK3172-E\r\nOK\r\n
AT+SN=? #SERIAL NUMBER AT+SN=?\r\nOK\r\n
AT+SYSV=? #voltaje resnde AT+SYSV=3.306445\r\nOK\r\n
AT+ALIAS=<Input> #setear un alias
AT+ALIAS=? #consultar Alias
AT+SLEEP #mandara dormir modulo, no retorna OK, se despierta enviando cualquier otro comando,
#para despertar enviar cualquier otro comando,como AT y responde OK\r\nOK\r\n
AT+BAUD=? #baud rate
AT+APPEUI=? #APPEU
AT+APPKEY=? #APPKEY
AT+DEVEUI=? #DevEUI
AT+NWM=? #Modo de operacion 0: P2P_LORA, 1=Lorawan 2=P2P_FSK
AT+PFREQ=? #Set frecuencia 923000000
AT+PSF=? #SF12 (mayor alcance)
AT+PBW=? #bandwitch recomendado 0 = 125, 1
AT+PCR=? #Code rate reconendado 0 o 1 , mayor code rate mas redundancia pero menor eficiencia
AT+PPL=? #preamble, recomendado 8.
AT+PTP=? #potencia de transmision , maxima es 22
AT+PBR=?
AT+PSEND=1122334455667788990011223344
AT+PRECV=30000 #recepcion de dato en milisegundos 30seg
AT+P2P=? #<Frequency>:<Spreading Factor>:<Bandwidth>:<Code Rate>:<Preamble Length>:<TX Power>
AT+NWM=0
->
OK\r\n
RAKwireless RAK3172
------------------------------------------------------
Version: RUI_4.0.6_RAK3172-E
Current Work Mode: LoRa P2P.\r\n
<-
AT+PFREQ=923000000 #frecuencia en Hz
->
OK\r\n
<-
AT+PSF=8 #Spread factor 5,6,7...12
->
OK\r\n
<-
AT+PBW=8 #ancho de banda 0:125.1, 1:250.2, 2:500, 3:7.8, 4:10.4, 5:15.62, 6:20.8, 7:31.2, 8:41.6 9:62.5
->
OK\r\n
<-
AT+PCR=0 #coding rate 0:4/5, 1:4/6, 2:4/7, 3:4/8
->
OK\r\n
<-
AT+PPL=8 #Preamble length recomend 8
->
OK\r\n
<-
AT+PTP=20 #Power trasmition dbm 1,2,3...20,21,22
->
OK\r\n
<-
AT+PSEND=1122334455667788990011223344 #Enviar trama de datosen bytes (hex)
->
OK\r\n
+EVT:TXP2P DONE\r\n
<-
AT+PRECV=60000 #Recepcionar datos y esperar un tiemp maximo en milisegundos.
#Si hay recepcion correcta a tiempo
->
#inmeadiatamente responde "OK"
OK\r\n
#espera a que recepcione o se acabe el tiempo
+EVT:RXP2P:-10:13:1122334455667788990011223344\R\N
<-
AT+PRECV=60000 #Recepcionar datos y esperar un tiemp maximo en milisegundos.
#Si no hay recepcion a tiempo
->
#inmeadiatamente responde "OK"
OK\r\n
#tiempo de espera se termina
+EVT:RXP2P RECEIVE TIMEOUT\r\n
<-
AT+PRECV=60000 #Recepcionar datos y esperar un tiemp maximo en milisegundos.
#Si hay errores en la recepcion
->
#inmeadiatamente responde "OK"
OK\r\n
#se recibe el dato con errores
+EVT:RXP2P: -6:9:11229789373283673939\r\n
+EVT:RXP2P: RECEIVE ERROR\r\n
<-
AT+PRECV=65535 #escuchar sin tiempo de espera (continuamente) hasta recepcionar algo
AT+PRECV=65534 #escuchar sin tiempo de espera (IDEFINIDAMENTE)