How to manually push data through ChirpStack

Hi All,

I am looking to figure out if there is a way to manually send data to the Gateway Bridge to mimick real traffic? I am already aware of the ChirpStack simulator (which for some reason isn’t populating the Live LoRaWan Frames tab for me) however we would like to modify the format of the data that is passing to suit our needs. (I was going to modify the simulator after I learn some GO, but the Team Lead said to ask this question first in the off shoot someone knows some LoRa-fu)

Thanks!

I have looked into the simulator a bit more, and I am able to view the simmed lorawan frames. If I add this as more context, would anyone be able to tell me what the original data from the device would be?

I believe it would be the rxInfo field, but would like if someone could confirm that?

[
{
“uplinkMetaData”: {
“rxInfo”: [
{
“gatewayID”: “Wz/+FYdO5gM=”,
“time”: null,
“timeSinceGPSEpoch”: null,
“rssi”: 50,
“loRaSNR”: 5.5,
“channel”: 0,
“rfChain”: 0,
“board”: 0,
“antenna”: 0,
“location”: {
“latitude”: 0,
“longitude”: 0,
“altitude”: 0,
“source”: “UNKNOWN”,
“accuracy”: 0
},
“fineTimestampType”: “NONE”,
“context”: “AQIDBA==”,
“uplinkID”: “gcPcRfzSTjy5zbvcji3N7A==”,
“crcStatus”: “NO_CRC”
},
{
“gatewayID”: “I22cXHE8aNI=”,
“time”: null,
“timeSinceGPSEpoch”: null,
“rssi”: 50,
“loRaSNR”: 5.5,
“channel”: 0,
“rfChain”: 0,
“board”: 0,
“antenna”: 0,
“location”: {
“latitude”: 0,
“longitude”: 0,
“altitude”: 0,
“source”: “UNKNOWN”,
“accuracy”: 0
},
“fineTimestampType”: “NONE”,
“context”: “AQIDBA==”,
“uplinkID”: “V71VUJQWSceKU9OnwZduzg==”,
“crcStatus”: “NO_CRC”
},
{
“gatewayID”: “65zkuARyxCw=”,
“time”: null,
“timeSinceGPSEpoch”: null,
“rssi”: 50,
“loRaSNR”: 5.5,
“channel”: 0,
“rfChain”: 0,
“board”: 0,
“antenna”: 0,
“location”: {
“latitude”: 0,
“longitude”: 0,
“altitude”: 0,
“source”: “UNKNOWN”,
“accuracy”: 0
},
“fineTimestampType”: “NONE”,
“context”: “AQIDBA==”,
“uplinkID”: “xH+E3AI/Q6eDyr9u3JhaTA==”,
“crcStatus”: “NO_CRC”
}
],
“txInfo”: {
“frequency”: 915000000,
“modulation”: “LORA”,
“loRaModulationInfo”: {
“bandwidth”: 125,
“spreadingFactor”: 7,
“codeRate”: “3/4”,
“polarizationInversion”: false
}
}
},
“phyPayload”: {
“mhdr”: {
“mType”: “JoinRequest”,
“major”: “LoRaWANR1”
},
“macPayload”: {
“joinEUI”: “0000000000000000”,
“devEUI”: “0c2c3bad31e8c1a2”,
“devNonce”: 72
},
“mic”: “00d789ee”
}
},
{
“uplinkMetaData”: {
“rxInfo”: [
{
“gatewayID”: “I22cXHE8aNI=”,
“time”: null,
“timeSinceGPSEpoch”: null,
“rssi”: 50,
“loRaSNR”: 5.5,
“channel”: 0,
“rfChain”: 0,
“board”: 0,
“antenna”: 0,
“location”: {
“latitude”: 0,
“longitude”: 0,
“altitude”: 0,
“source”: “UNKNOWN”,
“accuracy”: 0
},
“fineTimestampType”: “NONE”,
“context”: “AQIDBA==”,
“uplinkID”: “BuxkbKTBRA6kmgIFaBVtOA==”,
“crcStatus”: “NO_CRC”
},
{
“gatewayID”: “Wz/+FYdO5gM=”,
“time”: null,
“timeSinceGPSEpoch”: null,
“rssi”: 50,
“loRaSNR”: 5.5,
“channel”: 0,
“rfChain”: 0,
“board”: 0,
“antenna”: 0,
“location”: {
“latitude”: 0,
“longitude”: 0,
“altitude”: 0,
“source”: “UNKNOWN”,
“accuracy”: 0
},
“fineTimestampType”: “NONE”,
“context”: “AQIDBA==”,
“uplinkID”: “DXo50PjRSE+YHGD6ltY0/w==”,
“crcStatus”: “NO_CRC”
},
{
“gatewayID”: “65zkuARyxCw=”,
“time”: null,
“timeSinceGPSEpoch”: null,
“rssi”: 50,
“loRaSNR”: 5.5,
“channel”: 0,
“rfChain”: 0,
“board”: 0,
“antenna”: 0,
“location”: {
“latitude”: 0,
“longitude”: 0,
“altitude”: 0,
“source”: “UNKNOWN”,
“accuracy”: 0
},
“fineTimestampType”: “NONE”,
“context”: “AQIDBA==”,
“uplinkID”: “gJr4W17CS2SfAwYbbdOSyg==”,
“crcStatus”: “NO_CRC”
}
],
“txInfo”: {
“frequency”: 915000000,
“modulation”: “LORA”,
“loRaModulationInfo”: {
“bandwidth”: 125,
“spreadingFactor”: 7,
“codeRate”: “3/4”,
“polarizationInversion”: false
}
}
},
“phyPayload”: {
“mhdr”: {
“mType”: “JoinRequest”,
“major”: “LoRaWANR1”
},
“macPayload”: {
“joinEUI”: “0000000000000000”,
“devEUI”: “0c2c3bad31e8c1a2”,
“devNonce”: 71
},
“mic”: “84f8a9b4”
}
},
{
“uplinkMetaData”: {
“rxInfo”: [
{
“gatewayID”: “65zkuARyxCw=”,
“time”: null,
“timeSinceGPSEpoch”: null,
“rssi”: 50,
“loRaSNR”: 5.5,
“channel”: 0,
“rfChain”: 0,
“board”: 0,
“antenna”: 0,
“location”: {
“latitude”: 0,
“longitude”: 0,
“altitude”: 0,
“source”: “UNKNOWN”,
“accuracy”: 0
},
“fineTimestampType”: “NONE”,
“context”: “AQIDBA==”,
“uplinkID”: “XWTHmLu/SNig+2DFDPTatQ==”,
“crcStatus”: “NO_CRC”
},
{
“gatewayID”: “I22cXHE8aNI=”,
“time”: null,
“timeSinceGPSEpoch”: null,
“rssi”: 50,
“loRaSNR”: 5.5,
“channel”: 0,
“rfChain”: 0,
“board”: 0,
“antenna”: 0,
“location”: {
“latitude”: 0,
“longitude”: 0,
“altitude”: 0,
“source”: “UNKNOWN”,
“accuracy”: 0
},
“fineTimestampType”: “NONE”,
“context”: “AQIDBA==”,
“uplinkID”: “NReuFF+LQKe5hqX1ehgnYg==”,
“crcStatus”: “NO_CRC”
},
{
“gatewayID”: “Wz/+FYdO5gM=”,
“time”: null,
“timeSinceGPSEpoch”: null,
“rssi”: 50,
“loRaSNR”: 5.5,
“channel”: 0,
“rfChain”: 0,
“board”: 0,
“antenna”: 0,
“location”: {
“latitude”: 0,
“longitude”: 0,
“altitude”: 0,
“source”: “UNKNOWN”,
“accuracy”: 0
},
“fineTimestampType”: “NONE”,
“context”: “AQIDBA==”,
“uplinkID”: “+34u9z7MSVCN8EpN6Ena9Q==”,
“crcStatus”: “NO_CRC”
}
],
“txInfo”: {
“frequency”: 915000000,
“modulation”: “LORA”,
“loRaModulationInfo”: {
“bandwidth”: 125,
“spreadingFactor”: 7,
“codeRate”: “3/4”,
“polarizationInversion”: false
}
}
},
“phyPayload”: {
“mhdr”: {
“mType”: “JoinRequest”,
“major”: “LoRaWANR1”
},
“macPayload”: {
“joinEUI”: “0000000000000000”,
“devEUI”: “0c2c3bad31e8c1a2”,
“devNonce”: 70
},
“mic”: “3cc8ffd4”
}
}
]