diff --git a/.editorconfig b/.editorconfig index c9dc5148..fa5d5485 100644 --- a/.editorconfig +++ b/.editorconfig @@ -4,7 +4,7 @@ root = true charset = utf-8 end_of_line = lf indent_size = 2 -indent_style = space +indent_style = tab insert_final_newline = true max_line_length = 120 tab_width = 2 diff --git a/general/overlay/lib/mdev/automount.sh b/general/overlay/lib/mdev/automount.sh index 29dd8808..67f00417 100755 --- a/general/overlay/lib/mdev/automount.sh +++ b/general/overlay/lib/mdev/automount.sh @@ -4,39 +4,39 @@ destdir=/mnt my_umount() { - if grep -qs "^/dev/$1 " /proc/mounts ; then - umount "${destdir}/$1"; - fi + if grep -qs "^/dev/$1 " /proc/mounts ; then + umount "${destdir}/$1"; + fi - [ -d "${destdir}/$1" ] && rmdir "${destdir}/$1" + [ -d "${destdir}/$1" ] && rmdir "${destdir}/$1" } my_mount() { - mkdir -p "${destdir}/$1" || exit 1 + mkdir -p "${destdir}/$1" || exit 1 - if ! mount -t auto -o sync "/dev/$1" "${destdir}/$1"; then - # failed to mount, clean up mountpoint - rmdir "${destdir}/$1" - exit 1 - fi + if ! mount -t auto -o sync "/dev/$1" "${destdir}/$1"; then + # failed to mount, clean up mountpoint + rmdir "${destdir}/$1" + exit 1 + fi - # copy files from autoconfig folder - [ -d "${destdir}/$1/autoconfig" ] && cp -afv ${destdir}/$1/autoconfig/* / | logger -s -p daemon.info -t autoconfig + # copy files from autoconfig folder + [ -d "${destdir}/$1/autoconfig" ] && cp -afv ${destdir}/$1/autoconfig/* / | logger -s -p daemon.info -t autoconfig - # execution of the specified commands one time - [ -f "${destdir}/$1/autoconfig.sh" ] && (sh ${destdir}/$1/autoconfig.sh ; rm -f ${destdir}/$1/autoconfig.sh) | logger -s -p daemon.info -t autoconfig + # execution of the specified commands one time + [ -f "${destdir}/$1/autoconfig.sh" ] && (sh ${destdir}/$1/autoconfig.sh ; rm -f ${destdir}/$1/autoconfig.sh) | logger -s -p daemon.info -t autoconfig - # execution of the specified commands - [ -f "${destdir}/$1/autostart.sh" ] && sh ${destdir}/$1/autostart.sh | logger -s -p daemon.info -t autostart + # execution of the specified commands + [ -f "${destdir}/$1/autostart.sh" ] && sh ${destdir}/$1/autostart.sh | logger -s -p daemon.info -t autostart } case "${ACTION}" in add|"") - my_umount ${MDEV} - my_mount ${MDEV} - ;; + my_umount ${MDEV} + my_mount ${MDEV} + ;; remove) - my_umount ${MDEV} - ;; + my_umount ${MDEV} + ;; esac diff --git a/general/package/datalink/files/telemetry b/general/package/datalink/files/telemetry index 5274fd4c..bb6d8d97 100755 --- a/general/package/datalink/files/telemetry +++ b/general/package/datalink/files/telemetry @@ -11,46 +11,46 @@ keydir="/etc" fw=$(grep "BUILD_OPTION" "/etc/os-release" | cut -d= -f2) if [ ! -f /usr/bin/telemetry_rx -a ! -f /usr/bin/telemetry_tx ]; then - ln -s /usr/bin/wfb_rx /usr/bin/telemetry_rx ; chmod +x /usr/bin/telemetry_rx - ln -s /usr/bin/wfb_tx /usr/bin/telemetry_tx ; chmod +x /usr/bin/telemetry_tx + ln -s /usr/bin/wfb_rx /usr/bin/telemetry_rx ; chmod +x /usr/bin/telemetry_rx + ln -s /usr/bin/wfb_tx /usr/bin/telemetry_tx ; chmod +x /usr/bin/telemetry_tx fi start_drone_telemetry() { - if [ ${one_way} = "false" ]; then - telemetry_rx -p ${stream_rx} -u ${port_rx} -K ${keydir}/${unit}.key -i ${link_id} ${wlan} > /dev/null & - fi - telemetry_tx -p ${stream_tx} -u ${port_tx} -K ${keydir}/${unit}.key -B ${bandwidth} -M ${mcs_index} -S ${stbc} -L ${ldpc} -G ${guard_interval} -k ${fec_k} -n ${fec_n} -T ${pool_timeout} -i ${link_id} -f ${frame_type} ${wlan} > /dev/null & + if [ ${one_way} = "false" ]; then + telemetry_rx -p ${stream_rx} -u ${port_rx} -K ${keydir}/${unit}.key -i ${link_id} ${wlan} > /dev/null & + fi + telemetry_tx -p ${stream_tx} -u ${port_tx} -K ${keydir}/${unit}.key -B ${bandwidth} -M ${mcs_index} -S ${stbc} -L ${ldpc} -G ${guard_interval} -k ${fec_k} -n ${fec_n} -T ${pool_timeout} -i ${link_id} -f ${frame_type} ${wlan} > /dev/null & } start_gs_telemetry() { - if [ ${one_way} = "false" ]; then - telemetry_tx -p ${stream_tx} -u ${port_tx} -K ${keydir}/${unit}.key -B ${bandwidth} -M ${mcs_index} -S ${stbc} -L ${ldpc} -G ${guard_interval} -k ${fec_k} -n ${fec_n} -T ${pool_timeout} -i ${link_id} -f ${frame_type} ${wlan} > /dev/null & - fi - telemetry_rx -p ${stream_rx} -u ${port_rx} -K ${keydir}/${unit}.key -i ${link_id} ${wlan} > /dev/null & + if [ ${one_way} = "false" ]; then + telemetry_tx -p ${stream_tx} -u ${port_tx} -K ${keydir}/${unit}.key -B ${bandwidth} -M ${mcs_index} -S ${stbc} -L ${ldpc} -G ${guard_interval} -k ${fec_k} -n ${fec_n} -T ${pool_timeout} -i ${link_id} -f ${frame_type} ${wlan} > /dev/null & + fi + telemetry_rx -p ${stream_rx} -u ${port_rx} -K ${keydir}/${unit}.key -i ${link_id} ${wlan} > /dev/null & } case "$1" in - start) - echo "Loading MAVLink telemetry service..." + start) + echo "Loading MAVLink telemetry service..." - if [ ${router} -eq 1 ] || [ ${fw} = "lte" ]; then - mavlink-routerd -c /etc/mavlink.conf > /dev/null 2>&1 & - else - mavfwd --channels ${channels} --master ${serial} --baudrate ${baud} --out 127.0.0.1:${port_tx} --in 127.0.0.1:${port_rx} > /dev/null & - fi - if [ ${fw} = "fpv" ] || [ ${fw} = "venc" ]; then - start_${unit}_telemetry - fi - echo "Done." - ;; - stop) - echo "Stopping telemetry services..." - kill -9 $(pidof telemetry_rx) - kill -9 $(pidof telemetry_tx) - kill -9 $(pidof mavlink-routerd) - kill -9 $(pidof mavfwd) - ;; - *) - echo "Usage: $0 {start|stop}" - exit 1 + if [ ${router} -eq 1 ] || [ ${fw} = "lte" ]; then + mavlink-routerd -c /etc/mavlink.conf > /dev/null 2>&1 & + else + mavfwd --channels ${channels} --master ${serial} --baudrate ${baud} --out 127.0.0.1:${port_tx} --in 127.0.0.1:${port_rx} > /dev/null & + fi + if [ ${fw} = "fpv" ] || [ ${fw} = "venc" ]; then + start_${unit}_telemetry + fi + echo "Done." + ;; + stop) + echo "Stopping telemetry services..." + kill -9 $(pidof telemetry_rx) + kill -9 $(pidof telemetry_tx) + kill -9 $(pidof mavlink-routerd) + kill -9 $(pidof mavfwd) + ;; + *) + echo "Usage: $0 {start|stop}" + exit 1 esac diff --git a/general/package/datalink/files/tweaksys b/general/package/datalink/files/tweaksys index 77915817..8abcbae3 100755 --- a/general/package/datalink/files/tweaksys +++ b/general/package/datalink/files/tweaksys @@ -5,174 +5,174 @@ family=$(ipcinfo -f) vendor=$(ipcinfo -v) if ! [ ${chip} = "hi3536dv100" ]; then - sensor=$(ipcinfo -s) + sensor=$(ipcinfo -s) fi basic() { - # set boot delay - fw_setenv bootdelay 0 - # don't load f2fs module (disabled in kernel) - sed -i "s!f2fs!#f2fs!g" /etc/modules - # freely uart for telemetry - 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 boot delay + fw_setenv bootdelay 0 + # don't load f2fs module (disabled in kernel) + sed -i "s!f2fs!#f2fs!g" /etc/modules + # freely uart for telemetry + 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 - # tune socket buffer - echo "net.core.rmem_default=512000" >> /etc/sysctl.conf + # tune socket buffer + echo "net.core.rmem_default=512000" >> /etc/sysctl.conf } prefix=${family} hisi_goke() { - if [ ${vendor} = "hisilicon" ]; then - prefix="open" - fi - # remove unneeded modules - sed -i "s!insmod ${prefix}_rgn.ko!#insmod ${prefix}_rgn.ko!g" /usr/bin/load_${vendor} - sed -i "s!insmod ${prefix}_jpege.ko!#insmod ${prefix}_jpege.ko!g" /usr/bin/load_${vendor} - sed -i "s!insmod ${prefix}_ive.ko save_power=0!#insmod ${prefix}_ive.ko save_power=0!g" /usr/bin/load_${vendor} - sed -i "s!insmod ${prefix}_aio.ko!#insmod ${prefix}_aio.ko!g" /usr/bin/load_${vendor} - sed -i "s!insmod ${prefix}_ai.ko!#insmod ${prefix}_ai.ko!g" /usr/bin/load_${vendor} - sed -i "s!insmod ${prefix}_ao.ko!#insmod ${prefix}_ao.ko!g" /usr/bin/load_${vendor} - sed -i "s!insmod ${prefix}_aenc.ko!#insmod ${prefix}_aenc.ko!g" /usr/bin/load_${vendor} - sed -i "s!insmod ${prefix}_adec.ko!#insmod ${prefix}_adec.ko!g" /usr/bin/load_${vendor} - sed -i "s!insmod ${prefix}_acodec.ko!#insmod ${prefix}_acodec.ko!g" /usr/bin/load_${vendor} - # 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 - sed -i "s!Isp_FrameRate=25!Isp_FrameRate=30!g" /etc/sensors/imx335_i2c_4M.ini + if [ ${vendor} = "hisilicon" ]; then + prefix="open" + fi + # remove unneeded modules + sed -i "s!insmod ${prefix}_rgn.ko!#insmod ${prefix}_rgn.ko!g" /usr/bin/load_${vendor} + sed -i "s!insmod ${prefix}_jpege.ko!#insmod ${prefix}_jpege.ko!g" /usr/bin/load_${vendor} + sed -i "s!insmod ${prefix}_ive.ko save_power=0!#insmod ${prefix}_ive.ko save_power=0!g" /usr/bin/load_${vendor} + sed -i "s!insmod ${prefix}_aio.ko!#insmod ${prefix}_aio.ko!g" /usr/bin/load_${vendor} + sed -i "s!insmod ${prefix}_ai.ko!#insmod ${prefix}_ai.ko!g" /usr/bin/load_${vendor} + sed -i "s!insmod ${prefix}_ao.ko!#insmod ${prefix}_ao.ko!g" /usr/bin/load_${vendor} + sed -i "s!insmod ${prefix}_aenc.ko!#insmod ${prefix}_aenc.ko!g" /usr/bin/load_${vendor} + sed -i "s!insmod ${prefix}_adec.ko!#insmod ${prefix}_adec.ko!g" /usr/bin/load_${vendor} + sed -i "s!insmod ${prefix}_acodec.ko!#insmod ${prefix}_acodec.ko!g" /usr/bin/load_${vendor} + # 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 + sed -i "s!Isp_FrameRate=25!Isp_FrameRate=30!g" /etc/sensors/imx335_i2c_4M.ini } sigmastar() { - sed -i "s!serial=/dev/ttyAMA0!serial=/dev/ttyS0!g" /etc/telemetry.conf - sed -i "s!Device = /dev/ttyAMA0!Device = /dev/ttyS0!g" /etc/mavlink.conf + sed -i "s!serial=/dev/ttyAMA0!serial=/dev/ttyS0!g" /etc/telemetry.conf + sed -i "s!Device = /dev/ttyAMA0!Device = /dev/ttyS0!g" /etc/mavlink.conf } majestic_generic() { - cli -s .isp.slowShutter disabled - # enable digital image stabilization - # cli -s .isp.dis true - cli -s .image.contrast 50 - cli -s .image.luminance 50 - cli -s .video0.size 1920x1080 - cli -s .video0.fps 30 - cli -s .video0.bitrate 5120 - cli -s .video0.codec h264 - cli -s .video0.rcMode cbr - cli -s .video0.gopSize 1.5 - # lowdelay support only imx307 sensor - if [ ${sensor} = "imx307" ]; then - cli -s .isp.lowDelay true - # cli -s .video0.sliceUnits 4 - fi - if [ ${sensor} = "imx335" ]; then - cli -s .isp.drc 350 - cli -s .isp.sensorConfig /etc/sensors/imx335_i2c_4M.ini - fi - cli -s .hls.enabled false - cli -s .netip.enabled false - cli -s .jpeg.enabled false + cli -s .isp.slowShutter disabled + # enable digital image stabilization + # cli -s .isp.dis true + cli -s .image.contrast 50 + cli -s .image.luminance 50 + cli -s .video0.size 1920x1080 + cli -s .video0.fps 30 + cli -s .video0.bitrate 5120 + cli -s .video0.codec h264 + cli -s .video0.rcMode cbr + cli -s .video0.gopSize 1.5 + # lowdelay support only imx307 sensor + if [ ${sensor} = "imx307" ]; then + cli -s .isp.lowDelay true + # cli -s .video0.sliceUnits 4 + fi + if [ ${sensor} = "imx335" ]; then + cli -s .isp.drc 350 + cli -s .isp.sensorConfig /etc/sensors/imx335_i2c_4M.ini + fi + cli -s .hls.enabled false + cli -s .netip.enabled false + cli -s .jpeg.enabled false } majestic_sigmastar() { - cli -s .isp.exposure 10 - cli -s .isp.aGain 8 - cli -s .isp.dGain 8 - cli -s .video0.size 1920x1080 - cli -s .video0.fps 90 - cli -s .video0.rcMode cbr - cli -s .jpeg.enabled false + cli -s .isp.exposure 10 + cli -s .isp.aGain 8 + cli -s .isp.dGain 8 + cli -s .video0.size 1920x1080 + cli -s .video0.fps 90 + cli -s .video0.rcMode cbr + cli -s .jpeg.enabled false } streamer() { - if [ -f /usr/bin/majestic ]; then - if [ ${vendor} = "sigmastar" ]; then - majestic_sigmastar - else - majestic_generic - fi - # outgoing rtp stream to udp - cli -s .outgoing.enabled true - cli -s .outgoing.server udp://127.0.0.1:5600 - fi + if [ -f /usr/bin/majestic ]; then + if [ ${vendor} = "sigmastar" ]; then + majestic_sigmastar + else + majestic_generic + fi + # outgoing rtp stream to udp + cli -s .outgoing.enabled true + cli -s .outgoing.server udp://127.0.0.1:5600 + fi - if [ -f /usr/bin/venc ]; then - if [ ${sensor} = "imx335" ]; then - sed -i "s!version=200_imx307B!version=300_imx335B!g" /etc/venc.conf - sed -i "s!size=720p!size=1292x972!g" /etc/venc.conf - fi - fi + if [ -f /usr/bin/venc ]; then + if [ ${sensor} = "imx335" ]; then + sed -i "s!version=200_imx307B!version=300_imx335B!g" /etc/venc.conf + sed -i "s!size=720p!size=1292x972!g" /etc/venc.conf + fi + fi } finish() { - # complete tweaks and add marker - touch /etc/system.ok - echo "Preparing system done." - reboot + # complete tweaks and add marker + touch /etc/system.ok + echo "Preparing system done." + reboot } case "$1" in - gk7205v200 | gk7205v210 | hi3516ev200) - echo "Preparing system tweaks for ${chip}..." + gk7205v200 | gk7205v210 | hi3516ev200) + echo "Preparing system tweaks for ${chip}..." - # 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 + # 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 + # 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 - # remove unneeded to reduce some memory - rm -f /etc/init.d/S60crond /etc/init.d/S49ntpd /etc/init.d/S02klogd + # remove unneeded to reduce some memory + rm -f /etc/init.d/S60crond /etc/init.d/S49ntpd /etc/init.d/S02klogd - basic - hisi_goke - streamer - finish - ;; - gk7205v300 | hi3516ev300) - echo "Preparing system tweaks for ${chip}..." + basic + hisi_goke + streamer + finish + ;; + gk7205v300 | hi3516ev300) + echo "Preparing system tweaks for ${chip}..." - # increase osmem - mem=$(fw_printenv -n osmem) && [ "${mem}" = "32M" ] && fw_setenv osmem 64M && set_allocator cma || echo "Memory allocated for the system:" ${mem} + # increase osmem + mem=$(fw_printenv -n osmem) && [ "${mem}" = "32M" ] && fw_setenv osmem 64M && set_allocator cma || echo "Memory allocated for the system:" ${mem} - # 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 + # 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 - basic - hisi_goke - streamer - finish - ;; - t31l | t31n | t31x | t31zx) - echo "Preparing system tweaks for ${chip}..." + basic + hisi_goke + streamer + finish + ;; + t31l | t31n | t31x | t31zx) + echo "Preparing system tweaks for ${chip}..." - basic - streamer - finish - ;; - hi3536dv100) - echo "Preparing system tweaks for ${chip}..." + basic + streamer + finish + ;; + hi3536dv100) + echo "Preparing system tweaks for ${chip}..." - finish - ;; - ssc33x) - echo "Preparing system tweaks for ${chip}..." + finish + ;; + ssc33x) + echo "Preparing system tweaks for ${chip}..." - basic - sigmastar - streamer - finish - ;; + basic + sigmastar + streamer + finish + ;; *) - echo "Usage: $0 {gk7205v200|gk7205v210|gk7205v300|hi3516ev200|hi3516ev300|t31l|t31n|t31x|t31zx|hi3536dv100|ssc33x}" - exit 1 + echo "Usage: $0 {gk7205v200|gk7205v210|gk7205v300|hi3516ev200|hi3516ev300|t31l|t31n|t31x|t31zx|hi3536dv100|ssc33x}" + exit 1 esac diff --git a/general/package/ingenic-osdrv-t31/files/script/load_ingenic b/general/package/ingenic-osdrv-t31/files/script/load_ingenic index 5584f408..9b66a64c 100755 --- a/general/package/ingenic-osdrv-t31/files/script/load_ingenic +++ b/general/package/ingenic-osdrv-t31/files/script/load_ingenic @@ -121,10 +121,10 @@ case ${SENSOR} in SENSOR_PARAM="" ;; "jxk04") - AVPU_PARAM="clk_name=vpll avpu_clk=400000000" - ISP_PARAM="isp_clk=125000000 isp_ch0_pre_dequeue_time=14 isp_ch0_pre_dequeue_interrupt_process=0 isp_ch0_pre_dequeue_valid_lines=540 isp_memopt=1" - SENSOR_PARAM="shvflip=1" - ;; + AVPU_PARAM="clk_name=vpll avpu_clk=400000000" + ISP_PARAM="isp_clk=125000000 isp_ch0_pre_dequeue_time=14 isp_ch0_pre_dequeue_interrupt_process=0 isp_ch0_pre_dequeue_valid_lines=540 isp_memopt=1" + SENSOR_PARAM="shvflip=1" + ;; "os03b10") AVPU_PARAM="clk_name=vpll avpu_clk=400000000" ISP_PARAM="isp_clk=200000000"