fpv build improvements (#588)

pull/590/head
cronyx 2022-12-12 17:28:23 +03:00 committed by GitHub
parent cb8be7d288
commit 64c83f6651
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
8 changed files with 37 additions and 18 deletions

View File

@ -100,7 +100,8 @@ BR2_PACKAGE_RTL8812AU_OPENIPC=y
# FPV
BR2_PACKAGE_WIFIBROADCAST=y
BR2_PACKAGE_MAVLINK_ROUTER=y
# BR2_PACKAGE_MAVLINK_ROUTER is not set
BR2_PACKAGE_MAVFWD=y
# DEBUG
BR2_PACKAGE_HOST_GDB=y

View File

@ -100,7 +100,8 @@ BR2_PACKAGE_RTL8812AU_OPENIPC=y
# FPV
BR2_PACKAGE_WIFIBROADCAST=y
BR2_PACKAGE_MAVLINK_ROUTER=y
# BR2_PACKAGE_MAVLINK_ROUTER is not set
BR2_PACKAGE_MAVFWD=y
# DEBUG
BR2_PACKAGE_HOST_GDB=y

View File

@ -100,7 +100,8 @@ BR2_PACKAGE_RTL8812AU_OPENIPC=y
# FPV
BR2_PACKAGE_WIFIBROADCAST=y
BR2_PACKAGE_MAVLINK_ROUTER=y
# BR2_PACKAGE_MAVLINK_ROUTER is not set
BR2_PACKAGE_MAVFWD=y
# DEBUG
BR2_PACKAGE_HOST_GDB=y

View File

@ -100,7 +100,8 @@ BR2_PACKAGE_RTL8812AU_OPENIPC=y
# FPV
BR2_PACKAGE_WIFIBROADCAST=y
BR2_PACKAGE_MAVLINK_ROUTER=y
# BR2_PACKAGE_MAVLINK_ROUTER is not set
BR2_PACKAGE_MAVFWD=y
# DEBUG
BR2_PACKAGE_HOST_GDB=y

View File

@ -87,7 +87,6 @@ case "$1" in
# UART2_RX mux
devmem 0x120c0010 32 0x1e04
fi
/usr/bin/mavlink-routerd &
/usr/bin/telemetry start
fi

View File

@ -23,6 +23,8 @@ case "$1" in
start)
echo "Loading MAVLink telemetry service..."
mavfwd --master ${serial} --baudrate ${baud} --out 127.0.0.1:${port_tx} --in 127.0.0.1:${port_rx} &
start_telemetry
echo "Done."

View File

@ -1,3 +1,5 @@
serial=/dev/ttyAMA0
baud=115200
wlan=wlan0
bandwidth=20
stbc=1
@ -12,4 +14,4 @@ fec_k=1
fec_n=2
fec_timeout=0
guard_interval=long
one_way=true
one_way=false

View File

@ -27,8 +27,6 @@ all_other() {
# change fps 25 -> 30
sed -i "s!Isp_FrameRate=25!Isp_FrameRate=30!g" /etc/sensors/imx307_i2c_2l_1080p.ini
sed -i "s!Isp_FrameRate=25!Isp_FrameRate=30!g" /etc/sensors/smtsec_imx307_i2c_4l_1080p.ini
# disable mavlink routerd autostart
sed -i "s!/usr/bin/mavlink-routerd &!#/usr/bin/mavlink-routerd &!g" /etc/init.d/S97mavlink
# majestic basic settings
${cli} -s .isp.slowShutter disabled
${cli} -s .isp.drc 350
@ -36,18 +34,17 @@ all_other() {
# ${cli} -s .isp.dis true
${cli} -s .image.contrast 50
${cli} -s .image.luminance 50
${cli} -s .video0.bitrate 4096
${cli} -s .video0.bitrate 5120
${cli} -s .video0.codec h264
${cli} -s .video0.rcMode cbr
${cli} -s .video0.gopSize 0.1
${cli} -s .video0.gopSize 0
${cli} -s .hls.enabled false
${cli} -s .netip.enabled false
${cli} -s .rtsp.enabled false
${cli} -s .jpeg.enabled false
# lowdelay support only imx307 sensor
if [ ${sensor} = "imx307" ]; then
${cli} -s .video0.size 1920x1080
${cli} -s .video0.fps 30
# ${cli} -s .video0.size 1280x720
# ${cli} -s .video0.fps 30
${cli} -s .isp.lowDelay true
# ${cli} -s .video0.sliceUnits 4
fi
@ -65,21 +62,36 @@ EOF
case "$1" in
gk7205v200 | hi3516ev200)
echo "Preparing system tweaks for ${chip}..."
# set osmem
fw_setenv osmem 40M
# change uart2 to uart0 (uart2 used by default [RX ONLY!] If you need two way, use uart0)
#sed -i "s!Device = /dev/ttyAMA2!Device = /dev/ttyAMA0!g" /etc/mavlink.conf
#sed -i "s!console::respawn:/sbin/getty -L console 0 vt100 # GENERIC_SERIAL!#console::respawn:/sbin/getty -L console 0 vt100 # GENERIC_SERIAL!g" /etc/inittab
# set custom config
if [ ${chip} = "gk7205v200" ] && [ ${sensor} = "imx307" ]; then
echo "switch to custom sensor config"
# ${cli} -s .isp.sensorConfig /etc/sensors/60fps/720p_imx307_i2c_2l.ini
fi
# fix osmem in bootargs
bootargs=$(fw_printenv -n bootargs)
if echo ${bootargs} | grep -q "32M"; then
newbootargs="mem=\${osmem} "$(echo ${bootargs} | cut -d " " -f2-)
fw_setenv bootargs ${newbootargs}
fw_setenv osmem 40M
fi
sed -i "s!console::respawn:/sbin/getty -L console 0 vt100 # GENERIC_SERIAL!#console::respawn:/sbin/getty -L console 0 vt100 # GENERIC_SERIAL!g" /etc/inittab
# remove unneeded to reduce some memory
rm -f /etc/init.d/S60crond /etc/init.d/S49ntpd /etc/init.d/S02klogd
all_other
;;
gk7205v300 | hi3516ev300)
echo "Preparing system tweaks for ${chip}..."
# set sensor config for smtsec board
if [ ${chip} = "gk7205v300" ] && [ ${sensor} = "imx307" ]; then
${cli} -s .isp.sensorConfig /etc/sensors/smtsec_imx307_i2c_4l_1080p.ini
fi
all_other
;;
*)