aboutsummaryrefslogtreecommitdiff
path: root/ROMFS/px4fmu_common/init.d/rc.interface
blob: 7f793b21989c5c35a26373ea37aa31823fc52671 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
#!nsh
#
# Script to configure control interface
#

if [ $MIXER != none -a $MIXER != skip ]
then
	#
	# Load mixer
	#
	set MIXERSD /fs/microsd/etc/mixers/$MIXER.mix
	
	#Use the mixer file from the SD-card if it exists
	if [ -f $MIXERSD ]
	then
		set MIXER_FILE $MIXERSD
	else
		set MIXER_FILE /etc/mixers/$MIXER.mix
	fi
	
	if [ $OUTPUT_MODE == mkblctrl ]
	then
		set OUTPUT_DEV /dev/mkblctrl
	else
		set OUTPUT_DEV /dev/pwm_output
	fi
	
	if mixer load $OUTPUT_DEV $MIXER_FILE
	then
		echo "[init] Mixer loaded: $MIXER_FILE"
	else
		echo "[init] Error loading mixer: $MIXER_FILE"
		tone_alarm $TUNE_OUT_ERROR
	fi
else
	if [ $MIXER != skip ]
	then
		echo "[init] Mixer not defined"
		tone_alarm $TUNE_OUT_ERROR
	fi
fi

if [ $OUTPUT_MODE == fmu -o $OUTPUT_MODE == io ]
then
	if [ $PWM_OUTPUTS != none ]
	then
		#
		# Set PWM output frequency
		#
		if [ $PWM_RATE != none ]
		then
			echo "[init] Set PWM rate: $PWM_RATE"
			pwm rate -c $PWM_OUTPUTS -r $PWM_RATE
		fi
		
		#
		# Set disarmed, min and max PWM values
		#
		if [ $PWM_DISARMED != none ]
		then
			echo "[init] Set PWM disarmed: $PWM_DISARMED"
			pwm disarmed -c $PWM_OUTPUTS -p $PWM_DISARMED
		fi
		if [ $PWM_MIN != none ]
		then
			echo "[init] Set PWM min: $PWM_MIN"
			pwm min -c $PWM_OUTPUTS -p $PWM_MIN
		fi
		if [ $PWM_MAX != none ]
		then
			echo "[init] Set PWM max: $PWM_MAX"
			pwm max -c $PWM_OUTPUTS -p $PWM_MAX
		fi
	fi
fi