You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The sps30_stop_measurement method shown above sends a length of 1 and the stop command 0x00 as a sub-command to the sensirion_shdlc_tx method. The SPS30 datasheet for the stop command provides the following example frame for the stop command:
0x7E 0x00 0x01 0x00 0xFE 0x7E
This example frame uses the command 0x01 instead of 0x00 and since it does not have sub-commands it uses a length of zero. The current method does not send the example frame for MOSI described in the datasheet. For this reason, I believe this is a bug.
The text was updated successfully, but these errors were encountered:
utilebit
changed the title
SPS30 does not go return to idle when calling sps30_stop_measurement() in sps30.c
SPS30 does not return to idle after calling sps30_stop_measurement() in sps30.c
Jan 31, 2019
Hi @utilebit, many thanks for the detailed report and the proposed fix. Would you like to submit a pull request or are you happy with leaving it to us?
When submitting a patch, consider that SPS_CMD_MEASUREMENT would also better be renamed to SPS_CMD_START_MEASUREMENT.
abrauchli
changed the title
SPS30 does not return to idle after calling sps30_stop_measurement() in sps30.c
sps30_stop_measurement issuing the wrong command
Feb 1, 2019
First, thank you for providing this driver and implementation for the SPS30.
When the sps30_stop_measurement method in the sps30.c is called the SPS30 sensor's fan still runs and does not return to idle.
The sps30_stop_measurement method shown above sends a length of 1 and the stop command 0x00 as a sub-command to the sensirion_shdlc_tx method. The SPS30 datasheet for the stop command provides the following example frame for the stop command:
This example frame uses the command 0x01 instead of 0x00 and since it does not have sub-commands it uses a length of zero. The current method does not send the example frame for MOSI described in the datasheet. For this reason, I believe this is a bug.
I was able to fix the bug by adding the constant:
and modifying the method to be:
The text was updated successfully, but these errors were encountered: