Receiving and Decoding Battery Status and Additional Data from a SenseCAP LoRaWAN Weather Station

Hello everyone,

I’m currently operating a SenseCAP S2120 weather station that transmits data over LoRaWAN to a ChirpStack server. The data is processed in Node-RED on a Synology NAS, where I use a JavaScript decoder to extract and store various sensor readings (e.g., temperature, humidity, UV index, barometric pressure) into my database.

Issue:
One value I need is the battery status of the weather station. However, this battery reading only appears sporadically or not at all in the payload, and I’m unsure whether the station sends this value regularly or only under specific conditions. I also suspect there may be additional status or system information in the payload that I’m not yet decoding.

My Questions:

  1. Is the battery status included by default in the SenseCAP weather station uplink data? If so, how often is it transmitted, and under what conditions?
  2. Is there a way to adjust the frequency of battery status transmission and other system information (e.g., firmware or hardware status), or to ensure these data points are regularly sent?
  3. Are there specific data IDs or decoder techniques I should use to retrieve any other relevant status information (if available) from the payload?

Thank you very much for any help or guidance on configuration and decoding!

The battery status is included by default in the uplink data from the SenseCAP S2120, but it might not be transmitted with every uplink. Status information like battery level is typically sent less frequently than primary sensor data to conserve power and reduce data usage.