From 8e43a229063ffa8c909a5c582c9b24b44fd7c113 Mon Sep 17 00:00:00 2001 From: Mike Carr Date: Sat, 14 Sep 2024 08:18:51 -0700 Subject: [PATCH 01/14] Add a general page with definitions and file locations --- en/fpv-general.md | 115 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 115 insertions(+) create mode 100644 en/fpv-general.md diff --git a/en/fpv-general.md b/en/fpv-general.md new file mode 100644 index 0000000..faa39f4 --- /dev/null +++ b/en/fpv-general.md @@ -0,0 +1,115 @@ +# Acronyms and Definitions + + +### Channel + +A Wi-Fi channel is a specific range of frequencies used for communication between wireless devices. Wi-Fi networks typically divide these frequencies into 14 channels in the 2.4 GHz band, 34 channels in the 5 GHz band, and up to 59 channels in the 6 GHz band. + + +### FEC_K and FEC_N + +FEC_K and FEC_N are parameters used in Forward Error Correction (FEC) to define the structure and efficiency of error correction codes. + +#### FEC_K + +K refers to the number of information (or data) bits in a block before error correction encoding is applied. +This is the actual data that needs to be transmitted without any redundancy added for error correction. + +#### FEC_N + +N refers to the total number of bits after error correction encoding has been applied. + +This includes both the original data bits (K) and the redundant bits that are added for error detection and correction. +Relationship Between FEC_K and FEC_N + +The difference between N and K represents the redundancy added by the error correction code. In other words, the redundant bits are used to detect and correct errors in the transmitted data. + +```mathematica +N = K + Number of Redundant Bits +``` + +Example + +If FEC_K = 1000 and FEC_N = 1200, this means 200 redundant bits were added to the original 1000 data bits, creating a total of 1200 transmitted bits. + +Code Rate + +The ratio of information bits (K) to the total bits (N) is called the code rate: + +```mathematica +Code Rate = K / N +``` + +For example, if K = 1000 and N = 1200, the code rate would be: + +```yaml + +Code Rate = 1000 / 1200 = 0.833 +``` +This means that 83.3% of the transmitted bits are actual data, and 16.7% are used for error correction. + + +#### Usage in Communication Systems + +FEC_K and FEC_N are commonly used to describe how data is handled in wireless communication standards such as Wi-Fi, 5G, satellite communication, and broadcast systems. + +The values of K and N determine how much error correction is added to the data, impacting both the transmission reliability and bandwidth efficiency. + +Frequency - Wi-Fi transmits data between your device and a router using radio waves over specific frequencies. Depending on the amount of data being transferred, it can use one of two frequencies: 2.4 gigahertz or 5 gigahertz. + +LDPC - LDPC stands for Low-Density Parity-Check code, which is an advanced error-correcting code used in digital communication systems to improve the reliability of data transmission over noisy channels. LDPC codes are designed to detect and correct errors that occur during data transmission, allowing for more efficient and robust communication. + +MCS Index - The Modulation Coding Scheme (MCS) index is a standard industry metric that reflects various factors in a Wi-Fi connection between a client device and a wireless access point, such as data rate, channel width, and the number of antennas or spatial streams in the device. + +STBC - STBC stands for Space-Time Block Coding, which is a technique used in wireless communication systems to improve signal reliability and data transmission performance, particularly in environments with interference or signal fading. + + + +## Filesystem + +### Drone + + +| File Path | Description | +|----------------------|------------------------------------------------------| +| Config | +| `/etc/wfb.conf` | Sets up Settings | +| `/etc/drone.key` | Secret key that is exchanged with Groundstation | +| `/etc/datalink.conf` | | +| `/etc/majestic.yaml` | Majestic Settings | +| `/etc/mavlink` | Mavlink Settings | +| `/etc/openipc_banner`| | +| `/etc/openipc_donors`| | +| `/etc/telemetry.conf`| | +| Startup Files | +| `/etc/init.d/S95majestic` | | +| `/etc/init.d/S98datalink` || +| `/etc/init.d/S98datalink` || +| `/etc/init.d/S98datalink` || +| `/etc/init.d/S98datalink` || +| Apps | +| `/usr/bin/msposd` || +| `/usr/bin/font_hd.png` | font file for msposd | +| `/usr/bin/font.png` | font file for msposd | +| `/usr/bin/telemetry` | | +| `/usr/bin/majestic` | | + + +### Ground Station + +### Radxa +| File Path | Description | +|----------------------|------------------------------------------------------| +| Config | +| `/etc/gs.key` | Shared key| +| `/etc/wifibroadcast.cfg` | Define Connection Parameters| +| Startup | +| `/etc/systemd/system/openipc.service` | Main process Start at boot +| Apps | +| `/home/radxa/wfb_keygen` | Generates shared key| +| `/home/radxa/resizefs.sh` | | +| `/home/radxa/scripts/screen-mode` | Setup resolution | +| `/home/radxa/scripts/stream.sh` | Starts main process | +| `/home/radxa/scripts/wifi-connect.sh` | Script to setup local wifi connection to home router| +| Media | +| `/home/radxa/Videos/` | Location where flight videos are stored| \ No newline at end of file From 1ab63fb13c1ffac24d0e896ea935ac824c35333a Mon Sep 17 00:00:00 2001 From: Mike Carr Date: Sat, 14 Sep 2024 08:32:55 -0700 Subject: [PATCH 02/14] latest changes --- en/fpv-general.md | 30 ++++++++++++++++-------------- 1 file changed, 16 insertions(+), 14 deletions(-) diff --git a/en/fpv-general.md b/en/fpv-general.md index faa39f4..1ec7127 100644 --- a/en/fpv-general.md +++ b/en/fpv-general.md @@ -5,6 +5,9 @@ A Wi-Fi channel is a specific range of frequencies used for communication between wireless devices. Wi-Fi networks typically divide these frequencies into 14 channels in the 2.4 GHz band, 34 channels in the 5 GHz band, and up to 59 channels in the 6 GHz band. +### Datalink + +Datalink is oncerned with managing data communication links and ensuring reliable data transfer between the device and external systems. ### FEC_K and FEC_N @@ -59,11 +62,13 @@ Frequency - Wi-Fi transmits data between your device and a router using radio wa LDPC - LDPC stands for Low-Density Parity-Check code, which is an advanced error-correcting code used in digital communication systems to improve the reliability of data transmission over noisy channels. LDPC codes are designed to detect and correct errors that occur during data transmission, allowing for more efficient and robust communication. +Majestic - managing and configuring various aspects of the system. Specifically, it is a command-line tool associated with Majestic, which is a component of OpenIPC + MCS Index - The Modulation Coding Scheme (MCS) index is a standard industry metric that reflects various factors in a Wi-Fi connection between a client device and a wireless access point, such as data rate, channel width, and the number of antennas or spatial streams in the device. STBC - STBC stands for Space-Time Block Coding, which is a technique used in wireless communication systems to improve signal reliability and data transmission performance, particularly in environments with interference or signal fading. - +WFB - Wireless Framebuffer (WFB) is a component that enables remote display and control of a device’s graphical interface over a wireless network. ## Filesystem @@ -73,26 +78,23 @@ STBC - STBC stands for Space-Time Block Coding, which is a technique used in wir | File Path | Description | |----------------------|------------------------------------------------------| | Config | -| `/etc/wfb.conf` | Sets up Settings | -| `/etc/drone.key` | Secret key that is exchanged with Groundstation | -| `/etc/datalink.conf` | | +| `/etc/wfb.conf` | Configure settings for the Wireless Framebuffer (WFB). WFB is a component that allows remote display and control of the device's graphical interface over a wireless network. | +| `/etc/drone.key` | Used to store a secret key that is exchanged with a Groundstation. This key plays a crucial role in securing communications between the drone and the Groundstation. | +| `/etc/datalink.conf` | Used to configure settings related to data link communication. This file plays a role in defining how data is managed and transmitted between various components within the system.| | `/etc/majestic.yaml` | Majestic Settings | | `/etc/mavlink` | Mavlink Settings | | `/etc/openipc_banner`| | | `/etc/openipc_donors`| | -| `/etc/telemetry.conf`| | +| `/etc/telemetry.conf`| Used to configure settings related to telemetry. Telemetry involves the collection and transmission of data from the device to an external system for monitoring and analysis.| | Startup Files | -| `/etc/init.d/S95majestic` | | -| `/etc/init.d/S98datalink` || -| `/etc/init.d/S98datalink` || -| `/etc/init.d/S98datalink` || -| `/etc/init.d/S98datalink` || +| `/etc/init.d/S95majestic` | Startup script used to manage the initialization and execution of the Majestic service during system boot. | +| `/etc/init.d/S98datalink` | Startup script used to manage the initialization of the Datalink service during system boot.| | Apps | -| `/usr/bin/msposd` || +| `/usr/bin/msposd` | MSPOSD binary| | `/usr/bin/font_hd.png` | font file for msposd | | `/usr/bin/font.png` | font file for msposd | -| `/usr/bin/telemetry` | | -| `/usr/bin/majestic` | | +| `/usr/bin/telemetry` | Telemetry script | +| `/usr/bin/majestic` | Majestic binary | ### Ground Station @@ -107,7 +109,7 @@ STBC - STBC stands for Space-Time Block Coding, which is a technique used in wir | `/etc/systemd/system/openipc.service` | Main process Start at boot | Apps | | `/home/radxa/wfb_keygen` | Generates shared key| -| `/home/radxa/resizefs.sh` | | +| `/home/radxa/resizefs.sh` | Resize root filesystem | | `/home/radxa/scripts/screen-mode` | Setup resolution | | `/home/radxa/scripts/stream.sh` | Starts main process | | `/home/radxa/scripts/wifi-connect.sh` | Script to setup local wifi connection to home router| From c163e54aebb246a56fecfeb048dc8008c4f04919 Mon Sep 17 00:00:00 2001 From: Mike Carr Date: Sat, 14 Sep 2024 08:43:16 -0700 Subject: [PATCH 03/14] latest changes --- en/fpv-general.md | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/en/fpv-general.md b/en/fpv-general.md index 1ec7127..6a0f3e9 100644 --- a/en/fpv-general.md +++ b/en/fpv-general.md @@ -1,13 +1,11 @@ # Acronyms and Definitions -### Channel +Channel - A Wi-Fi channel is a specific range of frequencies used for communication between wireless devices. Wi-Fi networks typically divide these frequencies into 14 channels in the 2.4 GHz band, 34 channels in the 5 GHz band, and up to 59 channels in the 6 GHz band. -A Wi-Fi channel is a specific range of frequencies used for communication between wireless devices. Wi-Fi networks typically divide these frequencies into 14 channels in the 2.4 GHz band, 34 channels in the 5 GHz band, and up to 59 channels in the 6 GHz band. +[Configurator](https://github.com/OpenIPC/configurator) OpenIPC controller for setting up FPV and URLLC devices -### Datalink - -Datalink is oncerned with managing data communication links and ensuring reliable data transfer between the device and external systems. +Datalink - Datalink is oncerned with managing data communication links and ensuring reliable data transfer between the device and external systems. ### FEC_K and FEC_N @@ -58,14 +56,21 @@ FEC_K and FEC_N are commonly used to describe how data is handled in wireless co The values of K and N determine how much error correction is added to the data, impacting both the transmission reliability and bandwidth efficiency. + Frequency - Wi-Fi transmits data between your device and a router using radio waves over specific frequencies. Depending on the amount of data being transferred, it can use one of two frequencies: 2.4 gigahertz or 5 gigahertz. LDPC - LDPC stands for Low-Density Parity-Check code, which is an advanced error-correcting code used in digital communication systems to improve the reliability of data transmission over noisy channels. LDPC codes are designed to detect and correct errors that occur during data transmission, allowing for more efficient and robust communication. -Majestic - managing and configuring various aspects of the system. Specifically, it is a command-line tool associated with Majestic, which is a component of OpenIPC +[Majestic](https://github.com/OpenIPC/majestic-webui) - Provides web interface for OpenIPC Firmware, and is available on port 80 of your camera. It used for managing and configuring various aspects of the system. It is also a command-line tool. MCS Index - The Modulation Coding Scheme (MCS) index is a standard industry metric that reflects various factors in a Wi-Fi connection between a client device and a wireless access point, such as data rate, channel width, and the number of antennas or spatial streams in the device. +[MSPOSD](https://github.com/OpenIPC/msposd) - OpenIPC implementation of MSP Displayport OSD for INAV/Betaflight/ArduPilot + +[PixelPilot](https://github.com/OpenIPC/PixelPilot) - PixelPilot is an Android app packaging multiple pieces together to decode an H264/H265 video feed broadcast by wfb-ng over the air. + +[PixelPilot_rk](https://github.com/OpenIPC/PixelPilot_rk) - Application that decodes an RTP Video Stream and displays it on screen, for Rockchip devices (aka Radxa). + STBC - STBC stands for Space-Time Block Coding, which is a technique used in wireless communication systems to improve signal reliability and data transmission performance, particularly in environments with interference or signal fading. WFB - Wireless Framebuffer (WFB) is a component that enables remote display and control of a device’s graphical interface over a wireless network. From acbc83c4874395962ce4f39683a53c4405061503 Mon Sep 17 00:00:00 2001 From: Mike Carr Date: Sat, 14 Sep 2024 08:53:04 -0700 Subject: [PATCH 04/14] latest changes --- en/fpv-general.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/en/fpv-general.md b/en/fpv-general.md index 6a0f3e9..f35dd48 100644 --- a/en/fpv-general.md +++ b/en/fpv-general.md @@ -1,5 +1,6 @@ # Acronyms and Definitions +BEC - BEC stands for Battery Eliminator Circuit. It is used to provide a stable voltage supply to components in a device, often in place of a battery. Channel - A Wi-Fi channel is a specific range of frequencies used for communication between wireless devices. Wi-Fi networks typically divide these frequencies into 14 channels in the 2.4 GHz band, 34 channels in the 5 GHz band, and up to 59 channels in the 6 GHz band. @@ -56,6 +57,7 @@ FEC_K and FEC_N are commonly used to describe how data is handled in wireless co The values of K and N determine how much error correction is added to the data, impacting both the transmission reliability and bandwidth efficiency. +FPV - FPV stands for First-Person View, a technology that allows users to experience a live video feed from a camera mounted on a drone or other remote-controlled device as if they were in the pilot's seat. FPV provides a real-time, immersive perspective, enhancing control and situational awareness during flight or remote operation. Frequency - Wi-Fi transmits data between your device and a router using radio waves over specific frequencies. Depending on the amount of data being transferred, it can use one of two frequencies: 2.4 gigahertz or 5 gigahertz. @@ -95,6 +97,7 @@ WFB - Wireless Framebuffer (WFB) is a component that enables remote display and | `/etc/init.d/S95majestic` | Startup script used to manage the initialization and execution of the Majestic service during system boot. | | `/etc/init.d/S98datalink` | Startup script used to manage the initialization of the Datalink service during system boot.| | Apps | +| `/usr/bin/wfb-cli` | used to interact with or configure the Wireless Framebuffer (WFB) service specifically in the context of a ground station. i.e `wfb-cli gs` | | `/usr/bin/msposd` | MSPOSD binary| | `/usr/bin/font_hd.png` | font file for msposd | | `/usr/bin/font.png` | font file for msposd | From e8df36f647587c32df11b04e7431802ebcb03ea1 Mon Sep 17 00:00:00 2001 From: Mike Carr Date: Sat, 14 Sep 2024 08:55:22 -0700 Subject: [PATCH 05/14] formatting changes --- en/fpv-general.md | 84 +++++++++++++++++++++++------------------------ 1 file changed, 42 insertions(+), 42 deletions(-) diff --git a/en/fpv-general.md b/en/fpv-general.md index f35dd48..f632981 100644 --- a/en/fpv-general.md +++ b/en/fpv-general.md @@ -1,81 +1,81 @@ # Acronyms and Definitions -BEC - BEC stands for Battery Eliminator Circuit. It is used to provide a stable voltage supply to components in a device, often in place of a battery. +* BEC - BEC stands for Battery Eliminator Circuit. It is used to provide a stable voltage supply to components in a device, often in place of a battery. -Channel - A Wi-Fi channel is a specific range of frequencies used for communication between wireless devices. Wi-Fi networks typically divide these frequencies into 14 channels in the 2.4 GHz band, 34 channels in the 5 GHz band, and up to 59 channels in the 6 GHz band. +* Channel - A Wi-Fi channel is a specific range of frequencies used for communication between wireless devices. Wi-Fi networks typically divide these frequencies into 14 channels in the 2.4 GHz band, 34 channels in the 5 GHz band, and up to 59 channels in the 6 GHz band. -[Configurator](https://github.com/OpenIPC/configurator) OpenIPC controller for setting up FPV and URLLC devices +* [Configurator](https://github.com/OpenIPC/configurator) OpenIPC controller for setting up FPV and URLLC devices -Datalink - Datalink is oncerned with managing data communication links and ensuring reliable data transfer between the device and external systems. +* Datalink - Datalink is oncerned with managing data communication links and ensuring reliable data transfer between the device and external systems. -### FEC_K and FEC_N +* FEC_K and FEC_N -FEC_K and FEC_N are parameters used in Forward Error Correction (FEC) to define the structure and efficiency of error correction codes. + FEC_K and FEC_N are parameters used in Forward Error Correction (FEC) to define the structure and efficiency of error correction codes. -#### FEC_K + #### FEC_K -K refers to the number of information (or data) bits in a block before error correction encoding is applied. -This is the actual data that needs to be transmitted without any redundancy added for error correction. + K refers to the number of information (or data) bits in a block before error correction encoding is applied. + This is the actual data that needs to be transmitted without any redundancy added for error correction. -#### FEC_N + #### FEC_N -N refers to the total number of bits after error correction encoding has been applied. + N refers to the total number of bits after error correction encoding has been applied. -This includes both the original data bits (K) and the redundant bits that are added for error detection and correction. -Relationship Between FEC_K and FEC_N + This includes both the original data bits (K) and the redundant bits that are added for error detection and correction. + Relationship Between FEC_K and FEC_N -The difference between N and K represents the redundancy added by the error correction code. In other words, the redundant bits are used to detect and correct errors in the transmitted data. + The difference between N and K represents the redundancy added by the error correction code. In other words, the redundant bits are used to detect and correct errors in the transmitted data. -```mathematica -N = K + Number of Redundant Bits -``` + ```mathematica + N = K + Number of Redundant Bits + ``` -Example + Example -If FEC_K = 1000 and FEC_N = 1200, this means 200 redundant bits were added to the original 1000 data bits, creating a total of 1200 transmitted bits. + If FEC_K = 1000 and FEC_N = 1200, this means 200 redundant bits were added to the original 1000 data bits, creating a total of 1200 transmitted bits. -Code Rate + Code Rate -The ratio of information bits (K) to the total bits (N) is called the code rate: + The ratio of information bits (K) to the total bits (N) is called the code rate: -```mathematica -Code Rate = K / N -``` + ```mathematica + Code Rate = K / N + ``` -For example, if K = 1000 and N = 1200, the code rate would be: + For example, if K = 1000 and N = 1200, the code rate would be: -```yaml + ```yaml -Code Rate = 1000 / 1200 = 0.833 -``` -This means that 83.3% of the transmitted bits are actual data, and 16.7% are used for error correction. + Code Rate = 1000 / 1200 = 0.833 + ``` + This means that 83.3% of the transmitted bits are actual data, and 16.7% are used for error correction. -#### Usage in Communication Systems + #### Usage in Communication Systems -FEC_K and FEC_N are commonly used to describe how data is handled in wireless communication standards such as Wi-Fi, 5G, satellite communication, and broadcast systems. + FEC_K and FEC_N are commonly used to describe how data is handled in wireless communication standards such as Wi-Fi, 5G, satellite communication, and broadcast systems. -The values of K and N determine how much error correction is added to the data, impacting both the transmission reliability and bandwidth efficiency. + The values of K and N determine how much error correction is added to the data, impacting both the transmission reliability and bandwidth efficiency. -FPV - FPV stands for First-Person View, a technology that allows users to experience a live video feed from a camera mounted on a drone or other remote-controlled device as if they were in the pilot's seat. FPV provides a real-time, immersive perspective, enhancing control and situational awareness during flight or remote operation. +* FPV - FPV stands for First-Person View, a technology that allows users to experience a live video feed from a camera mounted on a drone or other remote-controlled device as if they were in the pilot's seat. FPV provides a real-time, immersive perspective, enhancing control and situational awareness during flight or remote operation. -Frequency - Wi-Fi transmits data between your device and a router using radio waves over specific frequencies. Depending on the amount of data being transferred, it can use one of two frequencies: 2.4 gigahertz or 5 gigahertz. +* Frequency - Wi-Fi transmits data between your device and a router using radio waves over specific frequencies. Depending on the amount of data being transferred, it can use one of two frequencies: 2.4 gigahertz or 5 gigahertz. -LDPC - LDPC stands for Low-Density Parity-Check code, which is an advanced error-correcting code used in digital communication systems to improve the reliability of data transmission over noisy channels. LDPC codes are designed to detect and correct errors that occur during data transmission, allowing for more efficient and robust communication. +* LDPC - LDPC stands for Low-Density Parity-Check code, which is an advanced error-correcting code used in digital communication systems to improve the reliability of data transmission over noisy channels. LDPC codes are designed to detect and correct errors that occur during data transmission, allowing for more efficient and robust communication. -[Majestic](https://github.com/OpenIPC/majestic-webui) - Provides web interface for OpenIPC Firmware, and is available on port 80 of your camera. It used for managing and configuring various aspects of the system. It is also a command-line tool. +* [Majestic](https://github.com/OpenIPC/majestic-webui) - Provides web interface for OpenIPC Firmware, and is available on port 80 of your camera. It used for managing and configuring various aspects of the system. It is also a command-line tool. -MCS Index - The Modulation Coding Scheme (MCS) index is a standard industry metric that reflects various factors in a Wi-Fi connection between a client device and a wireless access point, such as data rate, channel width, and the number of antennas or spatial streams in the device. +* MCS Index - The Modulation Coding Scheme (MCS) index is a standard industry metric that reflects various factors in a Wi-Fi connection between a client device and a wireless access point, such as data rate, channel width, and the number of antennas or spatial streams in the device. -[MSPOSD](https://github.com/OpenIPC/msposd) - OpenIPC implementation of MSP Displayport OSD for INAV/Betaflight/ArduPilot +* [MSPOSD](https://github.com/OpenIPC/msposd) - OpenIPC implementation of MSP Displayport OSD for INAV/Betaflight/ArduPilot -[PixelPilot](https://github.com/OpenIPC/PixelPilot) - PixelPilot is an Android app packaging multiple pieces together to decode an H264/H265 video feed broadcast by wfb-ng over the air. +* [PixelPilot](https://github.com/OpenIPC/PixelPilot) - PixelPilot is an Android app packaging multiple pieces together to decode an H264/H265 video feed broadcast by wfb-ng over the air. -[PixelPilot_rk](https://github.com/OpenIPC/PixelPilot_rk) - Application that decodes an RTP Video Stream and displays it on screen, for Rockchip devices (aka Radxa). +* [PixelPilot_rk](https://github.com/OpenIPC/PixelPilot_rk) - Application that decodes an RTP Video Stream and displays it on screen, for Rockchip devices (aka Radxa). -STBC - STBC stands for Space-Time Block Coding, which is a technique used in wireless communication systems to improve signal reliability and data transmission performance, particularly in environments with interference or signal fading. +* STBC - STBC stands for Space-Time Block Coding, which is a technique used in wireless communication systems to improve signal reliability and data transmission performance, particularly in environments with interference or signal fading. -WFB - Wireless Framebuffer (WFB) is a component that enables remote display and control of a device’s graphical interface over a wireless network. +* WFB - Wireless Framebuffer (WFB) is a component that enables remote display and control of a device’s graphical interface over a wireless network. ## Filesystem From 6ac80a3b7c7efaac5eedb2f54e667326e54594f8 Mon Sep 17 00:00:00 2001 From: Mike Carr Date: Sat, 14 Sep 2024 09:02:03 -0700 Subject: [PATCH 06/14] latest changes --- en/fpv-general.md | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/en/fpv-general.md b/en/fpv-general.md index f632981..c13c1b0 100644 --- a/en/fpv-general.md +++ b/en/fpv-general.md @@ -61,13 +61,20 @@ * Frequency - Wi-Fi transmits data between your device and a router using radio waves over specific frequencies. Depending on the amount of data being transferred, it can use one of two frequencies: 2.4 gigahertz or 5 gigahertz. +* H265/H264 - Video compression standards used to encode and decode video streams. + + * H.265 (HEVC): Provides improved compression efficiency compared to H.264, allowing for higher video quality at lower bit rates, which is ideal for 4K and high-definition video streaming. + * H.264 (AVC): A widely used video compression standard that offers good compression and video quality, commonly used for streaming, recording, and video conferencing. + * LDPC - LDPC stands for Low-Density Parity-Check code, which is an advanced error-correcting code used in digital communication systems to improve the reliability of data transmission over noisy channels. LDPC codes are designed to detect and correct errors that occur during data transmission, allowing for more efficient and robust communication. * [Majestic](https://github.com/OpenIPC/majestic-webui) - Provides web interface for OpenIPC Firmware, and is available on port 80 of your camera. It used for managing and configuring various aspects of the system. It is also a command-line tool. * MCS Index - The Modulation Coding Scheme (MCS) index is a standard industry metric that reflects various factors in a Wi-Fi connection between a client device and a wireless access point, such as data rate, channel width, and the number of antennas or spatial streams in the device. -* [MSPOSD](https://github.com/OpenIPC/msposd) - OpenIPC implementation of MSP Displayport OSD for INAV/Betaflight/ArduPilot +* [MSPOSD](https://github.com/OpenIPC/msposd) - OpenIPC implementation of MSP Displayport OSD for INAV/Betaflight/ArduPilot. + +* OpenIPC - is a firmware project focused on enhancing and customizing the functionality of IP cameras. IPC acronym means IP Camera. * [PixelPilot](https://github.com/OpenIPC/PixelPilot) - PixelPilot is an Android app packaging multiple pieces together to decode an H264/H265 video feed broadcast by wfb-ng over the air. From 97c9c3efc21180b3979d3d00c42478640c39c372 Mon Sep 17 00:00:00 2001 From: Mike Carr Date: Sat, 14 Sep 2024 09:02:44 -0700 Subject: [PATCH 07/14] formatting changes --- en/fpv-general.md | 48 +++++++++++++++++++++++------------------------ 1 file changed, 24 insertions(+), 24 deletions(-) diff --git a/en/fpv-general.md b/en/fpv-general.md index c13c1b0..0923238 100644 --- a/en/fpv-general.md +++ b/en/fpv-general.md @@ -10,45 +10,45 @@ * FEC_K and FEC_N - FEC_K and FEC_N are parameters used in Forward Error Correction (FEC) to define the structure and efficiency of error correction codes. + FEC_K and FEC_N are parameters used in Forward Error Correction (FEC) to define the structure and efficiency of error correction codes. - #### FEC_K + #### FEC_K - K refers to the number of information (or data) bits in a block before error correction encoding is applied. - This is the actual data that needs to be transmitted without any redundancy added for error correction. + K refers to the number of information (or data) bits in a block before error correction encoding is applied. + This is the actual data that needs to be transmitted without any redundancy added for error correction. - #### FEC_N + #### FEC_N - N refers to the total number of bits after error correction encoding has been applied. + N refers to the total number of bits after error correction encoding has been applied. - This includes both the original data bits (K) and the redundant bits that are added for error detection and correction. - Relationship Between FEC_K and FEC_N + This includes both the original data bits (K) and the redundant bits that are added for error detection and correction. + Relationship Between FEC_K and FEC_N - The difference between N and K represents the redundancy added by the error correction code. In other words, the redundant bits are used to detect and correct errors in the transmitted data. + The difference between N and K represents the redundancy added by the error correction code. In other words, the redundant bits are used to detect and correct errors in the transmitted data. - ```mathematica - N = K + Number of Redundant Bits - ``` + ```mathematica + N = K + Number of Redundant Bits + ``` - Example + Example - If FEC_K = 1000 and FEC_N = 1200, this means 200 redundant bits were added to the original 1000 data bits, creating a total of 1200 transmitted bits. + If FEC_K = 1000 and FEC_N = 1200, this means 200 redundant bits were added to the original 1000 data bits, creating a total of 1200 transmitted bits. - Code Rate + Code Rate - The ratio of information bits (K) to the total bits (N) is called the code rate: + The ratio of information bits (K) to the total bits (N) is called the code rate: - ```mathematica - Code Rate = K / N - ``` + ```mathematica + Code Rate = K / N + ``` - For example, if K = 1000 and N = 1200, the code rate would be: + For example, if K = 1000 and N = 1200, the code rate would be: - ```yaml + ```yaml - Code Rate = 1000 / 1200 = 0.833 - ``` - This means that 83.3% of the transmitted bits are actual data, and 16.7% are used for error correction. + Code Rate = 1000 / 1200 = 0.833 + ``` + This means that 83.3% of the transmitted bits are actual data, and 16.7% are used for error correction. #### Usage in Communication Systems From a196a997032ef35246ba1544fef4cf33d07941de Mon Sep 17 00:00:00 2001 From: Mike Carr Date: Sat, 14 Sep 2024 09:08:58 -0700 Subject: [PATCH 08/14] Revert "formatting changes" This reverts commit 97c9c3efc21180b3979d3d00c42478640c39c372. --- en/fpv-general.md | 48 +++++++++++++++++++++++------------------------ 1 file changed, 24 insertions(+), 24 deletions(-) diff --git a/en/fpv-general.md b/en/fpv-general.md index 0923238..c13c1b0 100644 --- a/en/fpv-general.md +++ b/en/fpv-general.md @@ -10,45 +10,45 @@ * FEC_K and FEC_N - FEC_K and FEC_N are parameters used in Forward Error Correction (FEC) to define the structure and efficiency of error correction codes. + FEC_K and FEC_N are parameters used in Forward Error Correction (FEC) to define the structure and efficiency of error correction codes. - #### FEC_K + #### FEC_K - K refers to the number of information (or data) bits in a block before error correction encoding is applied. - This is the actual data that needs to be transmitted without any redundancy added for error correction. + K refers to the number of information (or data) bits in a block before error correction encoding is applied. + This is the actual data that needs to be transmitted without any redundancy added for error correction. - #### FEC_N + #### FEC_N - N refers to the total number of bits after error correction encoding has been applied. + N refers to the total number of bits after error correction encoding has been applied. - This includes both the original data bits (K) and the redundant bits that are added for error detection and correction. - Relationship Between FEC_K and FEC_N + This includes both the original data bits (K) and the redundant bits that are added for error detection and correction. + Relationship Between FEC_K and FEC_N - The difference between N and K represents the redundancy added by the error correction code. In other words, the redundant bits are used to detect and correct errors in the transmitted data. + The difference between N and K represents the redundancy added by the error correction code. In other words, the redundant bits are used to detect and correct errors in the transmitted data. - ```mathematica - N = K + Number of Redundant Bits - ``` + ```mathematica + N = K + Number of Redundant Bits + ``` - Example + Example - If FEC_K = 1000 and FEC_N = 1200, this means 200 redundant bits were added to the original 1000 data bits, creating a total of 1200 transmitted bits. + If FEC_K = 1000 and FEC_N = 1200, this means 200 redundant bits were added to the original 1000 data bits, creating a total of 1200 transmitted bits. - Code Rate + Code Rate - The ratio of information bits (K) to the total bits (N) is called the code rate: + The ratio of information bits (K) to the total bits (N) is called the code rate: - ```mathematica - Code Rate = K / N - ``` + ```mathematica + Code Rate = K / N + ``` - For example, if K = 1000 and N = 1200, the code rate would be: + For example, if K = 1000 and N = 1200, the code rate would be: - ```yaml + ```yaml - Code Rate = 1000 / 1200 = 0.833 - ``` - This means that 83.3% of the transmitted bits are actual data, and 16.7% are used for error correction. + Code Rate = 1000 / 1200 = 0.833 + ``` + This means that 83.3% of the transmitted bits are actual data, and 16.7% are used for error correction. #### Usage in Communication Systems From 04466954e31dcfd2cc1f707c2aa55e408867949d Mon Sep 17 00:00:00 2001 From: Mike Carr Date: Sat, 14 Sep 2024 09:13:21 -0700 Subject: [PATCH 09/14] add to toc --- README.md | 1 + en/fpv-general.md | 5 +++++ 2 files changed, 6 insertions(+) diff --git a/README.md b/README.md index 0a134eb..1600f0f 100644 --- a/README.md +++ b/README.md @@ -47,6 +47,7 @@ OpenIPC Wiki ### FPV - [Frequently Asked Question (FAQ) for FPV](en/fpv-faq.md) +- [General Info](en/fpv-general.md) - [OpenIPC AIO "Mario"](en/fpv-openipc-aio-mario.md) - [OpenIPC AIO "UltraSight"](en/fpv-openipc-aio-ultrasight.md) - [Guide to configure an FPV camera and groundstation](en/fpv-step-by-step-guide.md) diff --git a/en/fpv-general.md b/en/fpv-general.md index c13c1b0..8742351 100644 --- a/en/fpv-general.md +++ b/en/fpv-general.md @@ -1,3 +1,8 @@ +# OpenIPC Wiki +[Table of Content](../README.md) + +Be sure to use the [FAQ](../en/fpv-faq.md) as well. + # Acronyms and Definitions * BEC - BEC stands for Battery Eliminator Circuit. It is used to provide a stable voltage supply to components in a device, often in place of a battery. From 11e0341fe478c16d6de06406e0ede306c49c9f7f Mon Sep 17 00:00:00 2001 From: Kenny <148837522+KennyPlus@users.noreply.github.com> Date: Mon, 16 Sep 2024 16:52:36 +0800 Subject: [PATCH 10/14] Update fpv-openipc-aio-mario.md Add auto set for CDC ethernet on windows --- en/fpv-openipc-aio-mario.md | 38 ++++++++++++++++++++++++++++++++++++- 1 file changed, 37 insertions(+), 1 deletion(-) diff --git a/en/fpv-openipc-aio-mario.md b/en/fpv-openipc-aio-mario.md index 1083717..4f71d30 100644 --- a/en/fpv-openipc-aio-mario.md +++ b/en/fpv-openipc-aio-mario.md @@ -63,9 +63,44 @@ enter uboot use uart device connect to top of AIO board(R0,T0)pad. Plug USB cable to connect AIO and PC first, then power on DC, or usb power only. If there are unknown USB devices in the computer, the following drivers need to be installed. -[corechip-sr9900-usb20-to-fast-ethernet-adapter-1750095.zip](https://github.com/user-attachments/files/16829005/corechip-sr9900-usb20-to-fast-ethernet-adapter-1750095.zip) +[corechip-sr9900-usb20-to-fast-ethernet-adapter-1750095.zip] + +(https://github.com/user-attachments/files/16829005/corechip-sr9900-usb20-to-fast-ethernet-adapter-1750095.zip) in windows: +Save attached Auto_set_Mario_CDX.bat and run as administrator. +[Uploading Auto_Set_Mario_CDC.bat@echo off +setlocal + +echo Detecting Ethernet adapter with description containing "Searching OpenIPC Mario AIO device CDC net adapter"... + +:: Query network adapters and find the one with "Corechip SR9900" in the description +for /f "tokens=2 delims==" %%A in ('wmic nic where "Description like '%%Corechip SR9900%%' and NetConnectionID is not null" get NetConnectionID /value 2^>nul') do ( + set "EthernetName=%%A" +) + +:: Check if the EthernetName variable was set +if defined EthernetName ( + echo Ethernet adapter found: "%EthernetName%" + echo Configuring IPv4 address... + + :: Set the static IPv4 address and subnet mask + netsh interface ip set address name="%EthernetName%" static 192.168.1.11 255.255.255.0 + if %errorlevel% equ 0 ( + echo Successfully set the IP address to 192.168.1.11 and subnet mask to 255.255.255.0 + ) else ( + echo Failed to set the IP address. Please check permissions or install Driver for it. + ) +) else ( + echo No Ethernet adapter with "Mario AIO device" found. +) + +endlocal +pause +…]() + + +or setting manually as follows: go to control panel- internet -network: @@ -75,6 +110,7 @@ set this card ipv4 address to 192.168.1.11 mask:255.255.255.0 apply + then open ssh to connect AIO address:192.168.1.10 user:root password:12345 From d138b9078219ea91d2bbe48deee4bf3f66512d14 Mon Sep 17 00:00:00 2001 From: Kenny <148837522+KennyPlus@users.noreply.github.com> Date: Mon, 16 Sep 2024 16:54:18 +0800 Subject: [PATCH 11/14] Update fpv-openipc-aio-mario.md Add Auto set CDC ethernet --- en/fpv-openipc-aio-mario.md | 30 ++---------------------------- 1 file changed, 2 insertions(+), 28 deletions(-) diff --git a/en/fpv-openipc-aio-mario.md b/en/fpv-openipc-aio-mario.md index 4f71d30..a010f82 100644 --- a/en/fpv-openipc-aio-mario.md +++ b/en/fpv-openipc-aio-mario.md @@ -68,36 +68,10 @@ If there are unknown USB devices in the computer, the following drivers need to (https://github.com/user-attachments/files/16829005/corechip-sr9900-usb20-to-fast-ethernet-adapter-1750095.zip) in windows: -Save attached Auto_set_Mario_CDX.bat and run as administrator. -[Uploading Auto_Set_Mario_CDC.bat@echo off -setlocal +Save attached and unzip file ( Auto_set_Mario_CDX.bat )and run as administrator. -echo Detecting Ethernet adapter with description containing "Searching OpenIPC Mario AIO device CDC net adapter"... +[Auto_Set_Mario_CDC.zip](https://github.com/user-attachments/files/17010487/Auto_Set_Mario_CDC.zip) -:: Query network adapters and find the one with "Corechip SR9900" in the description -for /f "tokens=2 delims==" %%A in ('wmic nic where "Description like '%%Corechip SR9900%%' and NetConnectionID is not null" get NetConnectionID /value 2^>nul') do ( - set "EthernetName=%%A" -) - -:: Check if the EthernetName variable was set -if defined EthernetName ( - echo Ethernet adapter found: "%EthernetName%" - echo Configuring IPv4 address... - - :: Set the static IPv4 address and subnet mask - netsh interface ip set address name="%EthernetName%" static 192.168.1.11 255.255.255.0 - if %errorlevel% equ 0 ( - echo Successfully set the IP address to 192.168.1.11 and subnet mask to 255.255.255.0 - ) else ( - echo Failed to set the IP address. Please check permissions or install Driver for it. - ) -) else ( - echo No Ethernet adapter with "Mario AIO device" found. -) - -endlocal -pause -…]() or setting manually as follows: From 3a2e27d5510383fdefc478431ac9f40a535633e5 Mon Sep 17 00:00:00 2001 From: Signor Pellegrino <68112357+flyrouter@users.noreply.github.com> Date: Mon, 16 Sep 2024 12:24:46 +0300 Subject: [PATCH 12/14] Update fpv-openipc-aio-mario.md --- en/fpv-openipc-aio-mario.md | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/en/fpv-openipc-aio-mario.md b/en/fpv-openipc-aio-mario.md index a010f82..5e282d0 100644 --- a/en/fpv-openipc-aio-mario.md +++ b/en/fpv-openipc-aio-mario.md @@ -63,9 +63,7 @@ enter uboot use uart device connect to top of AIO board(R0,T0)pad. Plug USB cable to connect AIO and PC first, then power on DC, or usb power only. If there are unknown USB devices in the computer, the following drivers need to be installed. -[corechip-sr9900-usb20-to-fast-ethernet-adapter-1750095.zip] - -(https://github.com/user-attachments/files/16829005/corechip-sr9900-usb20-to-fast-ethernet-adapter-1750095.zip) +[corechip-sr9900-usb20-to-fast-ethernet-adapter-1750095.zip](https://github.com/user-attachments/files/16829005/corechip-sr9900-usb20-to-fast-ethernet-adapter-1750095.zip) in windows: Save attached and unzip file ( Auto_set_Mario_CDX.bat )and run as administrator. From b81de7b0b77c165078977ff005f94cd95abc0606 Mon Sep 17 00:00:00 2001 From: Signor Pellegrino <68112357+flyrouter@users.noreply.github.com> Date: Mon, 16 Sep 2024 12:32:17 +0300 Subject: [PATCH 13/14] Update fpv-openipc-aio-mario.md --- en/fpv-openipc-aio-mario.md | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/en/fpv-openipc-aio-mario.md b/en/fpv-openipc-aio-mario.md index 5e282d0..a96c2b5 100644 --- a/en/fpv-openipc-aio-mario.md +++ b/en/fpv-openipc-aio-mario.md @@ -62,15 +62,10 @@ enter uboot use uart device connect to top of AIO board(R0,T0)pad. Plug USB cable to connect AIO and PC first, then power on DC, or usb power only. -If there are unknown USB devices in the computer, the following drivers need to be installed. -[corechip-sr9900-usb20-to-fast-ethernet-adapter-1750095.zip](https://github.com/user-attachments/files/16829005/corechip-sr9900-usb20-to-fast-ethernet-adapter-1750095.zip) - -in windows: -Save attached and unzip file ( Auto_set_Mario_CDX.bat )and run as administrator. - -[Auto_Set_Mario_CDC.zip](https://github.com/user-attachments/files/17010487/Auto_Set_Mario_CDC.zip) - +If there are unknown USB devices in the computer, the following [corechip-sr9900](https://github.com/user-attachments/files/16829005/corechip-sr9900-usb20-to-fast-ethernet-adapter-1750095.zip) drivers need to be installed. +#### Autosetup in windows +Please download [Auto_Set_Mario_CDC.zip](https://github.com/user-attachments/files/17010487/Auto_Set_Mario_CDC.zip) file, unzip it and run as administrator. or setting manually as follows: From 4656e2bf04ce1765a192e0b946e87a8becb4d1db Mon Sep 17 00:00:00 2001 From: Signor Pellegrino <68112357+flyrouter@users.noreply.github.com> Date: Mon, 16 Sep 2024 15:22:46 +0300 Subject: [PATCH 14/14] Update faq.md --- en/faq.md | 1 + 1 file changed, 1 insertion(+) diff --git a/en/faq.md b/en/faq.md index 435d75a..7e6910f 100644 --- a/en/faq.md +++ b/en/faq.md @@ -29,6 +29,7 @@ and then look it up in the [FCC ID database](https://fccid.io/). - lame (mp3) and libwebsockets support - experimental WebRTC support (only recent Hisi/Goke) +$\color{red}{\text{We always recommend using only Lite firmware}}$ ### How to strip U-Boot Image wrapper header from a binary image