I also noticed my Device profile settings page, the RX1 & RX2 are set by zero. Is it mandatory that we should set these values for downlink?. If so, kindly let me know the values I should set for IN865 band. PFA for my current settings page.
TIA
I also noticed my Device profile settings page, the RX1 & RX2 are set by zero. Is it mandatory that we should set these values for downlink?. If so, kindly let me know the values I should set for IN865 band. PFA for my current settings page.
TIA
Try to disabled class c in device-profile.
Tried without Class C. But no improvements.
For class A mode, the downlink sends by rx1 by default, but for Class-C it will use the RX2 settings.
You can send a confirmed downlink from the server to the node to confirm whether the node has received it.
@ZhuQI Ok, I understand.
No data received even I sent confirmed data from the server.
What is the purpose radio_1 on the gateway’s global.conf.json file?. Is it belongs to downlink communication purpose?.
TIA
Hi @ZhuQI
I found the tx_enable is false by default in my global_conf.json file. Once I enabled tx_enable by true, the gateway service is completely stopped. The log is as below,
pi@rak-gateway:~ $ sudo service ttn-gateway status
● ttn-gateway.service - The Things Network Gateway
Loaded: loaded (/lib/systemd/system/ttn-gateway.service; enabled; vendor preset: enabled)
Active: activating (auto-restart) (Result: exit-code) since Mon 2019-12-30 15:07:16 IST; 689ms ago
Process: 3129 ExecStart=/opt/ttn-gateway/packet_forwarder/lora_pkt_fwd/start.sh (code=exited, status=1/FAILURE)
Main PID: 3129 (code=exited, status=1/FAILURE)Dec 30 15:07:16 rak-gateway ttn-gateway[3129]: INFO: local_conf.json does contain a JSON object named gateway_conf, pars
Dec 30 15:07:16 rak-gateway ttn-gateway[3129]: INFO: gateway MAC address is configured to B827EBFFFE92CA25
Dec 30 15:07:16 rak-gateway ttn-gateway[3129]: INFO: packets received with a valid CRC will be forwarded
Dec 30 15:07:16 rak-gateway ttn-gateway[3129]: INFO: packets received with a CRC error will NOT be forwarded
Dec 30 15:07:16 rak-gateway ttn-gateway[3129]: INFO: packets received with no CRC will NOT be forwarded
Dec 30 15:07:16 rak-gateway ttn-gateway[3129]: INFO: [main] TTY port /dev/ttyAMA0 open for GPS synchronization
Dec 30 15:07:16 rak-gateway ttn-gateway[3129]: ERROR: [main] failed to start the concentrator
Dec 30 15:07:16 rak-gateway systemd[1]: ttn-gateway.service: Main process exited, code=exited, status=1/FAILURE
Dec 30 15:07:16 rak-gateway systemd[1]: ttn-gateway.service: Unit entered failed state.
Dec 30 15:07:16 rak-gateway systemd[1]: ttn-gateway.service: Failed with result ‘exit-code’.
Once I make disable tx_radio by false, the gateway starts working. Is it mandatory that we need to enable tx_enable for downlink transmission?.
TIA
Hi All,
I am trying to achieve the downlink on Chirpstack for some time. But no success so far. I was able to get the downlink done in short period of time on TTN. But not able to achieve it on the chirpstack. Its difficult to find the clear guidance for downlink on chirpstack. I would like to share the steps I have done here to cross check my procedure, configuration and fix the downlink issue.
Settup details
Frequency Band : EU868
Node hardware : Arduino Uno
Library : LMIC
Gateway : RAK 2245
Lorawan server : RAK test server
Node program :
Using the default ttn-abp program from lmic, here
Program uses EU868 band
Using LMIC.dn2Dr = DR_SF12; for chirpstack and LMIC.dn2Dr = DR_SF9; for TTN.
Confirmed with TTN. I can able to get downlink data on the node side.
There is no other changes on the ttn-abp.ino side
Gateway
Using RAK’s Gateway OS as it is and configured the lorawan server with external chirpstack server given by RAK.
– Done the gateway ID setup on the global_conf.json
– No other changes on global_conf.json file. Tx_enable: false in radio_1 and frequency is 868500000
On the Chirpstack side
– Existing service profile used. Nothing changed.
– Class B / C Disabled
– Application created
– Device created and Device address, Network session key & Application session key added on the ttn-abp.ino progam.
Output
Uplink::
Downlink ::
– Create a downlink queue from Device window. Gave, Port : 4, Confirmed Downlink enabled and give “aGk=” as base64 encoded data.
– The given downlink queue listed. The gateway receives the downlink frames after the uplink is done on the node side. The txpk confirm the data transfer from server to gateway.
– Recevied an “ack” frame once the downlink queue is clear. It contains as follows,
applicationID:“21”
applicationName:“app”
deviceName:“test2”
devEUI:“af9df28984d0b71a”
acknowledged:false
fCnt:73
tags:
The gateway log is,
.{“txpk”:{“imme”:true,“rfch”:0,“powe”:27,“ant”:0,“brd”:0,“freq”:869.525,“modu”:“LORA”,“datr”:“SF12BW125”,“codr”:“4/5”,“ipol”:true,“size”:22,“data”:“oB4F6QGHSQADAAcAAQgBBM9sLGaltg==”}} 17:14:01.128266 IP rak-gateway.58644 > 209.250.251.9.vultr.com.1700: UDP, length 12
No data is received on the node side. Any kind of input is appreciated to achieve the downlink on EU868.
TIA
Sorry, we just found some bugs in the downlink in ABP mode, and we are working hard to solve it.
@ZhuQI Can you please elaborate more about the bug in detail?. I will also try from my side.
Also like to know how about OTA mode for downlink with chirpstack?.
FYI, @Fomi
TIA
The server http://209.250.251.9:8080 has no bugs, which is because my test method is wrong.
I retested the abp mode on the http://209.250.251.9:8080 server to send data to the node(my node model is RAK811),Whether in class A or class C, the node can receive the data sent by the server.
I show you my device-profile configuration.
In class A mode, I added a piece of downstream data to the web page.
When the node sends an uplink data, it will receive the data we just added on the page
After the node sends data again, click the refresh button, and the downlink data in the queue will disappear.
Hi @ZhuQI Thanks for all your support. Finally, I tasted the downlink data transmission after I replicate the same configuration on my side and now I can able to get the downlink data on my node.
However, When I enable Class C along with this configuration, the downlink is not working. The lorawan frame log is all below, it looks like it uses 0 frequency for RX2 as per your configuration and I also changed the frequency into 89525000. Still not working for class C. May I know what frequency & DR we used for RX2/Class C?.
Class C when we use RX2 frequency is 0 :
Class C when we use RX2 frequency is 869525000
TIA
I modified the device-profile configuration.
The rak811 node I use can successfully receive data sent by the server in class c mode.
You can follow these steps to try:
1.Modify the values of uplink frame-counter and downlink frame-counter in the device to 0.
@ZhuQI Thanks for further iputs for Class C method. I done the following and not receiving any downlink datas when using Class C.
BTW, I am using Arduino Uno as my end device. It dont have such at command configuration provisions.
TIA
Sorry I don’t have any Arduino nodes, so I can’t help you with Arduino nodes.
@ZhuQI I understand your limitation. Thanks for your continuous support.
Can you please cross check whether I need any other modification need to be done?. Also like to know if I want to change anything on the gateway side for class C?.
TIA.
We are glad you chose RAK products.
The gateway does not need to make any changes in Class C mode.
The modification is mainly on the server and node configurations.
Dear ZhuQI, seems to me that you understand those downlink very good. I’ve used all that info from this discussion for programming by Web UI downlink. But my Chripstack not sending data correctly - it use port FPort:0 and not port that I’ve programming and not loading any data. Sending downlink just as test MAC message. I used also API to create uplink and i have the same results.
I created topic : Downlink use only FPort:0 and no payload on packet
BUt nobody answering – can I directly your help for this ? Any idea ?
Please, I need help.