sense_rec¶
Records sensor readings from the Raspberry Pi Sense HAT in real time, outputting the results to a file for later playback or analysis.
Synopsis¶
sense_rec [-h] [--version] [-q] [-v] [-l FILE] [-P] [-c CONFIG]
[-d DURATION] [-f] output
Description¶
-
-h,--help¶ show this help message and exit
-
--version¶ show this program’s version number and exit
-
-q,--quiet¶ produce less console output
-
-v,--verbose¶ produce more console output
-
-lFILE,--log-fileFILE¶ log messages to the specified file
-
-P,--pdb¶ run under PDB (debug mode)
-
-cFILE,--configFILE¶ the Sense HAT configuration file to use (default: /etc/RTIMULib.ini)
-
-dSECS,--durationSECS¶ the duration to record for in seconds (default: record until terminated with
Control-C)
-
-f,--flush¶ flush every record to disk immediately; reduces chances of truncated data on power loss, but greatly increases disk activity
Examples¶
To record an experiment with the Sense HAT, simply execute sense_rec with the filename you wish to record the results:
$ sense_rec experiment.hat
By default, the recording will continue indefinitely. Press Control-C
to terminate the recording. If you want to record for a specific duration,
you can use the --duration option to specify the number of seconds:
$ sense_rec --duration 10 short_experiment.hat
This tool can be run simultaneously with scripts that use the Sense HAT. Simply start your script in one terminal, then open another to start sense_rec. Alternatively, you can use the shell’s job control facilities to start recording in the background:
$ sense_rec experiment.hat &
$ python experiment.py
...
$ kill %1
If - is specified as the output file, sense_rec will write
its output to stdout. This can be used to reduce the disk space required for
long output by piping the output through a compression tool like
gzip:
$ sense_rec - | gzip -c - > experiment.hat.gz
When compressed in this manner the data typically uses approximately 3Kb per second (without gzip the recording will use approximately 10Kb of disk space per second). Use gunzip to de-compress the data for playback or analysis:
$ gunzip -c experiment.hat.gz | sense_play -
Alternatively, you can use this in conjunction with sense_csv to produce CSV output directly:
$ sense_rec - | sense_csv - experiment.csv
Be warned that CSV data is substantially larger than the binary format (CSV data uses approximately 25Kb per second).