Commands reference#
Cinemate doesn’t use a real shell parser. Instead, a background thread reads simple text commands from SSH or the serial port and calls the corresponding controller methods.
Commands without an explicit argument will toggle the current state when possible (e.g. set fps lock flips the lock; set fps lock 1 forces it on).
All of the commands below can be easily mapped to GPIO buttons rotary encoders and other input devices. See this section for how to configure the settings file.
| Command | Argument | Example | Function |
|---|---|---|---|
rec / stop |
[s <seconds>] \| [f <frames>] |
rec s 10 |
Toggle recording or schedule an automatic stop after a timed duration or frame count |
set iso <value> |
int | set iso 800 |
Set ISO to nearest allowed step |
inc iso / dec iso |
- | Step ISO up or down | |
set shutter a <angle> |
float | set shutter a 180 |
Set actual shutter angle (snaps unless free/sync) |
inc shutter a / dec shutter a |
- | Cycle through shutter angles | |
set shutter a nom <angle> |
float | set shutter a nom 180 |
Set nominal shutter angle for motion blur |
inc shutter a nom / dec shutter a nom |
- | Step the nominal shutter angle | |
set fps <value> |
float | set fps 24 |
Change frame rate (snaps unless free) |
inc fps / dec fps |
- | Step through FPS list | |
set wb [<Kelvin>] |
int or none | set wb 5600 |
Set white balance or cycle presets |
inc wb / dec wb |
- | Cycle white balance steps | |
set resolution [<mode>] |
int or none | set resolution 2 |
Apply or cycle sensor mode |
set anamorphic factor [<float>] |
float or none | set anamorphic factor 1.33 |
Set or toggle anamorphic stretch |
set zoom [<float>] |
float or none | set zoom 2 |
Change digital zoom; omit to cycle |
inc zoom / dec zoom |
- | Step preview zoom factor | |
mount / unmount |
- | Mount or unmount external storage | |
toggle mount |
- | Mount if not mounted, otherwise unmount | |
erase |
- | erase |
Delete every clip on the mounted RAW volume without reformatting |
format |
[ext4\|ntfs] |
format ntfs |
Reformat the RAW drive (defaults to ext4) and remount it |
storage preroll |
- | storage preroll |
Run the storage warm-up recording that prepares the media |
time |
- | Show system and RTC time | |
set rtc time |
- | Copy system time to the RTC | |
space |
- | Report remaining SSD space | |
get |
- | Print all current settings (Redis keys in cp_controls channel) | |
set shutter a sync [0/1] |
0/1 or none | set shutter a sync 1 |
Enable exposure sync mode |
set iso lock [0/1] |
0/1 or none | Lock or unlock ISO setting | |
set shutter a nom lock [0/1] |
0/1 or none | set shutter a nom lock |
Lock or unlock nominal shutter |
set shutter a nom fps lock [0/1] |
0/1 or none | set shutter a nom fps lock 1 |
Lock nominal shutter and FPS together |
set fps lock [0/1] |
0/1 or none | set fps lock 1 |
Lock or unlock the frame rate |
set all lock [0/1] |
0/1 or none | set all lock 0 |
Toggle all exposure locks at once |
set fps double [0/1] |
0/1 or none | Instant or toggled 2× FPS mode | |
reboot / shutdown |
- | Safely reboot or halt the Pi | |
restart camera |
- | ` | Restart the libcamera pipeline |
restart cinemate |
- | Restart the Cinemate process | |
set iso free [0/1] |
0/1 or none | set iso free 1 |
Allow any ISO instead of presets |
set shutter a free [0/1] |
0/1 or none | set shutter a free 0 |
Allow any shutter angle |
set fps free [0/1] |
0/1 or none | set fps free 1 |
Allow any FPS |
set wb free [0/1] |
0/1 or none | set wb free |
Allow any white balance |
set filter <0/1> |
0/1 | set filter 1 |
Toggle IR-cut filter (IMX585) |
Timed recording shortcuts#
The rec command now accepts timed modes so you can walk away from the camera while it captures a precisely bounded take.
rec s <seconds>stops the recording after the requested duration. Short forms such assec,secsandsecondsare also accepted.rec f <frames>converts the requested frame count to seconds using the current FPS and schedules the stop for you. You can typeframeorframesinstead off.
If recording is not already running, the CLI starts it automatically before arming the timer. An invalid or zero value is ignored so you cannot accidentally stop a clip immediately.【F:src/module/cli_commands.py†L205-L237】【F:src/module/cinepi_controller.py†L533-L591】
Storage maintenance commands#
Two new commands simplify preparing removable media directly from the Cinemate CLI:
eraseempties the mounted RAW volume without touching the filesystem structure so you can clear cards quickly between takes.【F:src/module/ssd_monitor.py†L628-L648】format [ext4|ntfs]reformats the drive with the chosen filesystem (ext4by default), remounts it and refreshes the free-space monitor. The helper tolerates the commonex4typo and refuses unsupported targets so you do not accidentally create an unusable volume.【F:src/module/ssd_monitor.py†L650-L716】
Both actions require the RAW drive to be mounted; otherwise the CLI reports an error and leaves the media untouched.【F:src/module/ssd_monitor.py†L632-L636】【F:src/module/ssd_monitor.py†L652-L657】
Storage pre-roll warm-up#
storage preroll triggers the automatic warm-up clip that Cinemate normally runs on startup or when you mount new storage. During the pre-roll, Cinemate temporarily drives the sensor at its maximum FPS, records a short burst, waits for buffers to flush and removes the test clip so the media is primed for the next real take.【F:src/module/storage_preroll.py†L40-L175】
See Storage pre-roll warm-up for a detailed walkthrough of the workflow and tips on when to run it manually.