ChirpStack chose to report data on port 0, which resulted in my data reporting failing. However, in my code, I specified that data should be reported on port 2. What caused this issue?
ChirpStack chose to report data on port 0, which resulted in my data reporting failing. However, in my code, I specified that data should be reported on port 2. What caused this issue?
ChirpStack does have a validation on downlink enqueue:
if self.f_port == 0 || self.f_port > 255 {
return Err(Error::Validation(
"FPort must be between 1 - 255".to_string(),
));
}
Most likely the received downlink with FPort = 0 is a mac-command only downlink. This behaviour is specified in the LoRaWAN specs.