Hallo Zusammen,
ich möchte gerne abhängig vom Zustand eines GPIOs eine Aufnahme per FFMPEG starten und dann beim High werden des GPIOs wieder stoppen. Soweit so gut, aber es scheitert leider an der If Abfrage vom Zustand des GPIOs. Es gibt da anscheinend mehrere Möglichkeiten für eine funktionierende Syntax aber ich blicke das jetzt nach mehreren Versuchen leider nicht mehr. Aktuell sieht der Code wie folgt aus:
Bash
#!/bin/sh
#DATE=`date +%d-%m-%y--%H:%M`
recording=0
echo "68" > /sys/class/gpio/export
echo "in" > /sys/class/gpio/gpio68/direction
recordingpin = $(cat /sys/class/gpio/gpio68/value)
while :
do
if [ $recordingpin -eq "0" ]; then
echo "Pin Low, lets start recording!"
recording=1
mount /dev/sda1 /root/mountusb/
mkdir /root/mountusb/$DATE
/usr/bin/screen -dmS recording ffmpeg -f v4l2 -input_format mjpeg -i /dev/video>
fi
if [[ /bin/cat /sys/class/gpio/gpio68/value -eq "1" ]] && [[ $recording -eq "1"]]; then
echo "Pin High, stop recording!"
recording=0
/usr/bin/screen -S recording -X stuff "q"
sleep 10
umount /root/mountusb/
fi
done
Display More
Momentan bekomme ich dies als Fehlermeldung:
sh: 0: unknown operand
sh: /sys/class/gpio/gpio68/value: unknown operand
while
Hätte hier irgendwer noch eine Idee?