#!/bin/bash indicatif='F4HIZ' # mettez votre indicatif ici #5V ;5V ;GND ;GPIO14;GPIO15;GPIO18;GND ;GPIO23;GPIO24;GND ;GPIO25;GPIO8 ;GPIO7;DNC;GND ;GPIO12;GND ;GPIO16;GPIO20;GPIO21 #3V3;GPIO2;GPIO3;GPIO4 ;GND ;GPIO17;GPIO27;GPIO22;3V3 ;GPIO10;GPIO9 ;GPIO11;GND ;DNC;GPIO5;GPIO6 ;GPIO13;GPIO19;GPIO26;GND # interrupteur pour enclencher le système # GPIO 24 ━━résistance 1K━━━┓ # ground ━━résistance 10K━━┫ # ┃ # ╱ # ┃ # 3v3 ━━━━━━━━━━━━━━━━━━┛ # # antenne FM # GPIO 4 (antenne 20cm) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ # # led d'infos # GPIO 22 ━━━━━━━━led rouge━━┓ émission # ground ━━résistance 10K━━━┫ # GPIO 23 ━━━━━━━━led jaune━━┛ prise de la photo # commande baofend ou yaesu # GPIO 18 ━━━━━━━━━━━━━━━━━━┳━━résistance 220━━━━2N3904 # ground ━━résistance 10K━━┛ #mode=24 mode=8 finish() { echo "22" > /sys/class/gpio/unexport echo "23" > /sys/class/gpio/unexport echo "24" > /sys/class/gpio/unexport echo "18" > /sys/class/gpio/unexport } trap finish EXIT # switch echo "24" > /sys/class/gpio/export sleep 1 echo in > /sys/class/gpio/gpio24/direction # audio cable echo "18" > /sys/class/gpio/export sleep 1 echo out > /sys/class/gpio/gpio18/direction # led rouge (émission) echo "22" > /sys/class/gpio/export sleep 1 echo out > /sys/class/gpio/gpio22/direction echo 0 > /sys/class/gpio/gpio22/value # led jaune (photo) echo "23" > /sys/class/gpio/export sleep 1 echo out > /sys/class/gpio/gpio23/direction echo 0 > /sys/class/gpio/gpio23/value sleep 1 echo 1 > /sys/class/gpio/gpio23/value # jaune sleep 1 echo 0 > /sys/class/gpio/gpio23/value # jaune if [ ! -d /root/photos ]; then mkdir /root/photos fi if [ ! -f /root/photos/_num ]; then echo "0" > /root/photos/_num fi num=`cat /root/photos/_num` while : do sleep 2 if [ `cat /sys/class/gpio/gpio24/value` -eq 1 ]; then echo 1 > /sys/class/gpio/gpio23/value # led jaune # take photo num=$((num+1)) echo $num > /root/photos/_num raspistill -w 2592 -h 1944 --colfx 128:128 -vf -hf -o /root/photos/photo_${num}.jpg echo 0 > /sys/class/gpio/gpio23/value if [[ mode -eq 24 ]]; then #raspistill -w 320 -h 240 --colfx 128:128 -vf -hf -o /root/data/photo.jpg convert /root/photos/photo_${num}.jpg -resize 320x240 -strip -interlace Plane /root/data/photo.jpg else #raspistill -w 160 -h 120 --colfx 128:128 -vf -hf -o /root/data/photo.jpg convert /root/photos/photo_${num}.jpg -resize 160x120 -strip -interlace Plane /root/data/photo.jpg fi convert /root/data/photo.jpg -fill '#0008' -draw 'rectangle 0,0,65,25' -fill white -pointsize 20 -annotate +5+20 $indicatif /root/data/anno_photo.jpg # encode wav /root/SSTV_Robot_encoder/SSTV_Robot_encoder /root/data/anno_photo.jpg /root/data/sstv_robot.wav # Robot${mode}BW if [ -f /root/data/sstv_robot.wav ]; then echo 1 > /sys/class/gpio/gpio22/value # led rouge # FM # Pas au point :-( # /root/fm_transmitter/bin/Release/fm_transmitter /root/data/sstv_robot.wav 104.0 & # radio echo 1 > /sys/class/gpio/gpio18/value if [ `aplay -L|grep "plughw:CARD=Device,DEV=0"` != "" ]; then aplay -D plughw:CARD=Device,DEV=0 /root/data/sstv_robot.wav else aplay /root/data/sstv_robot.wav fi echo 0 > /sys/class/gpio/gpio18/value echo 0 > /sys/class/gpio/gpio22/value # led rouge sleep 2 echo "24" > /sys/class/gpio/unexport echo "24" > /sys/class/gpio/export sleep 1 echo in > /sys/class/gpio/gpio24/direction else echo "ERROR /root/data/sstv_robot.wav not found !" echo 1 > /sys/class/gpio/gpio22/value # led rouge sleep 1 echo 0 > /sys/class/gpio/gpio22/value # led rouge echo 1 > /sys/class/gpio/gpio23/value # led jaune sleep 1 echo 0 > /sys/class/gpio/gpio23/value # led jaune echo 1 > /sys/class/gpio/gpio22/value # led rouge sleep 1 echo 0 > /sys/class/gpio/gpio22/value # led rouge fi fi done