Open FPV VTX开源之第一次出图
- 1. 源由
- 2. 连线
- 2.1 飞控
- 2.2 调试
- 3. serial
- 3.1 启动log - uboot
- 3.2 登录版本 - linux
- 3.3 获取有线IP
- 4. ssh - linux
- 5. PixelPilot出图
- 6. 总结
- 7. 参考资料
1. 源由
在《Open FPV VTX开源之硬件规格及组成》章节中,已经基本介绍了产品组成。
为了让其正常工作,其组合大致有以下几种方式:
- Open FPV VTX + Ardupilot
- Open FPV VTX + betaflight
- Open FPV VTX + inav
- Open FPV VTX + PX4 //个人来说,用的比较少
为了让其正常工作,在第一次上电之前需要做一些准备工作,本章就是为了这些准备工作编写的。
2. 连线
2.1 飞控
Open FPV VTX -- toFC -- Flight ControllertoFC:- pin1: VCC(7.4~26V) ---- FC VBat+- pin2: GND ------------- FC GND- pin3: UART_RX1 -------- FC OSD_TX1- pin4: UART_TX1 -------- FC OSD_RX1- pin5: GND ------------- FC GND- pin6: NC
注:选择笔者第一台FPV无人机使用的Holybro Kakute F7 and KAKUTE F7 AIO串口1作为OSD的UART。
2.2 调试
由于DEBUG线是预先做好的,这里就不一一对应做连接,直接从逻辑上进行示意。
Open FPV VTX -- toDebug -- GND/UART_TX0/UART_RX0 -- USB -- PC Serial Console|+------ TP_LAN/TN_LAN/RP_LAN/RN_LAN -- Ethernet -- PC SSHtoDebug:pin1: TP_LANpin2: TN_LANpin3: RP_LANpin4: RN_LANpin5: GNDpin6: UART_TX0pin7: UART_RX0
3. serial
serial
环境就是类似PC的BIOS阶段,主要用于低层次升级固件版本,可能会导致变砖。若真的变砖就需要其他JTAG工具,比如:J-Link。
注:调试版通常情况下串口驱动是默认的,请仔细查看驱动是否正确安装。
3.1 启动log - uboot
U-Boot 2015.01 (Oct 27 2024 - 17:00:58)Version: I6E#34aafa6#
I2C: ready
DRAM:
WARNING: Caches not enabled
MMC: MStar SD/MMC: 0
nor_flash_mxp allocated success!!
Flash is detected (0x0709, 0xEF, 0x40, 0x18)
SF: Detected nor0 with total size 16 MiB
MXP found at mxp_offset[2]=0x0000F000, size=0x1000
env_offset=0x40000 env_size=0x10000
Flash is detected (0x0709, 0xEF, 0x40, 0x18)
SF: Detected nor0 with total size 16 MiB
In: serial
Out: serial
Err: serial
Net: MAC Address 00:00:23:34:45:66
Auto-Negotiation...
AN failLink Status Speed:10 Full-duplex:0
Status Error!
sstar_emac
MMC Device 1 not found
Flash is detected (0x0709, 0xEF, 0x40, 0x18)
SF: Detected nor0 with total size 16 MiB
SF: 2097152 bytes @ 0x50000 Read: OK (cost 421 ms)
## Booting kernel from Legacy Image at 21000000 ...Image Name: Linux-4.9.84-ssc338qImage Type: ARM Linux Kernel Image (uncompressed)Data Size: 2046352 Bytes = 2 MiBLoad Address: 20008000Entry Point: 20008000Verifying Checksum ... OKLoading Kernel Image ... OK
atags:0x20000000Starting kernel ...Booting Linux on physical CPU 0x0
Linux version 4.9.84 (runner@fv-az523-946) (buildroot-gcc-13.3.0) #2 SMP PREEMPT Sat Nov 30 23:43:27 UTC 2024
CPU: ARMv7 Processor [410fc075] revision 5 (ARMv7), cr=50c5387d
CPU: div instructions available: patching division code
CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
early_atags_to_fdt() success
OF: fdt:Machine model: INFINITY6E SSC012B-S01A
LXmem is 0xffe0000 PHYS_OFFSET is 0x20000000
Add mem start 0x20000000 size 0xffe0000!!!!LX_MEM = 0x20000000, 0xffe0000
LX_MEM2 = 0x0, 0x0
LX_MEM3 = 0x0, 0x0
EMAC_LEN= 0x0
DRAM_LEN= 0x0
deal_with_reserve_mma_heap memblock_reserve success mma_config[0].reserved_start=
0x26144000cma: Reserved 2 MiB at 0x25e00000
Memory policy: Data cache writealloc
[infinity6e_smp_init_cpus]
percpu: Embedded 13 pages/cpu s21272 r8192 d23784 u53248
Built 1 zonelists in Zone order, mobility grouping on. Total pages: 64992
Kernel command line: console=ttyS0,115200 panic=20 root=/dev/mtdblock3 init=/init mtdparts=NOR_FLASH:256k(boot),64k(env),2048k(kernel),8192k(rootfs),-(rootfs_data) LX_MEM=0xFFE0000 mma_heap=mma_heap_name0,miu=0,sz=0x9E9C000 cma=2M
PID hash table entries: 1024 (order: 0, 4096 bytes)
Dentry cache hash table entries: 32768 (order: 5, 131072 bytes)
Inode-cache hash table entries: 16384 (order: 4, 65536 bytes)
Memory: 90772K/262016K available (2379K kernel code, 211K rwdata, 1212K rodata, 172K init, 129K bss, 169196K reserved, 2048K cma-reserved)
Virtual kernel memory layout:vector : 0xffff0000 - 0xffff1000 ( 4 kB)fixmap : 0xffc00000 - 0xfff00000 (3072 kB)vmalloc : 0xd0000000 - 0xff800000 ( 760 MB)lowmem : 0xc0000000 - 0xcffe0000 ( 255 MB)modules : 0xbf800000 - 0xc0000000 ( 8 MB).text : 0xc0008000 - 0xc025af64 (2380 kB).init : 0xc03ad000 - 0xc03d8000 ( 172 kB).data : 0xc03d8000 - 0xc040ce28 ( 212 kB).bss : 0xc040e000 - 0xc042e468 ( 130 kB)
SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=2, Nodes=1
Preemptible hierarchical RCU implementation.Build-time adjustment of leaf fanout to 32.RCU restricting CPUs from NR_CPUS=4 to nr_cpu_ids=2.
RCU: Adjusting geometry for rcu_fanout_leaf=32, nr_cpu_ids=2
NR_IRQS:16 nr_irqs:16 16
ms_init_main_intc: np->name=ms_main_intc, parent=gic
ms_init_pm_intc: np->name=ms_pm_intc, parent=ms_main_intc
ss_init_gpi_intc: np->name=ms_gpi_intc, parent=ms_main_intc
Find CLK_ven_pll, hook ms_venpll_ops
Find CLK_cpupll_clk, hook ms_cpuclk_ops
arm_arch_timer: Architected cp15 timer(s) running at 6.00MHz (virt).
clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x1623fa770, max_idle_ns: 440795202238 ns
sched_clock: 56 bits at 6MHz, resolution 166ns, wraps every 4398046511055ns
Switching to timer-based delay loop, resolution 166ns
console [ttyS0] enabled
Calibrating delay loop (skipped), value calculated using timer frequency.. 12.00 BogoMIPS (lpj=60000)
pid_max: default: 4096 minimum: 301
Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
CPU: Testing write buffer coherency: ok
CPU0: update cpu_capacity 1024
CPU0: thread -1, cpu 0, socket 0, mpidr 80000000
Setting up static identity map for 0x20008240 - 0x2000828c
[infinity6e_boot_secondary]
CPU1: failed to boot: -38
Brought up 1 CPUs
SMP: Total of 1 processors activated (12.00 BogoMIPS).
CPU: All CPU(s) started in SVC mode.
devtmpfs: initialized
VFP support v0.3: implementor 41 architecture 2 part 30 variant 7 rev 5
clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
futex hash table entries: 16 (order: -2, 1024 bytes)
NET: Registered protocol family 16
DMA: preallocated 256 KiB pool for atomic coherent allocationsVersion : MVX4##I6E#g#######KL_LX409##[BR:g]#XVMGPIO: probe end[Padmux]reset PAD42(reg 0x103c00:6f; mask0x7) t0 SD1_MODE_2 (org: I2C0_MODE_1)
[Padmux]reset PAD49(reg 0x103c00:60; mask0x180) t0 GPIO (org: EJ_MODE_1)
hw-breakpoint: found 5 (+1 reserved) breakpoint and 4 watchpoint registers.
hw-breakpoint: maximum watchpoint size is 8 bytes.
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
clocksource: Switched to clocksource arch_sys_counter
NET: Registered protocol family 2
TCP established hash table entries: 2048 (order: 1, 8192 bytes)
TCP bind hash table entries: 2048 (order: 3, 40960 bytes)
TCP: Hash tables configured (established 2048 bind 2048)
UDP hash table entries: 128 (order: 0, 6144 bytes)
UDP-Lite hash table entries: 128 (order: 0, 6144 bytes)
NET: Registered protocol family 1
hw perfevents: enabled with armv7_cortex_a7 PMU driver, 5 counters available
workingset: timestamp_bits=30 max_order=15 bucket_order=0
squashfs: version 4.0 (2009/01/31) Phillip Lougher
jffs2: version 2.2. (NAND) © 2001-2006 Red Hat, Inc.
io scheduler noop registered
io scheduler deadline registered (default)
Infinity6e PHY probe, base:fd2a4600
loop: module loaded
libphy: Fixed MDIO Bus: probed
tun: Universal TUN/TAP device driver, 1.6
tun: (C) 1999-2004 Max Krasnyansky <maxk@qualcomm.com>
ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
Mstar_ehc_init version:20180309
ehci monitor start running
Sstar-ehci-1 H.W init
Get power-enable-pad from DTS GPIO(65535)
Titania3_series_start_ehc start
[USB] config miu select [70] [e8] [ef] [ef]
[USB] enable miu lower bound address subtraction
[USB] init squelch level 0x2
[USB] no platform_data, device tree coming
[USB][EHC] dma coherent_mask 0xffffffffffffffff mask 0xffffffffffffffff
BC disable
[USB] soc:Sstar-ehci-1 irq --> 69
Sstar-ehci-1 soc:Sstar-ehci-1: EHCI Host Controller
Sstar-ehci-1 soc:Sstar-ehci-1: new USB bus registered, assigned bus number 1
Sstar-ehci-1 soc:Sstar-ehci-1: irq 69, io mem 0xfd284800
usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
usb usb1: Product: EHCI Host Controller
usb usb1: Manufacturer: Linux 4.9.84 ehci_hcd
usb usb1: SerialNumber: mstar
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 1 port detected
i2c /dev entries driver
1f221000.uart0: ttyS0 at MMIO 0x0 (irq = 45, base_baud = 10800000) is a unknown
1f221200.uart1: ttyS1 at MMIO 0x0 (irq = 46, base_baud = 10800000) is a unknown
1f220400.uart2: ttyS2 at MMIO 0x0 (irq = 48, base_baud = 10800000) is a unknown
1f006a00.pm_uart: ttyS3 at MMIO 0x0 (irq = 49, base_baud = 6750000) is a unknown
[MS_PM_INTC] hw:9 -> v:72
[MS_PM_INTC] hw:10 -> v:73
>> [sdmmc] ms_sdmmc_probe
>> [sdmmc_0] Probe Platform Devices
>> [sdmmc_1] Probe Platform Devices
MSYS: DMEM request: [emac0_buff]:0x00000812
MSYS: DMEM request: [emac0_buff]:0x00000812 success, CPU phy:@0x25E4B000, virt:@0xC5E4B000
libphy: mdio: probed
mdio_bus mdio-bus@emac0: /soc/emac0/mdio-bus/ethernet-phy@0 has invalid PHY address
mdio_bus mdio-bus@emac0: scan phy ethernet-phy at address 0
mdio_bus mdio-bus@emac0: scan phy ethernet-phy at address 1
mdio_bus mdio-bus@emac0: scan phy ethernet-phy at address 2
mdio_bus mdio-bus@emac0: scan phy ethernet-phy at address 3
mdio_bus mdio-bus@emac0: scan phy ethernet-phy at address 4
mdio_bus mdio-bus@emac0: scan phy ethernet-phy at address 5
mdio_bus mdio-bus@emac0: scan phy ethernet-phy at address 6
mdio_bus mdio-bus@emac0: scan phy ethernet-phy at address 7
mdio_bus mdio-bus@emac0: scan phy ethernet-phy at address 8
mdio_bus mdio-bus@emac0: scan phy ethernet-phy at address 9
mdio_bus mdio-bus@emac0: scan phy ethernet-phy at address 10
mdio_bus mdio-bus@emac0: scan phy ethernet-phy at address 11
mdio_bus mdio-bus@emac0: scan phy ethernet-phy at address 12
mdio_bus mdio-bus@emac0: scan phy ethernet-phy at address 13
mdio_bus mdio-bus@emac0: scan phy ethernet-phy at address 14
mdio_bus mdio-bus@emac0: scan phy ethernet-phy at address 15
mdio_bus mdio-bus@emac0: scan phy ethernet-phy at address 16
mdio_bus mdio-bus@emac0: scan phy ethernet-phy at address 17
mdio_bus mdio-bus@emac0: scan phy ethernet-phy at address 18
mdio_bus mdio-bus@emac0: scan phy ethernet-phy at address 19
mdio_bus mdio-bus@emac0: scan phy ethernet-phy at address 20
mdio_bus mdio-bus@emac0: scan phy ethernet-phy at address 21
mdio_bus mdio-bus@emac0: scan phy ethernet-phy at address 22
mdio_bus mdio-bus@emac0: scan phy ethernet-phy at address 23
mdio_bus mdio-bus@emac0: scan phy ethernet-phy at address 24
mdio_bus mdio-bus@emac0: scan phy ethernet-phy at address 25
mdio_bus mdio-bus@emac0: scan phy ethernet-phy at address 26
mdio_bus mdio-bus@emac0: scan phy ethernet-phy at address 27
mdio_bus mdio-bus@emac0: scan phy ethernet-phy at address 28
==20180309==> hub_port_init 1 #0
Plug in USB Port1
mdio_bus mdio-bus@emac0: scan phy ethernet-phy at address 29
mdio_bus mdio-bus@emac0: scan phy ethernet-phy at address 30
mdio_bus mdio-bus@emac0: scan phy ethernet-phy at address 31
[emac_phy_connect][3349] connected mac emac0 to PHY at mdio-bus@emac0:00 [uid=11112222, driver=SStar 10/100 Ethernet Phy]
ms_rtcpwc 1f006800.rtcpwc: rtc core: registered 1f006800.rtcpwc as rtc0
MSYS: DMEM request: [BDMA_FSP_WBUFF]:0x00010040
MSYS: DMEM request: [BDMA_FSP_WBUFF]:0x00010040 success, CPU phy:@0x25E50000, virt:@0xC5E50000
[Ser flash] phys=0x25e50000, virt=0xc5e50000, bus=0x05e50000 len:0x10040
[FSP] Flash is detected (0x0709, 0xEF, 0x40, 0x18) ver1.1
[FSP] 1-1-1 FAST_READ MODE
mtd .name = NOR_FLASH, .size = 0x01000000 (16MiB).erasesize = 0x00010000 .numeraseregions = 0
MXP_PARTS!!
MXP found at mxp_offset[2]=0x0000F000, size=0x1000
5 cmdlinepart partitions found on MTD device NOR_FLASH
Creating 5 MTD partitions on "NOR_FLASH":
0x000000000000-0x000000040000 : "boot"
0x000000040000-0x000000050000 : "env"
0x000000050000-0x000000250000 : "kernel"
0x000000250000-0x000000a50000 : "rootfs"
0x000000a50000-0x000001000000 : "rootfs_data"
MSYS: DMEM request: [AESDMA_ENG]:0x00001000
MSYS: DMEM request: [AESDMA_ENG]:0x00001000 success, CPU phy:@0x25E4C000, virt:@0xC5E4C000
MSYS: DMEM request: [AESDMA_ENG1]:0x00001000
MSYS: DMEM request: [AESDMA_ENG1]:0x00001000 success, CPU phy:@0x25E4D000, virt:@0xC5E4D000
[ms_cpufreq_init] Current clk=796917760
usb 1-1: new high-speed USB device number 2 using Sstar-ehci-1
[i6e][pwm] use ms_pwm->group_data
[NOTICE]pwm-isr(62) success. If not i6e or i6b0, pls confirm it on .dtsi
[MSPI] mspi 0 use dma mode
[MSPI] mspi 1 use dma mode
mstar notify driver install successfully
NET: Registered protocol family 17
[mstar_pm_init] resume_pbase=0x20010FB5, suspend_imi_vbase=0xD0057000
ThumbEE CPU extension supported.
Registering SWP/SWPB emulation handler
Please set rtc timer (hwclock -w)
ms_rtcpwc 1f006800.rtcpwc: setting system clock to 1970-01-01 00:00:01 UTC (1)
OF: fdt:not creating '/sys/firVFS: Mounted root (squashfs filesystem) readonly on device 31:3.
devtmpfs: mounted
This architecture does not have kernel memory protection.
usb 1-1: New USB device found, idVendor=0bda, idProduct=881a
usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
usb 1-1: Product: 802.11n NIC
usb 1-1: Manufacturer: Realtek
usb 1-1: SerialNumber: 123456
[emac_phy_link_adjust] EMAC Link Down
Seeding 2048 bits without creditrandom: seedrng: uninitialized urandom read (256 bytes read)
ing
Saving 2048 bits of non-creditable seed for next boot
Starting syslogd: OK
Starting klogd: OK
Running sysctl: OK
Sat Nov 30 23:49:39 GMT 2024
Loading kernel modules...
Starting mdev...
Starting network...
udhcpc: started, v1.36.1
udhcpc: broadcasting discover
udhcpc: broadcasting discover
udhcpc: broadcasting discover
udhcpc: broadcasting discover
udhcpc: broadcasting discover
udhcpc: no lease, forking to background
Starting ntpd: OK
Starting dropbear: OK
Starting crond: OK
Loading vendor modules...
OpenIPC: Sensor assigned - imx335
Starting majestic: OK
Starting wifibroadcast service...
Loading modules and wireless driver...
Detected: 88XXau
Loading MAVLink telemetry service...Welcome to OpenIPC
openipc-ssc338q login: This system doesn't provide enough entropy to quickly generate high-quality random numbers.
Installing the rng-utils/rng-tools, jitterentropy or haveged packages may help.
On virtualized Linux environments, also consider using virtio-rng.
The service will not start until enough entropy has been collected.
Using data frames
This system doesn't provide enough entropy to quickly generate high-quality random numbers.
Installing the rng-utils/rng-tools, jitterentropy or haveged packages may help.
On virtualized Linux environments, also consider using virtio-rng.
The service will not start until enough entropy has been collected.
Listen on 14550 for wlan0
Listen on 36991 for management commands
This system doesn't provide enough entropy to quickly generate high-quality random numbers.
Installing the rng-utils/rng-tools, jitterentropy or haveged packages may help.
On virtualized Linux environments, also consider using virtio-rng.
The service will not start until enough entropy has been collected.
Using data frames
This system doesn't provide enough entropy to quickly generate high-quality random numbers.
Installing the rng-utils/rng-tools, jitterentropy or haveged packages may help.
On virtualized Linux environments, also consider using virtio-rng.
The service will not start until enough entropy has been collected.
Listen on 5600 for wlan0
This system doesn't provide enough entropy to quickly generate high-quality random numbers.
Installing the rng-utils/rng-tools, jitterentropy or haveged packages may help.
On virtualized Linux environments, also consider using virtio-rng.
The service will not start until enough entropy has been collected.
Listen on 5801 for wlan0
Listen on 8000 for management commands
Listen on 39786 for management commands
3.2 登录版本 - linux
- account: root
- password: 12345
openipc-ssc338q login: root
Password:.d88888b. 8888888 8888888b. .d8888b.d88P" "Y88b 888 888 Y88b d88P Y88b888 888 888 888 888 888 888888 888 88888b. .d88b. 88888b. 888 888 d88P 888888 888 888 "88b d8P Y8b 888 "88b 888 8888888P" 888888 888 888 888 88888888 888 888 888 888 888 888Y88b. .d88P 888 d88P Y8b. 888 888 888 888 Y88b d88P"Y88888P" 88888P" "Y8888 888 888 8888888 888 "Y8888P"888888888 master+861a97c, 2024-11-30Please help the OpenIPC Project to cover the cost of development andlong-term maintenance of what we believe is going to become a stable,flexible Open IP Network Camera Framework for users worldwide.Your contributions could help us to advance the development and keepyou updated on improvements and new features more regularly.Please visit https://openipc.org/sponsor/ to learn more. Thank you.
3.3 获取有线IP
- eth0: 192.168.78.100
root@openipc-ssc338q:~# ifconfig
eth0 Link encap:Ethernet HWaddr 00:00:23:34:45:66inet addr:192.168.78.100 Bcast:192.168.78.255 Mask:255.255.255.0UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1RX packets:11 errors:0 dropped:0 overruns:0 frame:0TX packets:19 errors:0 dropped:0 overruns:0 carrier:0collisions:0 txqueuelen:1000RX bytes:2563 (2.5 KiB) TX bytes:2618 (2.5 KiB)Interrupt:60lo Link encap:Local Loopbackinet addr:127.0.0.1 Mask:255.0.0.0UP LOOPBACK RUNNING MTU:65536 Metric:1RX packets:137366 errors:0 dropped:0 overruns:0 frame:0TX packets:137366 errors:0 dropped:0 overruns:0 carrier:0collisions:0 txqueuelen:1RX bytes:152371625 (145.3 MiB) TX bytes:152371625 (145.3 MiB)wfb-tun Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00inet addr:10.5.0.10 P-t-P:10.5.0.10 Mask:255.255.255.0UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1443 Metric:1RX packets:0 errors:0 dropped:0 overruns:0 frame:0TX packets:0 errors:0 dropped:0 overruns:0 carrier:0collisions:0 txqueuelen:500RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)wlan0 Link encap:UNSPEC HWaddr 1C-A7-70-E8-C6-07-00-00-00-00-00-00-00-00-00-00UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1RX packets:243 errors:0 dropped:1 overruns:0 frame:0TX packets:206893 errors:0 dropped:0 overruns:0 carrier:0collisions:0 txqueuelen:1000RX bytes:0 (0.0 B) TX bytes:241732251 (230.5 MiB)
4. ssh - linux
ssh
环境就是OpenIPC fpv系统运行环境,应用软件都跑在这个环境下,可以升级软件或者固件。
- account: root
- password: 12345
daniel@daniel-nvidia:~$ ssh root@192.168.78.100
The authenticity of host '192.168.78.100 (192.168.78.100)' can't be established.
ECDSA key fingerprint is SHA256:vUfDeNkcP7fS6rXqtTV2cjTt83dXB/kCbKslraLbUGA.
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added '192.168.78.100' (ECDSA) to the list of known hosts.
root@192.168.78.100's password:.d88888b. 8888888 8888888b. .d8888b.d88P" "Y88b 888 888 Y88b d88P Y88b888 888 888 888 888 888 888888 888 88888b. .d88b. 88888b. 888 888 d88P 888888 888 888 "88b d8P Y8b 888 "88b 888 8888888P" 888888 888 888 888 88888888 888 888 888 888 888 888Y88b. .d88P 888 d88P Y8b. 888 888 888 888 Y88b d88P"Y88888P" 88888P" "Y8888 888 888 8888888 888 "Y8888P"888888888 master+861a97c, 2024-11-30Please help the OpenIPC Project to cover the cost of development andlong-term maintenance of what we believe is going to become a stable,flexible Open IP Network Camera Framework for users worldwide.Your contributions could help us to advance the development and keepyou updated on improvements and new features more regularly.Please visit https://openipc.org/sponsor/ to learn more. Thank you.
5. PixelPilot出图
OpenIPC主要基于wfb-ng
软件构建底层加密通信链路,基于该链路进行数据(视频、电传等)传输。
地面端软硬件有很多搭配方式,大体上有以下几种:
- Android(PixelPilot): 手机/平板/电视盒等
- Windows PC: fpv4win、openipc-configurator
- Hi3536
- Radax 3W/3E
- Jetson Orin(jetson-fpv)
从购买天空端产品的角度,拿到产品首先要确保快速出图。
- PixelPilot.apk
或者找厂家要手机端最新的软件,因为这个是最为便捷的方式。
默认配置+厂家配置:
- Channel: 60
- 厂家
gs.key
//请向厂家获取
自拍照
6. 总结
总的来说,第一次上电、出图并不复杂,但是一定要切记!!!重要的事情说三遍!!!
- 注意数字图传的正负极!!!
- 注意数字图传的正负极!!!
- 注意数字图传的正负极!!!
信号线反了,可以重新调,但是正负极接错了,可是要烧的!!!
不出图时,需要注意的一个关键点:供电电压
- 图传功率比较大,从设计规格上是3S ~ 6S
- 换言之可以直接接在动力电池上
- 有些PDB板/飞控板降压出来的电源可能带不起来
7. 参考资料
【1】Open FPV VTX开源之硬件规格及组成