Tech-dat/Network-dat/RC-dat/ArduPilot-dat/2025-05-04-16-11-57.png
... ...
Binary files /dev/null and b/Tech-dat/Network-dat/RC-dat/ArduPilot-dat/2025-05-04-16-11-57.png differ
Tech-dat/Network-dat/RC-dat/ArduPilot-dat/ArduPilot-dat.md
... ...
@@ -0,0 +1,93 @@
1
+
2
+# ArduPilot-dat
3
+
4
+
5
+## Radio Control Systems
6
+
7
+
8
+- [Radio Control Systems](https://ardupilot.org/rover/docs/common-rc-systems.html)
9
+
10
+Compatible RC Protocols
11
+
12
+ArduPilot autopilots are compatible with the following receiver output protocols:
13
+
14
+PPM-Sum receivers - [[PPM-dat]]
15
+
16
+SBus receivers - [[SBUS-dat]]
17
+
18
+Fast SBus (from DJI HDL video/RC systems)
19
+
20
+i-BUS receivers - [[IBUS-dat]]
21
+
22
+FPort Receivers
23
+
24
+Spektrum SRXL2,DSM, DSM2, and DSM-X Satellite receivers
25
+
26
+Multiplex SRXL version 1 and version 2 receivers
27
+
28
+CRSF receivers (including ExpressLRS systems) - [[ELRS-dat]] - [[CRSF-dat]]
29
+
30
+mLRS (with telemetry) (MAVLink)
31
+
32
+Graupner SUM-D
33
+
34
+IRC Ghost
35
+
36
+DroneCAN peripherals can decode these RC protocols on a peripheral and pass to the autopilot
37
+
38
+MAVLink connected RC (not to be confused with MAVLink RC Overrides used for CS joystick control of RC functions)
39
+
40
+Parallel PWM outputs encoded to PPM-Sum using an external encoder (see below, not supported on many autopilots now)
41
+
42
+
43
+
44
+## specs
45
+
46
+| Original Manu | Range | Telemetry | Telem Speed | TX Display | RC Protocol | Notes |
47
+| --------------- | ------ | --------------- | ----------- | ----------- | -------------------- | ----- |
48
+| Flysky | Short | Yes | | yes | i-BUS/SBUS | 7 |
49
+| FrSky X series | Short | Bi-dir | Medium | yes | PPM-SUM/SBUS/ FPort | 2 |
50
+| Futaba | Short | No | | | SBus | |
51
+| Graupner | Short | Yes | Medium | yes | SUM-D | |
52
+| Multiplex | Short | No | | | SRXL | |
53
+| Spektrum | Short | Vendor Specific | | yes | DSM/DSM2 DSM-X/ SRXL | |
54
+| FrSky R9 series | Medium | Bi-dir | Medium | yes | PPM-SUM/SBUS/ FPort | 2 |
55
+| IRC Ghost | Medium | Vendor Specific | | yes | IRC Ghost | |
56
+| [[CRSF-dat]] | Long | Bi-dir | Variable | yes | SBUS/CRSF | 3 |
57
+| DragonLink | Long | Bi-dir | 56K | via MTP/LUA | PPM_SUM/SBUS | 1 |
58
+| [[ELRS-dat]] | Long | Bi-Dir | Variable | optional | SBUS/CRSF Mavlink | 4 |
59
+| HereLink | Long | Bi-dir | 56K | integrated | SBUS | 8 |
60
+| mLRS | Long | Bi-dir | 12K - 91K | via LUA | SBUS/CRSF | 5 |
61
+| SIYI | Long | Bi-dir | 56K | integrated | SBUS | 8 |
62
+
63
+- [[network-dat]]
64
+
65
+RC protocols - [[SBUS-dat]] - [[CRSF-dat]] - [[PPM-SUM-dat]] - [[Fport-dat]] - [[SUM-D-dat]] - [[IBUS-dat]] - [[DSM-dat]]
66
+
67
+
68
+
69
+Note 1: DragonLink provides a 56Kbaud transparent link for telemetry, allowing full MAVLink telemetry to/from the vehicle from the transmitter module. Dragonlink is an add-on module to the transmitter, such as an FRSky Taranis or RadioMaster T16. See DragonLink RC Systems. MTP (Mavlink to Passthru) converters are available to allow direct display of MAVLink Telemetry data on OpenTX transmitters using Yaapu Telemetry LUA Script.
70
+
71
+Note 2: See Yaapu FrSky Telemetry Script for OpenTX. The ability to change parameters over FRSky telemetry from an Open TX compatible transmitter in addition to displaying the telemetry data is possible. Most FRSky compatible transmitters use OpenTX. Note that R9 systems are not quite Long Range, but much further range than normal FRSky systems, themselves at the very high end of the Short Range category at 1.6-2km range.
72
+
73
+Note 3: ArduPilot provides a means to send its telemetry data via CRSF such that it can be displayed on OpenTX transmitters using the Yaapu Telemetry LUA Script. The ability to change parameters over CRSF telemetry from an Open TX compatible transmitter in addition to displaying the telemetry data is also possible. See TBS Crossfire Telemetry
74
+
75
+Note 4: ELRS (ExpressLRS) is a flexible open-source system that can output CRSF, SBUS, or MAVLink (with embedded RC) protocols. Telemetry requires the use of CRSF or Mavlink, and the receiver must be wired to a full UART. See ExpressLRS site <https://www.expresslrs.org/> and TBS CRSF/ ELRS for more information.
76
+
77
+Note 5: The mLRS project is firmware designed specifically to carry both RC and MAVLink. The usable telemetry speed varies by the chosen mode and is managed via RADIO_STATUS flow control. It uses the CRSF (TBS Crossfire) RC protocol on both the receiver and Tx module. It also integrates full MAVLink telemetry via serial connections on the Tx module and the receiver.
78
+
79
+Note 6: Vendor Specific Telem means that they accomodate sensor additions to the vehicle and can display the information on certain Vendor specific TXs but do not send ArduPilot telemetry from the vehicle to ArduPilot compatible GCS or OpenTX display scripts.
80
+
81
+Note 7: The receiver must support i-BUS telemetry (look for a SENS port on the receiver or check the product specifications).
82
+
83
+Note 8: These systems have integrated HD video transmission from Ethernet or HDMI camera systems in addition to RC control and vehicle telemetry.
84
+
85
+
86
+## protocol converter
87
+
88
+![](2025-05-04-16-11-57.png)
89
+
90
+
91
+## ref
92
+
93
+- [[ardupilot-dat]] - [[FPV]]
... ...
\ No newline at end of file
Tech-dat/Network-dat/RC-dat/RC-code-dat/PWM-1ch.ino
... ...
@@ -0,0 +1,74 @@
1
+// Define pins for each RC channel
2
+int aileronPin = 2; // Channel 1
3
+
4
+const int ENA = 5; // PWM for speed for Motor 1
5
+const int ENB = 4; // PWM for speed for Motor 2
6
+
7
+const int IN1 = 0; // Direction for Motor 1 (IN2_Motor1 is inverted in hardware)
8
+const int IN2 = 2; // Direction pin 1 for Motor 2
9
+
10
+long aileronControl;
11
+
12
+long readAileronControlSignal() {
13
+ unsigned long rawPWM = pulseIn(aileronPin, HIGH, 25000);
14
+ if (rawPWM == 0) { // Timeout or no signal
15
+ return 50; // Mid-point for 0-100 scale (1500us equivalent)
16
+ }
17
+ long constrainedPWM = constrain(rawPWM, 1000, 2000);
18
+ return map(constrainedPWM, 1000, 2000, 0, 100);
19
+}
20
+
21
+void setup() {
22
+ pinMode(aileronPin, INPUT);
23
+
24
+ pinMode(ENA, OUTPUT);
25
+ pinMode(ENB, OUTPUT);
26
+ pinMode(IN1, OUTPUT);
27
+ pinMode(IN2, OUTPUT);
28
+
29
+ // Initialize motors to off
30
+ digitalWrite(IN1, LOW);
31
+ digitalWrite(IN2, LOW);
32
+ analogWrite(ENA, 0);
33
+ analogWrite(ENB, 0);
34
+
35
+ Serial.begin(9600);
36
+}
37
+
38
+void loop() {
39
+ // Read mapped control signals from each channel
40
+ aileronControl = readAileronControlSignal();
41
+
42
+ // Print the mapped control signal values to the Serial Monitor
43
+ Serial.print("Aileron: ");
44
+ Serial.print(aileronControl);
45
+ Serial.println(); // Newline for better readability
46
+
47
+ if (aileronControl > 70) {
48
+ // Forward
49
+ digitalWrite(IN1, HIGH); // Motor 1 forward
50
+ digitalWrite(IN2, HIGH); // Motor 2 forward
51
+
52
+ // Map aileronControl (61-100) to PWM speed (e.g., 100-255)
53
+ int motorSpeed = map(aileronControl, 61, 100, 100, 255);
54
+ analogWrite(ENA, motorSpeed);
55
+ analogWrite(ENB, motorSpeed);
56
+ } else if (aileronControl < 30) {
57
+ // Backward
58
+ digitalWrite(IN1, LOW); // Motor 1 backward
59
+ digitalWrite(IN2, LOW); // Motor 2 backward
60
+
61
+ // Map aileronControl (0-39) to PWM speed (e.g., 255-100, reversing the range for backward)
62
+ int motorSpeed = map(aileronControl, 0, 39, 255, 100);
63
+ analogWrite(ENA, motorSpeed);
64
+ analogWrite(ENB, motorSpeed);
65
+ } else {
66
+ // Stop motors (aileronControl is between 40 and 60 inclusive)
67
+ digitalWrite(IN1, LOW);
68
+ digitalWrite(IN2, LOW);
69
+ analogWrite(ENA, 0);
70
+ analogWrite(ENB, 0);
71
+ }
72
+
73
+ delay(100); // Limit output rate
74
+}
... ...
\ No newline at end of file
Tech-dat/Network-dat/RC-dat/RC-code-dat/PWM-2ch-2.ino
... ...
@@ -0,0 +1,142 @@
1
+// Define pins for each RC channel
2
+int aileronPin = 14; // Channel 1 (Throttle)
3
+int elevatorPin = 12; // Channel 2 (Steering)
4
+
5
+const int ENA = 5; // PWM for speed for Motor 1
6
+const int ENB = 4; // PWM for speed for Motor 2
7
+
8
+const int IN1 = 0; // Direction for Motor 1
9
+const int IN2 = 2; // Direction pin 1 for Motor 2
10
+
11
+long aileronControl; // Mapped value from aileron channel (0-100)
12
+long elevatorControl; // Mapped value from elevator channel (0-100)
13
+
14
+// Reads the PWM signal from the aileron channel and maps it to 0-100
15
+long readAileronControlSignal() {
16
+ unsigned long rawPWM = pulseIn(aileronPin, HIGH, 25000);
17
+ // If signal is lost (timeout) or clearly out of valid RC pulse range, return neutral (50)
18
+ // Valid RC pulses are typically 1000-2000us. Values outside ~900-2100us are treated as invalid.
19
+ if (rawPWM == 0 || rawPWM < 900 || rawPWM > 2100) {
20
+ return 50; // Mid-point for 0-100 scale (1500us equivalent), results in stop
21
+ }
22
+ // Otherwise, the signal is likely valid; constrain it to the standard 1000-2000us range and map
23
+ long constrainedPWM = constrain(rawPWM, 1000, 2000);
24
+ return map(constrainedPWM, 1000, 2000, 0, 100);
25
+}
26
+
27
+// Reads the PWM signal from the elevator channel and maps it to 0-100
28
+long readElevatorControlSignal() {
29
+ unsigned long rawPWM = pulseIn(elevatorPin, HIGH, 25000);
30
+ // If signal is lost (timeout) or clearly out of valid RC pulse range, return neutral (50)
31
+ // Valid RC pulses are typically 1000-2000us. Values outside ~900-2100us are treated as invalid.
32
+ if (rawPWM == 0 || rawPWM < 900 || rawPWM > 2100) {
33
+ return 50; // Mid-point for 0-100 scale (1500us equivalent), results in stop
34
+ }
35
+ // Otherwise, the signal is likely valid; constrain it to the standard 1000-2000us range and map
36
+ long constrainedPWM = constrain(rawPWM, 1000, 2000);
37
+ return map(constrainedPWM, 1000, 2000, 0, 100);
38
+}
39
+
40
+void setup() {
41
+ pinMode(aileronPin, INPUT);
42
+ pinMode(elevatorPin, INPUT); // Initialize elevator pin
43
+
44
+ pinMode(ENA, OUTPUT);
45
+ pinMode(ENB, OUTPUT);
46
+ pinMode(IN1, OUTPUT);
47
+ pinMode(IN2, OUTPUT);
48
+
49
+ // Initialize motors to off
50
+ digitalWrite(IN1, LOW);
51
+ digitalWrite(IN2, LOW);
52
+ analogWrite(ENA, 0);
53
+ analogWrite(ENB, 0);
54
+
55
+ Serial.begin(9600);
56
+}
57
+
58
+// Helper function to control a single motor
59
+// pwmVal: -255 (full backward) to 255 (full forward)
60
+void setMotorOutput(int dirPin, int speedPin, int pwmVal) {
61
+ if (pwmVal > 0) { // Forward
62
+ digitalWrite(dirPin, HIGH);
63
+ analogWrite(speedPin, pwmVal);
64
+ } else if (pwmVal < 0) { // Backward
65
+ digitalWrite(dirPin, LOW);
66
+ analogWrite(speedPin, -pwmVal); // Speed is positive
67
+ } else { // Stop
68
+ digitalWrite(dirPin, LOW); // Or HIGH, doesn't matter much if speed is 0
69
+ analogWrite(speedPin, 0);
70
+ }
71
+}
72
+
73
+// Helper function to map RC control input (0-100) to an output range (e.g., -255 to 255)
74
+// with a deadband around the center (e.g., 50).
75
+long mapWithDeadband(long rcValue, int rcMin, int rcMax, int rcCenter, int deadbandRadius, int outMin, int outMax) {
76
+ long mappedValue = 0;
77
+ int deadbandLower = rcCenter - deadbandRadius;
78
+ int deadbandUpper = rcCenter + deadbandRadius;
79
+
80
+ if (rcValue < deadbandLower) {
81
+ // Map the range [rcMin, deadbandLower - 1] to [outMin, -1]
82
+ // Ensure deadbandLower - 1 is not less than rcMin
83
+ if (deadbandLower -1 < rcMin) {
84
+ mappedValue = outMin;
85
+ } else {
86
+ mappedValue = map(rcValue, rcMin, deadbandLower - 1, outMin, -1);
87
+ }
88
+ } else if (rcValue > deadbandUpper) {
89
+ // Map the range [deadbandUpper + 1, rcMax] to [1, outMax]
90
+ // Ensure deadbandUpper + 1 is not greater than rcMax
91
+ if (deadbandUpper + 1 > rcMax) {
92
+ mappedValue = outMax;
93
+ } else {
94
+ mappedValue = map(rcValue, deadbandUpper + 1, rcMax, 1, outMax);
95
+ }
96
+ } else {
97
+ // Inside deadband
98
+ mappedValue = 0;
99
+ }
100
+ return constrain(mappedValue, outMin, outMax);
101
+}
102
+
103
+void loop() {
104
+ // Read mapped control signals from each channel
105
+ aileronControl = readAileronControlSignal(); // Throttle (0-100)
106
+ elevatorControl = readElevatorControlSignal(); // Steering (0-100)
107
+
108
+ // Print the mapped control signal values to the Serial Monitor
109
+ Serial.print("Aileron (Throttle): ");
110
+ Serial.print(aileronControl);
111
+ Serial.print(" Elevator (Steering): ");
112
+ Serial.print(elevatorControl);
113
+ Serial.println();
114
+
115
+ // Define deadband radius (e.g., +/- 5 around center of 50 for a 0-100 input)
116
+ // This means input values from 45 to 55 (inclusive if center is 50 and radius is 5) will be treated as 0.
117
+ int deadbandRadius = 10;
118
+ float steeringFactor = 3; // Adjust this value to change steering sensitivity
119
+ float throttleFactor = 3; // Adjust this value to change throttle sensitivity (e.g., 1.2 for 20% stronger throttle)
120
+
121
+ // Map control values with deadband
122
+ long rawThrottleValue = mapWithDeadband(aileronControl, 0, 100, 50, deadbandRadius, -255, 255);
123
+ long rawSteeringValue = mapWithDeadband(elevatorControl, 0, 100, 50, deadbandRadius, -255, 255);
124
+
125
+ // Apply sensitivity factors
126
+ long throttleValue = rawThrottleValue * throttleFactor;
127
+ long adjustedSteeringValue = rawSteeringValue * steeringFactor;
128
+
129
+ // Mix throttle and steering for differential drive
130
+ long motor1Pwm = throttleValue + adjustedSteeringValue;
131
+ long motor2Pwm = throttleValue - adjustedSteeringValue;
132
+
133
+ // Constrain PWM values to the valid range [-255, 255]
134
+ motor1Pwm = constrain(motor1Pwm, -255, 255);
135
+ motor2Pwm = constrain(motor2Pwm, -255, 255);
136
+
137
+ // Set motor speeds and directions
138
+ setMotorOutput(IN1, ENA, motor1Pwm); // Motor 1
139
+ setMotorOutput(IN2, ENB, motor2Pwm); // Motor 2
140
+
141
+ delay(20); // Shorter delay for better responsiveness
142
+}
... ...
\ No newline at end of file
Tech-dat/Network-dat/RC-dat/RC-code-dat/PWM-2ch-v2.ino
... ...
@@ -0,0 +1,68 @@
1
+// RC signal input pins
2
+#define THROTTLE_PIN 2 // Channel 1 (forward/back)
3
+#define STEERING_PIN 3 // Channel 2 (left/right)
4
+
5
+// Motor control pins (L298N)
6
+#define LEFT_ENA 9
7
+#define LEFT_IN1 4
8
+#define LEFT_IN2 5
9
+
10
+#define RIGHT_ENB 10
11
+#define RIGHT_IN3 6
12
+#define RIGHT_IN4 7
13
+
14
+int throttle, steering;
15
+
16
+void setup() {
17
+ pinMode(THROTTLE_PIN, INPUT);
18
+ pinMode(STEERING_PIN, INPUT);
19
+
20
+ pinMode(LEFT_IN1, OUTPUT);
21
+ pinMode(LEFT_IN2, OUTPUT);
22
+ pinMode(LEFT_ENA, OUTPUT);
23
+
24
+ pinMode(RIGHT_IN3, OUTPUT);
25
+ pinMode(RIGHT_IN4, OUTPUT);
26
+ pinMode(RIGHT_ENB, OUTPUT);
27
+
28
+ Serial.begin(9600);
29
+}
30
+
31
+void loop() {
32
+ // Read PWM input
33
+ throttle = pulseIn(THROTTLE_PIN, HIGH, 25000);
34
+ steering = pulseIn(STEERING_PIN, HIGH, 25000);
35
+
36
+ // Center = 1500, range = 1000โ€“2000
37
+ int throttleVal = map(throttle, 1000, 2000, -255, 255);
38
+ int steeringVal = map(steering, 1000, 2000, -100, 100); // less aggressive
39
+
40
+ // Motor mixing (differential drive)
41
+ int leftSpeed = constrain(throttleVal + steeringVal, -255, 255);
42
+ int rightSpeed = constrain(throttleVal - steeringVal, -255, 255);
43
+
44
+ setMotor(LEFT_IN1, LEFT_IN2, LEFT_ENA, leftSpeed);
45
+ setMotor(RIGHT_IN3, RIGHT_IN4, RIGHT_ENB, rightSpeed);
46
+
47
+ // Debug
48
+ Serial.print("Throttle: "); Serial.print(throttleVal);
49
+ Serial.print(" Steering: "); Serial.print(steeringVal);
50
+ Serial.print(" L: "); Serial.print(leftSpeed);
51
+ Serial.print(" R: "); Serial.println(rightSpeed);
52
+
53
+ delay(20);
54
+}
55
+
56
+void setMotor(int in1, int in2, int ena, int speed) {
57
+ if (speed > 0) {
58
+ digitalWrite(in1, HIGH);
59
+ digitalWrite(in2, LOW);
60
+ } else if (speed < 0) {
61
+ digitalWrite(in1, LOW);
62
+ digitalWrite(in2, HIGH);
63
+ } else {
64
+ digitalWrite(in1, LOW);
65
+ digitalWrite(in2, LOW);
66
+ }
67
+ analogWrite(ena, abs(speed));
68
+}
Tech-dat/Network-dat/RC-dat/RC-code-dat/PWM-2ch.ino
... ...
@@ -0,0 +1,136 @@
1
+// Define pins for each RC channel
2
+int aileronPin = 14; // Channel 1 (Throttle)
3
+int elevatorPin = 12; // Channel 2 (Steering)
4
+
5
+const int ENA = 5; // PWM for speed for Motor 1
6
+const int ENB = 4; // PWM for speed for Motor 2
7
+
8
+const int IN1 = 0; // Direction for Motor 1
9
+const int IN2 = 2; // Direction pin 1 for Motor 2
10
+
11
+long aileronControl; // Mapped value from aileron channel (0-100)
12
+long elevatorControl; // Mapped value from elevator channel (0-100)
13
+
14
+// Reads the PWM signal from the aileron channel and maps it to 0-100
15
+long readAileronControlSignal() {
16
+ unsigned long rawPWM = pulseIn(aileronPin, HIGH, 25000);
17
+ if (rawPWM == 0) { // Timeout or no signal
18
+ return 50; // Mid-point for 0-100 scale (1500us equivalent)
19
+ }
20
+ long constrainedPWM = constrain(rawPWM, 1000, 2000);
21
+ return map(constrainedPWM, 1000, 2000, 0, 100);
22
+}
23
+
24
+// Reads the PWM signal from the elevator channel and maps it to 0-100
25
+long readElevatorControlSignal() {
26
+ unsigned long rawPWM = pulseIn(elevatorPin, HIGH, 25000);
27
+ if (rawPWM == 0) { // Timeout or no signal
28
+ return 50; // Mid-point for 0-100 scale (1500us equivalent)
29
+ }
30
+ long constrainedPWM = constrain(rawPWM, 1000, 2000);
31
+ return map(constrainedPWM, 1000, 2000, 0, 100);
32
+}
33
+
34
+void setup() {
35
+ pinMode(aileronPin, INPUT);
36
+ pinMode(elevatorPin, INPUT); // Initialize elevator pin
37
+
38
+ pinMode(ENA, OUTPUT);
39
+ pinMode(ENB, OUTPUT);
40
+ pinMode(IN1, OUTPUT);
41
+ pinMode(IN2, OUTPUT);
42
+
43
+ // Initialize motors to off
44
+ digitalWrite(IN1, LOW);
45
+ digitalWrite(IN2, LOW);
46
+ analogWrite(ENA, 0);
47
+ analogWrite(ENB, 0);
48
+
49
+ Serial.begin(9600);
50
+}
51
+
52
+// Helper function to control a single motor
53
+// pwmVal: -255 (full backward) to 255 (full forward)
54
+void setMotorOutput(int dirPin, int speedPin, int pwmVal) {
55
+ if (pwmVal > 0) { // Forward
56
+ digitalWrite(dirPin, HIGH);
57
+ analogWrite(speedPin, pwmVal);
58
+ } else if (pwmVal < 0) { // Backward
59
+ digitalWrite(dirPin, LOW);
60
+ analogWrite(speedPin, -pwmVal); // Speed is positive
61
+ } else { // Stop
62
+ digitalWrite(dirPin, LOW); // Or HIGH, doesn't matter much if speed is 0
63
+ analogWrite(speedPin, 0);
64
+ }
65
+}
66
+
67
+// Helper function to map RC control input (0-100) to an output range (e.g., -255 to 255)
68
+// with a deadband around the center (e.g., 50).
69
+long mapWithDeadband(long rcValue, int rcMin, int rcMax, int rcCenter, int deadbandRadius, int outMin, int outMax) {
70
+ long mappedValue = 0;
71
+ int deadbandLower = rcCenter - deadbandRadius;
72
+ int deadbandUpper = rcCenter + deadbandRadius;
73
+
74
+ if (rcValue < deadbandLower) {
75
+ // Map the range [rcMin, deadbandLower - 1] to [outMin, -1]
76
+ // Ensure deadbandLower - 1 is not less than rcMin
77
+ if (deadbandLower -1 < rcMin) {
78
+ mappedValue = outMin;
79
+ } else {
80
+ mappedValue = map(rcValue, rcMin, deadbandLower - 1, outMin, -1);
81
+ }
82
+ } else if (rcValue > deadbandUpper) {
83
+ // Map the range [deadbandUpper + 1, rcMax] to [1, outMax]
84
+ // Ensure deadbandUpper + 1 is not greater than rcMax
85
+ if (deadbandUpper + 1 > rcMax) {
86
+ mappedValue = outMax;
87
+ } else {
88
+ mappedValue = map(rcValue, deadbandUpper + 1, rcMax, 1, outMax);
89
+ }
90
+ } else {
91
+ // Inside deadband
92
+ mappedValue = 0;
93
+ }
94
+ return constrain(mappedValue, outMin, outMax);
95
+}
96
+
97
+void loop() {
98
+ // Read mapped control signals from each channel
99
+ aileronControl = readAileronControlSignal(); // Throttle (0-100)
100
+ elevatorControl = readElevatorControlSignal(); // Steering (0-100)
101
+
102
+ // Print the mapped control signal values to the Serial Monitor
103
+ Serial.print("Aileron (Throttle): ");
104
+ Serial.print(aileronControl);
105
+ Serial.print(" Elevator (Steering): ");
106
+ Serial.print(elevatorControl);
107
+ Serial.println();
108
+
109
+ // Define deadband radius (e.g., +/- 5 around center of 50 for a 0-100 input)
110
+ // This means input values from 45 to 55 (inclusive if center is 50 and radius is 5) will be treated as 0.
111
+ int deadbandRadius = 5;
112
+ float steeringFactor = 1.5; // Adjust this value to change steering sensitivity
113
+ float throttleFactor = 1.3; // Adjust this value to change throttle sensitivity (e.g., 1.2 for 20% stronger throttle)
114
+
115
+ // Map control values with deadband
116
+ long rawThrottleValue = mapWithDeadband(aileronControl, 0, 100, 50, deadbandRadius, -255, 255);
117
+ long rawSteeringValue = mapWithDeadband(elevatorControl, 0, 100, 50, deadbandRadius, -255, 255);
118
+
119
+ // Apply sensitivity factors
120
+ long throttleValue = rawThrottleValue * throttleFactor;
121
+ long adjustedSteeringValue = rawSteeringValue * steeringFactor;
122
+
123
+ // Mix throttle and steering for differential drive
124
+ long motor1Pwm = throttleValue + adjustedSteeringValue;
125
+ long motor2Pwm = throttleValue - adjustedSteeringValue;
126
+
127
+ // Constrain PWM values to the valid range [-255, 255]
128
+ motor1Pwm = constrain(motor1Pwm, -255, 255);
129
+ motor2Pwm = constrain(motor2Pwm, -255, 255);
130
+
131
+ // Set motor speeds and directions
132
+ setMotorOutput(IN1, ENA, motor1Pwm); // Motor 1
133
+ setMotorOutput(IN2, ENB, motor2Pwm); // Motor 2
134
+
135
+ delay(20); // Shorter delay for better responsiveness
136
+}
... ...
\ No newline at end of file
Tech-dat/Network-dat/RC-dat/RC-code-dat/RC-code-dat.md
... ...
@@ -0,0 +1,16 @@
1
+
2
+# RC-code-dat
3
+
4
+## working for
5
+
6
+- [[SDR1064-dat]]
7
+
8
+## code
9
+
10
+- [[PWM-1ch.ino]] - [[PWM-2ch.ino]] - [[PWM-2ch-v2.ino]]
11
+
12
+## ref
13
+
14
+- [[PWM-dat]]
15
+
16
+- [[RC-dat]]
... ...
\ No newline at end of file
Tech-dat/Network-dat/RC-dat/RC-code-dat/rover-1.ino
... ...
@@ -0,0 +1,94 @@
1
+// Define pins for each RC channel
2
+int aileronPin = 14; // Channel 1 (Throttle)
3
+int elevatorPin = 12; // Channel 2 (Steering)
4
+
5
+const int ENA = 5; // PWM for speed for Motor 1
6
+const int ENB = 4; // PWM for speed for Motor 2
7
+
8
+const int IN1 = 0; // Direction for Motor 1
9
+const int IN2 = 2; // Direction pin 1 for Motor 2
10
+
11
+long aileronControl; // Mapped value from aileron channel (0-100)
12
+long elevatorControl; // Mapped value from elevator channel (0-100)
13
+
14
+// Reads the PWM signal from the aileron channel and maps it to 0-100
15
+long readAileronControlSignal() {
16
+ unsigned long rawPWM = pulseIn(aileronPin, HIGH, 25000);
17
+ // If signal is lost (timeout) or clearly out of valid RC pulse range, return neutral (50)
18
+ if (rawPWM == 0 || rawPWM < 900 || rawPWM > 2100) {
19
+ return 50; // Mid-point for 0-100 scale
20
+ }
21
+ long constrainedPWM = constrain(rawPWM, 1000, 2000);
22
+ return map(constrainedPWM, 1000, 2000, 0, 100);
23
+}
24
+
25
+// Reads the PWM signal from the elevator channel and maps it to 0-100
26
+long readElevatorControlSignal() {
27
+ unsigned long rawPWM = pulseIn(elevatorPin, HIGH, 25000);
28
+ // If signal is lost (timeout) or clearly out of valid RC pulse range, return neutral (50)
29
+ if (rawPWM == 0 || rawPWM < 900 || rawPWM > 2100) {
30
+ return 50; // Mid-point for 0-100 scale
31
+ }
32
+ long constrainedPWM = constrain(rawPWM, 1000, 2000);
33
+ return map(constrainedPWM, 1000, 2000, 0, 100);
34
+}
35
+
36
+void setup() {
37
+ pinMode(aileronPin, INPUT);
38
+ pinMode(elevatorPin, INPUT);
39
+
40
+ pinMode(ENA, OUTPUT);
41
+ pinMode(ENB, OUTPUT);
42
+ pinMode(IN1, OUTPUT);
43
+ pinMode(IN2, OUTPUT);
44
+
45
+ // Initialize motors to off
46
+ digitalWrite(IN1, LOW);
47
+ digitalWrite(IN2, LOW);
48
+ analogWrite(ENA, 0);
49
+ analogWrite(ENB, 0);
50
+}
51
+
52
+// Helper function to control a single motor
53
+// pwmVal: -255 (full backward) to 255 (full forward)
54
+void setMotorOutput(int dirPin, int speedPin, int pwmVal) {
55
+ if (pwmVal > 0) { // Forward
56
+ digitalWrite(dirPin, HIGH);
57
+ analogWrite(speedPin, pwmVal);
58
+ } else if (pwmVal < 0) { // Backward
59
+ digitalWrite(dirPin, LOW);
60
+ analogWrite(speedPin, -pwmVal); // Speed is positive
61
+ } else { // Stop
62
+ digitalWrite(dirPin, LOW);
63
+ analogWrite(speedPin, 0);
64
+ }
65
+}
66
+
67
+void loop() {
68
+ // Read mapped control signals from each channel
69
+ aileronControl = readAileronControlSignal(); // Throttle (0-100, 50 is neutral)
70
+ elevatorControl = readElevatorControlSignal(); // Steering (0-100, 50 is neutral)
71
+
72
+ // Map control values directly
73
+ // aileronControl (0-100) to throttleValue (-255 to 255)
74
+ // 0 -> -255 (full reverse), 50 -> 0 (stop), 100 -> 255 (full forward)
75
+ long throttleValue = map(aileronControl, 0, 100, -255, 255);
76
+
77
+ // elevatorControl (0-100) to steeringValue (-255 to 255)
78
+ // 0 -> -255 (full left turn effect), 50 -> 0 (straight), 100 -> 255 (full right turn effect)
79
+ long steeringValue = map(elevatorControl, 0, 100, -255, 255);
80
+
81
+ // Mix throttle and steering for differential drive
82
+ long motor1Pwm = throttleValue + steeringValue;
83
+ long motor2Pwm = throttleValue - steeringValue;
84
+
85
+ // Constrain PWM values to the valid range [-255, 255]
86
+ motor1Pwm = constrain(motor1Pwm, -255, 255);
87
+ motor2Pwm = constrain(motor2Pwm, -255, 255);
88
+
89
+ // Set motor speeds and directions
90
+ setMotorOutput(IN1, ENA, motor1Pwm); // Motor 1
91
+ setMotorOutput(IN2, ENB, motor2Pwm); // Motor 2
92
+
93
+ delay(20); // Delay for responsiveness
94
+}
... ...
\ No newline at end of file
Tech-dat/Network-dat/RC-dat/RC-code-dat/rover-2.ino
... ...
@@ -0,0 +1,170 @@
1
+#include <Adafruit_NeoPixel.h>
2
+
3
+// Define pins for each RC channel
4
+int aileronPin = 14; // Channel 1 (Throttle)
5
+int elevatorPin = 12; // Channel 2 (Steering)
6
+
7
+const int ENA = 5; // PWM for speed for Motor 1
8
+const int ENB = 4; // PWM for speed for Motor 2
9
+
10
+const int IN1 = 0; // Direction for Motor 1
11
+const int IN2 = 2; // Direction pin 1 for Motor 2
12
+
13
+// WS2812 LED Strip Configuration
14
+#define LED_PIN 15
15
+#define LED_COUNT 8
16
+Adafruit_NeoPixel strip(LED_COUNT, LED_PIN, NEO_GRB + NEO_KHZ800);
17
+
18
+long aileronControl; // Mapped value from aileron channel (0-100)
19
+long elevatorControl; // Mapped value from elevator channel (0-100)
20
+
21
+// Reads the PWM signal from the aileron channel and maps it to 0-100
22
+long readAileronControlSignal() {
23
+ unsigned long rawPWM = pulseIn(aileronPin, HIGH, 25000);
24
+ // If signal is lost (timeout) or clearly out of valid RC pulse range, return neutral (50)
25
+ // Valid RC pulses are typically 1000-2000us. Values outside ~900-2100us are treated as invalid.
26
+ if (rawPWM == 0 || rawPWM < 900 || rawPWM > 2100) {
27
+ return 50; // Mid-point for 0-100 scale (1500us equivalent), results in stop
28
+ }
29
+ // Otherwise, the signal is likely valid; constrain it to the standard 1000-2000us range and map
30
+ long constrainedPWM = constrain(rawPWM, 1000, 2000);
31
+ return map(constrainedPWM, 1000, 2000, 0, 100);
32
+}
33
+
34
+// Reads the PWM signal from the elevator channel and maps it to 0-100
35
+long readElevatorControlSignal() {
36
+ unsigned long rawPWM = pulseIn(elevatorPin, HIGH, 25000);
37
+ // If signal is lost (timeout) or clearly out of valid RC pulse range, return neutral (50)
38
+ // Valid RC pulses are typically 1000-2000us. Values outside ~900-2100us are treated as invalid.
39
+ if (rawPWM == 0 || rawPWM < 900 || rawPWM > 2100) {
40
+ return 50; // Mid-point for 0-100 scale (1500us equivalent), results in stop
41
+ }
42
+ // Otherwise, the signal is likely valid; constrain it to the standard 1000-2000us range and map
43
+ long constrainedPWM = constrain(rawPWM, 1000, 2000);
44
+ return map(constrainedPWM, 1000, 2000, 0, 100);
45
+}
46
+
47
+void setup() {
48
+ pinMode(aileronPin, INPUT);
49
+ pinMode(elevatorPin, INPUT); // Initialize elevator pin
50
+
51
+ pinMode(ENA, OUTPUT);
52
+ pinMode(ENB, OUTPUT);
53
+ pinMode(IN1, OUTPUT);
54
+ pinMode(IN2, OUTPUT);
55
+
56
+ // Initialize motors to off
57
+ digitalWrite(IN1, LOW);
58
+ digitalWrite(IN2, LOW);
59
+ analogWrite(ENA, 0);
60
+ analogWrite(ENB, 0);
61
+
62
+ Serial.begin(9600);
63
+
64
+ strip.begin(); // INITIALIZE NeoPixel strip object (REQUIRED)
65
+ strip.show(); // Turn OFF all pixels ASAP
66
+ strip.setBrightness(50); // Set BRIGHTNESS to about 1/5 (max = 255)
67
+}
68
+
69
+// Helper function to control a single motor
70
+// pwmVal: -255 (full backward) to 255 (full forward)
71
+void setMotorOutput(int dirPin, int speedPin, int pwmVal) {
72
+ if (pwmVal > 0) { // Forward
73
+ digitalWrite(dirPin, HIGH);
74
+ analogWrite(speedPin, pwmVal);
75
+ } else if (pwmVal < 0) { // Backward
76
+ digitalWrite(dirPin, LOW);
77
+ analogWrite(speedPin, -pwmVal); // Speed is positive
78
+ } else { // Stop
79
+ digitalWrite(dirPin, LOW); // Or HIGH, doesn't matter much if speed is 0
80
+ analogWrite(speedPin, 0);
81
+ }
82
+}
83
+
84
+// Helper function to map RC control input (0-100) to an output range (e.g., -255 to 255)
85
+// with a deadband around the center (e.g., 50).
86
+long mapWithDeadband(long rcValue, int rcMin, int rcMax, int rcCenter, int deadbandRadius, int outMin, int outMax) {
87
+ long mappedValue = 0;
88
+ int deadbandLower = rcCenter - deadbandRadius;
89
+ int deadbandUpper = rcCenter + deadbandRadius;
90
+
91
+ if (rcValue < deadbandLower) {
92
+ // Map the range [rcMin, deadbandLower - 1] to [outMin, -1]
93
+ // Ensure deadbandLower - 1 is not less than rcMin
94
+ if (deadbandLower -1 < rcMin) {
95
+ mappedValue = outMin;
96
+ } else {
97
+ mappedValue = map(rcValue, rcMin, deadbandLower - 1, outMin, -1);
98
+ }
99
+ } else if (rcValue > deadbandUpper) {
100
+ // Map the range [deadbandUpper + 1, rcMax] to [1, outMax]
101
+ // Ensure deadbandUpper + 1 is not greater than rcMax
102
+ if (deadbandUpper + 1 > rcMax) {
103
+ mappedValue = outMax;
104
+ } else {
105
+ mappedValue = map(rcValue, deadbandUpper + 1, rcMax, 1, outMax);
106
+ }
107
+ } else {
108
+ // Inside deadband
109
+ mappedValue = 0;
110
+ }
111
+ return constrain(mappedValue, outMin, outMax);
112
+}
113
+
114
+// Function to create a random blinking effect for WS2812 LEDs
115
+void randomBlinkEffect() {
116
+ for (int i = 0; i < LED_COUNT; i++) {
117
+ // Turn on a random LED with a random color
118
+ if (random(0, 2) == 1) { // 50% chance to turn on this LED
119
+ strip.setPixelColor(i, strip.Color(random(0, 256), random(0, 256), random(0, 256)));
120
+ } else {
121
+ strip.setPixelColor(i, strip.Color(0, 0, 0)); // Turn off
122
+ }
123
+ }
124
+ strip.show(); // Send the updated pixel colors to the hardware.
125
+ delay(100); // Wait a short period
126
+}
127
+
128
+void loop() {
129
+ // Read mapped control signals from each channel
130
+ aileronControl = readAileronControlSignal(); // Throttle (0-100)
131
+ elevatorControl = readElevatorControlSignal(); // Steering (0-100)
132
+
133
+ // Print the mapped control signal values to the Serial Monitor
134
+ Serial.print("Aileron (Throttle): ");
135
+ Serial.print(aileronControl);
136
+ Serial.print(" Elevator (Steering): ");
137
+ Serial.print(elevatorControl);
138
+ Serial.println();
139
+
140
+ // Define deadband radius (e.g., +/- 5 around center of 50 for a 0-100 input)
141
+ // This means input values from 45 to 55 (inclusive if center is 50 and radius is 5) will be treated as 0.
142
+ int deadbandRadius = 15;
143
+ float steeringFactor = 3; // Adjust this value to change steering sensitivity
144
+ float throttleFactor = 3; // Adjust this value to change throttle sensitivity (e.g., 1.2 for 20% stronger throttle)
145
+
146
+ // Map control values with deadband
147
+ long rawThrottleValue = mapWithDeadband(aileronControl, 0, 100, 50, deadbandRadius, -255, 255);
148
+ long rawSteeringValue = mapWithDeadband(elevatorControl, 0, 100, 50, deadbandRadius, -255, 255);
149
+
150
+ // Apply sensitivity factors
151
+ long throttleValue = rawThrottleValue * throttleFactor;
152
+ long adjustedSteeringValue = rawSteeringValue * steeringFactor;
153
+
154
+ // Mix throttle and steering for differential drive
155
+ long motor1Pwm = throttleValue + adjustedSteeringValue;
156
+ long motor2Pwm = throttleValue - adjustedSteeringValue;
157
+
158
+ // Constrain PWM values to the valid range [-255, 255]
159
+ motor1Pwm = constrain(motor1Pwm, -255, 255);
160
+ motor2Pwm = constrain(motor2Pwm, -255, 255);
161
+
162
+ // Set motor speeds and directions
163
+ setMotorOutput(IN1, ENA, motor1Pwm); // Motor 1
164
+ setMotorOutput(IN2, ENB, motor2Pwm); // Motor 2
165
+
166
+ // Add the LED effect
167
+ randomBlinkEffect();
168
+
169
+ delay(20); // Shorter delay for better responsiveness
170
+}
... ...
\ No newline at end of file
Tech-dat/Network-dat/RC-dat/RC-dat.md
... ...
@@ -0,0 +1,35 @@
1
+
2
+# RC-dat
3
+
4
+
5
+## RC - apps
6
+
7
+- [[rover-dat]] - [[RC-car-dat]] - [[RC-car-hack-dat]] - [[video-rc-car-dat]]
8
+
9
+- [[quadcopter-dat]] - [[FPV-dat]]
10
+
11
+- [[airplane-dat]]
12
+
13
+- [[UAV-dat]]
14
+
15
+
16
+
17
+
18
+
19
+## RC - signal
20
+
21
+- [[RC-signal-dat]]
22
+
23
+## RC - systems
24
+
25
+- [[ardupilot-dat]]
26
+
27
+## RC - Hardware
28
+
29
+- [[flight-controller-dat]] - [[RC-link-dat]]
30
+
31
+- [[BMS-dat]] - [[battery-dat]]
32
+
33
+## RC - manufacturers
34
+
35
+- [[Wfly-dat]] - [[betaFPV-dat]] - [[speedybee-dat]]
... ...
\ No newline at end of file
Tech-dat/Network-dat/RC-dat/RC-link-dat/2025-05-23-16-14-35.png
... ...
Binary files /dev/null and b/Tech-dat/Network-dat/RC-dat/RC-link-dat/2025-05-23-16-14-35.png differ
Tech-dat/Network-dat/RC-dat/RC-link-dat/RC-link-dat.md
... ...
@@ -0,0 +1,48 @@
1
+
2
+# RC-link-dat
3
+
4
+- [[Wfly-dat]] - [[WFT06x-dat]] - [[WFR06S-dat]]
5
+
6
+## RC Tx
7
+
8
+- [[PX4-dat]]
9
+
10
+![](2025-05-23-16-14-35.png)
11
+
12
+
13
+
14
+## RC Receiver
15
+
16
+When you push the **RC console (joystick or stick) up and down**, you're typically controlling the throttle or elevator channel, depending on the mode of your transmitter. The PWM (Pulse Width Modulation) signal output sent to the receiver or flight controller varies accordingly:
17
+
18
+PWM signal range: ~1000 ยตs (microseconds) to ~2000 ยตs
19
+
20
+ Center/stick neutral: ~1500 ยตs
21
+
22
+ Stick fully down: ~1000 ยตs
23
+
24
+ Stick fully up: ~2000 ยตs
25
+
26
+Example:
27
+
28
+If you're using Mode 2 (common mode):
29
+
30
+Left stick up/down = Throttle
31
+
32
+ Stick down = 1000 ยตs (zero throttle)
33
+
34
+ Stick up = 2000 ยตs (full throttle)
35
+
36
+If it's controlling elevator (pitch):
37
+
38
+ Stick down (nose down) = 1000 ยตs
39
+
40
+ Stick up (nose up) = 2000 ยตs
41
+
42
+
43
+
44
+## ref
45
+
46
+- https://docs.px4.io/v1.11/en/getting_started/rc_transmitter_receiver.html
47
+
48
+- [[RC-dat]]
... ...
\ No newline at end of file
Tech-dat/Network-dat/RC-dat/RC-signal-dat/CRSF-dat/CRSF-dat.md
... ...
@@ -0,0 +1,74 @@
1
+
2
+# CRSF-dat
3
+
4
+CRSF (Crossfire Serial Protocol) is a low-latency, high-speed serial protocol developed by **Team BlackSheep (TBS)** for communication between radio receivers (like TBS Crossfire Nano RX) and flight controllers.
5
+
6
+Itโ€™s used in RC applications (especially FPV drones) to transmit RC channel data, telemetry, and link status over a compact serial format.
7
+
8
+CRSF packets are binary data. Here's the basic structure of a CRSF packet:
9
+
10
+## CRSF Packet Structure (General)
11
+
12
+| Byte Index | Name | Description |
13
+|------------|----------------|---------------------------------------------|
14
+| 0 | Device Address | Who is sending (e.g., RX, TX) |
15
+| 1 | Frame Length | Length of payload + 1 (type byte + data) |
16
+| 2 | Frame Type | Type of data (e.g., RC channels, telemetry) |
17
+| 3 - N | Payload | Actual data, varies by Frame Type |
18
+| Last Byte | CRC | Checksum for packet validation |
19
+
20
+
21
+This is how a typical RC channel data packet might look (in hex):
22
+
23
+C8 18 16 A1 84 3F C1 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 9E
24
+
25
+## RC Channel Encoding (Packed 11-bit)
26
+
27
+Each RC channel is packed as 11-bit little-endian integers, with up to 16 channels per frame. Example values:
28
+
29
+- 1000 โ†’ channel center
30
+- 172 โ†’ min
31
+- 1811 โ†’ max
32
+
33
+## read data via serial
34
+
35
+Yes, you can use a serial port to read CRSF data, because CRSF is a serial protocol โ€” specifically, a half-duplex, asynchronous UART protocol using 8N1 (8 data bits, no parity, 1 stop bit).
36
+
37
+### ๐Ÿ“ก CRSF over Serial โ€“ Quick Guide
38
+
39
+- **Baud rate**: 420000 or 115200 (depends on TX/RX version or setting)
40
+- **Protocol**: UART (8N1)
41
+- **Signal direction**: Half-duplex (same wire for TX and RX)
42
+- **Voltage**: 3.3V (NOT 5V safe on most Crossfire receivers)
43
+- **Typical usage**: Read CRSF data from TBS Nano RX or TX
44
+
45
+#### ๐Ÿงฐ What You Need:
46
+- A microcontroller or board with UART support (e.g., Arduino, ESP32, STM32, Raspberry Pi)
47
+- Logic-level conversion (if needed for 3.3V safety)
48
+- CRSF-compatible device (e.g., TBS Crossfire Nano RX)
49
+
50
+Code Concept (Pseudocode)
51
+
52
+
53
+ Serial.begin(420000); // Or 115200 for some TX modules
54
+
55
+ void loop() {
56
+ if (Serial.available()) {
57
+ uint8_t byte = Serial.read();
58
+ // Process CRSF packet bytes here
59
+ }
60
+ }
61
+
62
+
63
+
64
+## via ardupilot
65
+
66
+If you wish to use telemetry then a receiver can be connected to a UART utilizing the CRSF protocol.
67
+
68
+CRSF is a full-duplex protocol that supports integrated telemetry and a number of other features. Connect the RX pin of the UART to the CRSF TX pin of the CRSF device and vice versa. Currently a full-duplex UART connection is required. For best performance a UART with DMA capability on its RX port is desirable, but not required. A message will be displayed once on the GCS console, if connected to a UART without this capability on an F4/F7 based autopilot.
69
+
70
+https://ardupilot.org/rover/docs/common-tbs-rc.html#common-tbs-rc
71
+
72
+## ref
73
+
74
+- [[FPV-dat]]
... ...
\ No newline at end of file
Tech-dat/Network-dat/RC-dat/RC-signal-dat/ELRS-dat/2025-04-25-17-30-48.png
... ...
Binary files /dev/null and b/Tech-dat/Network-dat/RC-dat/RC-signal-dat/ELRS-dat/2025-04-25-17-30-48.png differ
Tech-dat/Network-dat/RC-dat/RC-signal-dat/ELRS-dat/2025-05-04-15-29-54.png
... ...
Binary files /dev/null and b/Tech-dat/Network-dat/RC-dat/RC-signal-dat/ELRS-dat/2025-05-04-15-29-54.png differ
Tech-dat/Network-dat/RC-dat/RC-signal-dat/ELRS-dat/2025-05-04-15-31-56.png
... ...
Binary files /dev/null and b/Tech-dat/Network-dat/RC-dat/RC-signal-dat/ELRS-dat/2025-05-04-15-31-56.png differ
Tech-dat/Network-dat/RC-dat/RC-signal-dat/ELRS-dat/ELRS-915M-dat.md
... ...
@@ -0,0 +1,4 @@
1
+
2
+# ELRS-915M-dat.md
3
+
4
+![](2025-04-25-17-30-48.png)
... ...
\ No newline at end of file
Tech-dat/Network-dat/RC-dat/RC-signal-dat/ELRS-dat/ELRS-HF-RF-Module-dat/2025-05-16-13-30-09.png
... ...
Binary files /dev/null and b/Tech-dat/Network-dat/RC-dat/RC-signal-dat/ELRS-dat/ELRS-HF-RF-Module-dat/2025-05-16-13-30-09.png differ
Tech-dat/Network-dat/RC-dat/RC-signal-dat/ELRS-dat/ELRS-HF-RF-Module-dat/ELRS-HF-RF-Module-dat.md
... ...
@@ -0,0 +1,10 @@
1
+
2
+# ELRS-HF-RF-Module-dat
3
+
4
+1.่ฟžๆŽฅUSB,้ซ˜้ข‘ๅคดๆ— ้œ€ๅฆๅค–ไพ›็”ต๏ผŒ็ฌฌไธ€ๆฌก่ฟžๆŽฅ็”ต่„‘ๅฆ‚ๆžœไฝ ็š„็ณป็ปŸๆ˜ฏwindows 10ๆˆ–ไปฅไธŠๅนถๅค„ไบŽ่”็ฝ‘็Šถๆ€ไธ‹๏ผŒ็”ต่„‘ไผš่‡ชๅŠจๅฎ‰่ฃ…ๅไธบCH9102็š„USB-TTL้ฉฑๅŠจ๏ผŒๅˆทๅ†™ๅ›บไปถๆ— ้œ€ไปปไฝ•ๆŒ‰้”ฎ่ฟ›ๅ…ฅboot,ๅˆทๅ†™ๅ†…็ฝฎ็š„๏ผŒๅนถไธ”ๅˆทๅ†™ๅ†…็ฝฎBackpackไนŸๆ— ้œ€ๆŒ‰ไปปไฝ•ๆŒ‰้”ฎๅ’Œๆ‹จ็ ๅผ€ๅ…ณ,ๅ› ไธบๆˆ‘ไปฌๅœจๅ†…้ƒจ่ฎพ่ฎกไบ†่‡ชๅŠจๆฟ€ๆดปๅˆทๆœบๆจกๅผ็”ต่ทฏไธŽๅˆท่ƒŒๅŒ…ๅ›บไปถ็›ด้€šๆจกๅผ
5
+
6
+![](2025-05-16-13-30-09.png)
7
+
8
+## ref
9
+
10
+- [[ESP8266-dat]]
... ...
\ No newline at end of file
Tech-dat/Network-dat/RC-dat/RC-signal-dat/ELRS-dat/ELRS-PWM-dat/2025-04-25-17-34-11.png
... ...
Binary files /dev/null and b/Tech-dat/Network-dat/RC-dat/RC-signal-dat/ELRS-dat/ELRS-PWM-dat/2025-04-25-17-34-11.png differ
Tech-dat/Network-dat/RC-dat/RC-signal-dat/ELRS-dat/ELRS-PWM-dat/2025-05-12-14-23-11.png
... ...
Binary files /dev/null and b/Tech-dat/Network-dat/RC-dat/RC-signal-dat/ELRS-dat/ELRS-PWM-dat/2025-05-12-14-23-11.png differ
Tech-dat/Network-dat/RC-dat/RC-signal-dat/ELRS-dat/ELRS-PWM-dat/2025-05-16-13-31-40.png
... ...
Binary files /dev/null and b/Tech-dat/Network-dat/RC-dat/RC-signal-dat/ELRS-dat/ELRS-PWM-dat/2025-05-16-13-31-40.png differ
Tech-dat/Network-dat/RC-dat/RC-signal-dat/ELRS-dat/ELRS-PWM-dat/2025-05-16-13-32-31.png
... ...
Binary files /dev/null and b/Tech-dat/Network-dat/RC-dat/RC-signal-dat/ELRS-dat/ELRS-PWM-dat/2025-05-16-13-32-31.png differ
Tech-dat/Network-dat/RC-dat/RC-signal-dat/ELRS-dat/ELRS-PWM-dat/2025-05-16-13-33-12.png
... ...
Binary files /dev/null and b/Tech-dat/Network-dat/RC-dat/RC-signal-dat/ELRS-dat/ELRS-PWM-dat/2025-05-16-13-33-12.png differ
Tech-dat/Network-dat/RC-dat/RC-signal-dat/ELRS-dat/ELRS-PWM-dat/7CH.json
... ...
@@ -0,0 +1,32 @@
1
+{
2
+ "customised": "true",
3
+ "serial_rx": -1,
4
+ "serial_tx": -1,
5
+ "radio_dio1": 4,
6
+ "radio_miso": 12,
7
+ "radio_mosi": 13,
8
+ "radio_nss": 15,
9
+ "radio_rst": 2,
10
+ "radio_sck": 14,
11
+ "power_min": 0,
12
+ "power_high": 0,
13
+ "power_max": 0,
14
+ "power_default": 0,
15
+ "power_control": 0,
16
+ "power_values": [
17
+ 13
18
+ ],
19
+ "led": 16,
20
+ "pwm_outputs": [
21
+ 0,
22
+ 1,
23
+ 3,
24
+ 9,
25
+ 10,
26
+ 5,
27
+ 16
28
+ ],
29
+ "vbat": 17,
30
+ "vbat_offset": 12,
31
+ "vbat_scale": 310
32
+}
... ...
\ No newline at end of file
Tech-dat/Network-dat/RC-dat/RC-signal-dat/ELRS-dat/ELRS-PWM-dat/CRSF.json
... ...
@@ -0,0 +1 @@
1
+{"customised":"true","serial_rx":3,"serial_tx":1,"radio_dio1":4,"radio_miso":12,"radio_mosi":13,"radio_nss":15,"radio_rst":2,"radio_sck":14,"power_min":0,"power_high":0,"power_max":0,"power_default":0,"power_control":0,"power_values":[13],"led":16,"pwm_outputs":[-1],"vbat":17,"vbat_offset":12,"vbat_scale":310}
... ...
\ No newline at end of file
Tech-dat/Network-dat/RC-dat/RC-signal-dat/ELRS-dat/ELRS-PWM-dat/ELRS-PWM-dat.md
... ...
@@ -0,0 +1,73 @@
1
+
2
+# ELRS-CHS-PWM-dat.md
3
+
4
+![](2025-04-25-17-34-11.png)
5
+
6
+![](2025-05-12-14-23-11.png)
7
+
8
+## Electrodragon 7CH PWM ELRS Receiver
9
+
10
+
11
+Electrodragon ELRS 2.4G Receiver, Seven-Channel PWM Receiver
12
+
13
+This receiver features independent PWM channel outputs, suitable for fixed-wing aircraft, cars, boats, and other models. It also supports CRSF output. The two output signals (PWM and CRSF) can be switched without re-flashing the firmware.
14
+
15
+Follow these steps to switch between PWM (6CH/7CH) and CRSF modes:
16
+
17
+**Accessing the Receiver's Wi-Fi Network:**
18
+
19
+1. **If connected to the high-frequency head (transmitter module):** Use the transmitter's LUA script menu to activate the receiver's Wi-Fi.
20
+2. **If not connected to the high-frequency head:** Power on the receiver and wait for one minute. The receiver will automatically enter Wi-Fi mode.
21
+
22
+**Connecting to the Receiver's Wi-Fi:**
23
+
24
+* Search for Wi-Fi networks on your computer or phone.
25
+* **Wi-Fi Hotspot Name (SSID):** `EXPRESSLRSRX`
26
+* **Connection Password (all lowercase):** `expresslrs`
27
+
28
+**Accessing the Configuration Page:**
29
+
30
+* Open a web browser and go to: `http://10.0.0.1/hardware.html`
31
+
32
+**Configuring the Receiver:**
33
+
34
+* This will take you to the ELRS hardware configuration page where you can import hardware configuration files.
35
+* **Caution:** Do not modify parameters yourself unless you fully understand their meaning.
36
+* Import the provided configuration file for either `PWM7CH` or `CRSF`.
37
+* Click the button at the bottom of the page and wait for the receiver to restart automatically.
38
+
39
+
40
+
41
+## custom PWM setup
42
+
43
+![](2025-05-16-13-31-40.png)
44
+
45
+![](2025-05-16-13-32-31.png)
46
+
47
+
48
+## setup for [[ELRS-HF-RF-module-dat]]
49
+
50
+![](2025-05-16-13-33-12.png)
51
+
52
+## configuration file
53
+
54
+- [[7CH.json]] - [[CRSF.json]]
55
+
56
+the pwm channels
57
+
58
+ "pwm_outputs": [
59
+ 0,
60
+ 1,
61
+ 3,
62
+ 9,
63
+ 10,
64
+ 5,
65
+ 16
66
+ ],
67
+
68
+
69
+
70
+
71
+## ref
72
+
73
+- [[ELRS-PWM]] - [[ELRS]]
Tech-dat/Network-dat/RC-dat/RC-signal-dat/ELRS-dat/ELRS-RX-dat/2025-04-25-16-52-56.png
... ...
Binary files /dev/null and b/Tech-dat/Network-dat/RC-dat/RC-signal-dat/ELRS-dat/ELRS-RX-dat/2025-04-25-16-52-56.png differ
Tech-dat/Network-dat/RC-dat/RC-signal-dat/ELRS-dat/ELRS-RX-dat/2025-04-25-16-55-05.png
... ...
Binary files /dev/null and b/Tech-dat/Network-dat/RC-dat/RC-signal-dat/ELRS-dat/ELRS-RX-dat/2025-04-25-16-55-05.png differ
Tech-dat/Network-dat/RC-dat/RC-signal-dat/ELRS-dat/ELRS-RX-dat/2025-05-08-18-22-08.png
... ...
Binary files /dev/null and b/Tech-dat/Network-dat/RC-dat/RC-signal-dat/ELRS-dat/ELRS-RX-dat/2025-05-08-18-22-08.png differ
Tech-dat/Network-dat/RC-dat/RC-signal-dat/ELRS-dat/ELRS-RX-dat/2025-05-16-12-57-47.png
... ...
Binary files /dev/null and b/Tech-dat/Network-dat/RC-dat/RC-signal-dat/ELRS-dat/ELRS-RX-dat/2025-05-16-12-57-47.png differ
Tech-dat/Network-dat/RC-dat/RC-signal-dat/ELRS-dat/ELRS-RX-dat/ELRS-RX-dat.md
... ...
@@ -0,0 +1,90 @@
1
+
2
+# ELRS-RX-dat
3
+
4
+
5
+## T-anntena version
6
+
7
+![](2025-04-25-16-52-56.png)
8
+
9
+
10
+- [[antenna-dat]]
11
+
12
+## SMD antenna version
13
+
14
+## info
15
+
16
+Nano2400-RX receiver with power amplifier (PA+LNA).
17
+
18
+Therefore, it has 100mW telemetry output and better sensitivity at longer distances.
19
+
20
+It uses an IPEX1 antenna connector.
21
+
22
+Paired with an external dipole T-antenna (customized by a professional factory, each antenna is tested with professional instruments to ensure quality, lightness, and durability).
23
+
24
+The CYCLONE series receivers are based on the open-source architecture and program of ExpressLRS.
25
+
26
+We have released 3 types of RX receiver modules. All use the [[ESP8285-dat]] [[MCU-dat]]. You can upgrade the firmware via [[WIFI-dat]], which is very user-friendly.
27
+
28
+## hotspot
29
+
30
+Typically, after powering the receiver and with the remote controller turned off, the ExpressLRS hotspot can be found after a default of 60 seconds. Connect to this hotspot using a computer or mobile phone.
31
+
32
+The password is "expresslrs", and then you can access 10.0.0.1 to upload the receiver firmware.
33
+
34
+![](2025-05-08-18-22-08.png)
35
+
36
+## serial
37
+
38
+Runtime Options
39
+
40
+This form overrides the options provided when the firmware was flashed. These changes will persist across reboots, but will be reset when the firmware is reflashed.
41
+
42
+WiFi auto on" interval in seconds (leave blank to disable) == 60
43
+UART baud == 420000 = 420K
44
+
45
+
46
+## Product Features
47
+
48
+- High refresh rate 100mW telemetry output;
49
+- Supports convenient and fast firmware flashing via WIFI connection;
50
+- Firmware Version: 3.3.0 [BETAFPVLite2400RX]
51
+- Equipped with a power amplifier (PA+LNA), providing 100mW telemetry output and better response speed;
52
+- Theoretically compatible with most ELRS 2.4G transmitter modules on the market (requires firmware version 2.0 or above).
53
+
54
+![](2025-04-25-16-55-05.png)
55
+
56
+
57
+
58
+## supported modules
59
+
60
+![](2025-05-16-12-57-47.png)
61
+## FAQ
62
+
63
+1. **Q: Can this receiver be bound to a XXX brand's high-frequency head (transmitter module)?**
64
+ A: The ELRS project is open source. Therefore, as long as the high-frequency head uses the ELRS protocol, regardless of the brand, it can be bound. However, three conditions must be met:
65
+ * The frequency must be the same, either both 2.4G or both 915MHz.
66
+ * The firmware version must be consistent. For example, if the high-frequency head is flashed with firmware version 2.5.0, the receiver must also be flashed with firmware version 2.5.0.
67
+ * Either both have no binding phrase, or both have the same binding phrase set.
68
+
69
+2. **Q: How do I enter binding mode?**
70
+ A: After soldering the receiver, quickly power cycle the aircraft three times. That is: power on then immediately power off, power on then immediately power off, power on and leave it on. The interval between power cycles should be within 1.5 seconds. If done correctly, the receiver's LED will flash rapidly twice in a cycle, indicating it is in binding mode. At this time, press the bind button in the remote controller's script. If binding is successful, the receiver's LED will turn solid.
71
+
72
+3. **Q: I'm using my receiver for the first time, why can't I enter binding mode? The light stays solid. What's wrong?**
73
+ A: We have encountered similar issues in after-sales support. We found that some flight controllers have abnormal TX/RX ports, causing the receiver to enter bootloader/flash mode upon power-up. In this case, simply changing to a different TX/RX port on the flight controller can solve the problem.
74
+
75
+4. **Q: Why is my receiver's light always flashing rapidly?**
76
+ A: If you power on the receiver and it does not enter binding mode, or if it's already bound but the remote controller is not turned on, the receiver will enter WiFi flashing mode after 60 seconds without a signal, and the indicator light will flash rapidly.
77
+
78
+5. **Q: How do I enter WiFi flashing mode to flash firmware to the receiver?**
79
+ A: Same as the answer above. Power on the receiver and leave it. It will automatically enter WiFi flashing mode in about 60 seconds, and the light will flash rapidly.
80
+
81
+
82
+## Versions
83
+
84
+- Firmware Rev. 3.5.2 (7ac5f4)
85
+
86
+
87
+
88
+## ref
89
+
90
+- [[ELRS-dat]]
... ...
\ No newline at end of file
Tech-dat/Network-dat/RC-dat/RC-signal-dat/ELRS-dat/ELRS-TX-dat/ELRS-TX-dat.md
... ...
@@ -0,0 +1,14 @@
1
+
2
+# ELRS-TX-dat
3
+
4
+- [[radiomaster-dat]]
5
+
6
+radiomaster guide
7
+
8
+https://www.expresslrs.org/quick-start/transmitters/rm-ranger/
9
+
10
+
11
+
12
+## ref
13
+
14
+- [[ELRS-dat]]
... ...
\ No newline at end of file
Tech-dat/Network-dat/RC-dat/RC-signal-dat/ELRS-dat/ELRS-dat.md
... ...
@@ -0,0 +1,170 @@
1
+
2
+# ELRS-dat
3
+
4
+Info - [[ELRS-frequency-dat]] - [[ELRS-faq-dat]]
5
+
6
+
7
+## ELRS-link
8
+
9
+ELRS-remote-console-tx
10
+
11
+- BETAFPV literadio 3
12
+- BETAFPV literadio 2
13
+
14
+- [[edge-tx-dat]] - [[radiomaster-dat]] - [[lightradio-dat]]
15
+
16
+- [[ELRS-RX-dat]] - [[SX1276-dat]] - [[ESP8285-dat]] - [[ESP32-dat]] - [[SX1281-dat]] - [[SX1208-dat]]
17
+
18
+protocol output - - [[CRSF-dat]]
19
+
20
+- [[CC2500-dat]]
21
+
22
+- [[ELRS-TX-dat]] - [[ELRS-915M-dat]] - [[ELRS-PWM-dat]] - [[ELRS-2.4Ghz-dat]]
23
+
24
+- [[ELRS]]
25
+
26
+## resources
27
+
28
+https://github.com/ExpressLRS/ExpressLRS
29
+
30
+https://www.expresslrs.org/quick-start/getting-started/
31
+
32
+[ExpressLRS-Configurator-releases](https://github.com/ExpressLRS/ExpressLRS-Configurator/releases)
33
+
34
+
35
+
36
+## **ExpressLRS (ELRS) 2.4GHz Standard Explained**
37
+
38
+**ExpressLRS (ELRS) 2.4GHz** is an open-source **long-range, low-latency radio control link** developed for FPV drones and RC applications. It offers **high performance, ultra-fast response times, and robust signal reliability** compared to traditional RC protocols like FrSky, Crossfire, and Ghost.
39
+
40
+---
41
+
42
+### **๐Ÿ”น Key Features of ELRS 2.4GHz**
43
+- **Ultra-Low Latency** (~5ms in high-speed mode).
44
+- **Long-Range Performance** (Up to **30km+** with proper setup).
45
+- **High Packet Rate (Up to 1000Hz)** for **smooth & responsive controls**.
46
+- **Open-Source & Customizable** (Community-driven development).
47
+- **Affordable Hardware** (Compared to Crossfire or Ghost).
48
+- **Wide Compatibility** (Supported on many **radio transmitters & receivers**).
49
+
50
+---
51
+
52
+### **๐Ÿ”น ELRS 2.4GHz vs. Other RC Links**
53
+| Feature | ELRS 2.4GHz | TBS Crossfire | Ghost 2.4GHz | FrSky R9M |
54
+| --------------- | ------------ | ------------- | ------------ | ----------- |
55
+| **Frequency** | 2.4GHz | 900MHz | 2.4GHz | 900MHz |
56
+| **Max Range** | ~30km+ | ~50km+ | ~15km | ~10-20km |
57
+| **Latency** | 5-7ms | 15-50ms | ~4ms | ~20ms |
58
+| **Packet Rate** | Up to 1000Hz | 50-150Hz | 500Hz | ~100Hz |
59
+| **Open Source** | โœ… Yes | โŒ No | โŒ No | โŒ No |
60
+| **Cost** | ๐Ÿ’ฐ Affordable | ๐Ÿ’ฐ๐Ÿ’ฐ Expensive | ๐Ÿ’ฐ๐Ÿ’ฐ Expensive | ๐Ÿ’ฐ Mid-Range |
61
+
62
+---
63
+
64
+### **๐Ÿ”น ELRS 2.4GHz Modes & Performance**
65
+| Mode | Packet Rate | Latency | Range |
66
+| --------- | ----------- | ------- | --------------------- |
67
+| **500Hz** | 500Hz | ~5ms | Short (~3km) |
68
+| **250Hz** | 250Hz | ~7ms | Mid (~10km) |
69
+| **150Hz** | 150Hz | ~10ms | Long (~20km) |
70
+| **50Hz** | 50Hz | ~20ms | Extreme Long (~30km+) |
71
+
72
+๐Ÿ”น **Higher packet rate = Lower latency, but reduced range**
73
+๐Ÿ”น **Lower packet rate = Higher range, but increased latency**
74
+
75
+---
76
+
77
+### **๐Ÿ”น Recommended ExpressLRS 2.4GHz Hardware**
78
+#### **๐Ÿ› ๏ธ Transmitters (TX)**
79
+- **RadioMaster Zorro ELRS 2.4GHz**
80
+- **Jumper T20S (Built-in ELRS)**
81
+- **Happymodel ES24TX Pro (External ELRS Module)**
82
+- **BetaFPV ELRS Micro TX Module**
83
+
84
+#### **๐Ÿ“ก Receivers (RX)**
85
+- **Happymodel EP2 (Tiny, best for micro quads)**
86
+- **BetaFPV ELRS 2.4GHz Nano RX**
87
+- **Radiomaster RP1 / RP2 RX (Great range & reliability)**
88
+
89
+---
90
+
91
+### **๐Ÿ”น Why Choose ELRS 2.4GHz?**
92
+โœ… **Best for FPV Racing & Freestyle** โ†’ **Low latency & fast response**
93
+โœ… **Perfect for Long-Range FPV** โ†’ **Good range at lower packet rates**
94
+โœ… **Affordable & Open-Source** โ†’ **Cheaper than Crossfire & Ghost**
95
+
96
+๐Ÿš€ **If you need ultra-low latency for FPV racing or long-range performance at an affordable price, ExpressLRS 2.4GHz is the best choice!** ๐Ÿ”ฅ
97
+
98
+
99
+## 2.4hz compare to LORA 915mhz
100
+
101
+| Feature | DJI NC3 (OcuSync 2.0) | ELRS 2.4GHz (100mW) | ELRS 915MHz (100mW, SX1276) |
102
+|----------------------------|---------------------------|------------------------------|-------------------------------|
103
+| Protocol Type | Proprietary digital (DJI) | Open-source LoRa/FLRC | Open-source LoRa |
104
+| Frequency Band | 2.4GHz + 5.8GHz | 2.4GHz | 915MHz |
105
+| Max Packet Rate | N/A (digital control/video)| Up to 500Hz | Up to 50Hz |
106
+| Latency (best-case) | ~120 ms (control + video) | ~2.5 ms (500Hz) | ~20 ms (50Hz) |
107
+| Typical Latency | ~120โ€“150 ms | ~6โ€“13 ms | ~22โ€“30 ms |
108
+| Max Range (LOS, FCC) | ~10 km | ~2 km | ~10 km |
109
+| Penetration (Obstacles) | Moderate | Moderate | Strong |
110
+| Interference Resistance | High (hopping + digital) | Moderate | Strong |
111
+| Video Support | Yes (integrated) | No | No |
112
+| Use Case | DJI drones (Mini, Air) | FPV racing, freestyle | Long-range FPV, endurance |
113
+| Antenna Size | Small | Small | Larger |
114
+| Custom Flight Controllers | Not supported | Fully supported | Fully supported |
115
+
116
+
117
+โŒ No โ€” ELRS does not support 5.8GHz (as of now).
118
+
119
+- [[LORA-dat]] - [[RF-2.4ghz-dat]]
120
+
121
+- [[5.8Ghz-dat]]
122
+
123
+
124
+## WebUI Configurator
125
+
126
+[ExpressLRS Configurator](https://github.com/ExpressLRS/ExpressLRS-Configurator/releases/)
127
+
128
+[github](https://github.com/ExpressLRS/ExpressLRS)
129
+
130
+### Via "ExpressLRS RX" Access Point
131
+
132
+![](2025-05-04-15-29-54.png)
133
+
134
+Load the Web UI on your browser using these addresses:
135
+
136
+http://10.0.0.1/ - If you have connected to the ExpressLRS RX Access Point
137
+
138
+### Via button press
139
+
140
+![](2025-05-04-15-31-56.png)
141
+
142
+
143
+## Code
144
+
145
+| Method | Arduino-Friendly? | Notes |
146
+|---------------|-------------------|--------------------------------------------|
147
+| PWM Output | โœ… Yes | Easiest to use. Limited channels. |
148
+| SBUS/PPM | โœ… Yes (with lib) | Good middle ground. |
149
+| CRSF over UART| โš ๏ธ Difficult | Only feasible on fast boards (ESP32/STM32).|
150
+
151
+
152
+### โœ… Use PWM output from ELRS receiver for arduino
153
+
154
+Some ELRS receivers support PWM output, which can be read with Arduino pulseIn() or interrupts.
155
+
156
+This is much easier but limits you to a few channels (e.g., 4โ€“8).
157
+
158
+### โœ… Use CRSF over UART (advanced)
159
+If you use a faster board like Teensy, ESP32, or STM32:
160
+
161
+These can handle high baud rates and may be able to parse CRSF messages.
162
+
163
+Youโ€™d need to write or port a CRSF parser for Arduino/Teensy/ESP32.
164
+
165
+
166
+## ref
167
+
168
+- [[FPV-dat]]
169
+
170
+- [[ELRS]]
... ...
\ No newline at end of file
Tech-dat/Network-dat/RC-dat/RC-signal-dat/ELRS-dat/ELRS-faq-dat.md
... ...
@@ -0,0 +1,26 @@
1
+
2
+# ELRS-faq-dat
3
+
4
+## Frequently Asked Questions (FAQ)
5
+
6
+**Q1: Can this receiver bind with a transmitter module (TX module) from brand XXX?**
7
+**A:** The ELRS project is open-source. Therefore, as long as the TX module uses the ELRS protocol, regardless of the brand, they can bind with each other, provided three conditions are met:
8
+ 1. **Same Frequency:** Both must operate on the same frequency band (e.g., both 2.4GHz or both 915MHz).
9
+ 2. **Matching Firmware Version:** The firmware versions must be identical. For example, if the TX module is flashed with firmware version 2.5.0, the receiver must also be flashed with version 2.5.0.
10
+ 3. **Binding Phrase:** Either both devices have no binding phrase set, or they both have the exact same binding phrase configured.
11
+
12
+**Q2: How do I enter binding mode?**
13
+**A:** After soldering the receiver, quickly power cycle the aircraft three times: power on then immediately power off, power on then immediately power off, power on and leave it on. Each power cycle interval should be less than 1.5 seconds. If performed correctly, the receiver's LED will flash quickly twice in a repeating pattern, indicating it is in binding mode. Then, use the bind function/button on your remote controller (often found in the ELRS Lua script). Once binding is successful, the receiver's LED will turn solid.
14
+
15
+**Q3: The first time I used my receiver, it wouldn't enter binding mode, and the LED stayed solid. Why?**
16
+**A:** We've encountered this issue in support cases. It's often caused by an abnormality on the flight controller's TX/RX UART port, which forces the receiver into bootloader/firmware flashing mode upon power-up. Switching the receiver connection to a different, functional TX/RX UART port on the flight controller usually resolves this.
17
+
18
+**Q4: Why is my receiver's LED flashing quickly and continuously?**
19
+**A:** If the receiver is powered on but doesn't enter binding mode (or if it's already bound but the remote controller is off), it will automatically enter Wi-Fi firmware update mode after approximately 60 seconds of not receiving a signal. The fast flashing indicates Wi-Fi mode is active.
20
+
21
+**Q5: How do I enter Wi-Fi mode to update the receiver's firmware?**
22
+**A:** As mentioned above, simply power on the receiver and wait. If it doesn't connect to a transmitter within about 60 seconds, it will automatically enter Wi-Fi update mode, indicated by the rapidly flashing LED.
23
+
24
+
25
+## ref
26
+
Tech-dat/Network-dat/RC-dat/RC-signal-dat/ELRS-dat/ELRS-frequency-dat.md
... ...
@@ -0,0 +1,20 @@
1
+
2
+# ELRS-frequency-dat.md
3
+
4
+| Feature | ELRS 915MHz (LoRa) | ELRS 2.4GHz (LoRa/FLRC) |
5
+|---------------------|-----------------------------|------------------------------|
6
+| Frequency Band | 915 MHz | 2.4 GHz |
7
+| Range (LOS, 100mW) | โœ… 5โ€“10+ km | โš ๏ธ 1โ€“2 km |
8
+| Penetration | โœ… Strong (trees, buildings) | โš ๏ธ Moderate |
9
+| Latency | โŒ ~20โ€“30 ms | โœ… ~2.5โ€“13 ms |
10
+| Max Packet Rate | โŒ ~50Hz | โœ… Up to 500Hz |
11
+| Antenna Size | โŒ Large | โœ… Small |
12
+| Interference Avoidance | โœ… Less crowded band | โš ๏ธ More Wi-Fi/Bluetooth noise |
13
+| Use Case | Long-range, endurance | Freestyle, racing |
14
+| Power Efficiency | โœ… High (lower data rate) | โœ… High (LoRa + FLRC modes) |
15
+| Hardware Support | Older SX1276 modules | Newer SX1280 + ESP modules |
16
+
17
+
18
+## ref
19
+
20
+- [[ELRS-dat]]
... ...
\ No newline at end of file
Tech-dat/Network-dat/RC-dat/RC-signal-dat/FrSky-dat/FrSky-dat.md
... ...
@@ -0,0 +1,4 @@
1
+
2
+# FrSky-dat
3
+
4
+- [[CC2500-dat]]
... ...
\ No newline at end of file
Tech-dat/Network-dat/RC-dat/RC-signal-dat/PPM-dat/PPM-dat.md
... ...
@@ -0,0 +1,29 @@
1
+
2
+# PPM-dat
3
+
4
+- [[Wfly-dat]] - [[RC-code-dat]]
5
+
6
+- [[PWM-dat]]
7
+
8
+PPM (Pulse Position Modulation) is a type of analog signal used in radio control (RC) systems to transmit multiple channels of control information (like throttle, steering, elevator, etc.) over a single wire.
9
+
10
+In simple terms:
11
+
12
+- It sends a series of pulses.
13
+- The position (or timing) of each pulse within a repeating frame represents the value for a specific channel.
14
+- A longer "sync" pulse marks the end of one frame and the beginning of the next.
15
+
16
+So, instead of needing a separate wire for each control channel, PPM combines them into one sequential signal.
17
+
18
+## demo video
19
+
20
+[RC #PPM PWM send and receive at Arduino, note the four channels color](https://youtube.com/shorts/BDdSFPlh9KE?si=n1oF2KUIMqEeH1QW)
21
+
22
+Internal control by [[SDR1064-dat]]
23
+
24
+[Wfly #PPM console control toy rover](https://t.me/electrodragon3/369)
25
+
26
+
27
+## ref
28
+
29
+- [[RC-protocols-dat]]
... ...
\ No newline at end of file
Tech-dat/Network-dat/RC-dat/RC-signal-dat/RC-signal-dat.md
... ...
@@ -0,0 +1,109 @@
1
+
2
+# RC-signal-dat.md
3
+
4
+## RC-signals
5
+
6
+- [[WIFI-dat]]
7
+
8
+
9
+### Proprietary modulation schemes๏ผˆไธ“ๆœ‰่ฐƒๅˆถๆ–นๆกˆ๏ผ‰
10
+
11
+Toy RC systems may use other modulation methods like [[DSSS-dat]], [[FHSS-dat]], or non-standard GFSK configurations.
12
+
13
+- [[GFSK-dat]] = [[NRF24L01-dat]]
14
+
15
+- [[SBUS-dat]] - [[PPM-dat]] - [[PWM-dat]]
16
+
17
+Frequency Hopping:
18
+
19
+Many toy-grade RC transmitters hop between frequencies.
20
+
21
+#### DSSS (Direct Sequence Spread Spectrum)
22
+
23
+DSSS (Direct Sequence Spread Spectrum) is a method of transmitting radio signals by spreading the signal over a wider frequency band than the original data rate requires.
24
+
25
+**How DSSS Works:**
26
+
27
+The original data signal is multiplied by a "chipping code", a sequence of faster bits called "chips."
28
+
29
+This process spreads the energy of the signal over a wider bandwidth.
30
+
31
+The receiver, knowing the same chipping code, can reconstruct the original data.
32
+
33
+**Key Features:**
34
+
35
+Spreads signal across wide frequency band (increases resistance to interference and jamming).
36
+
37
+More secure and harder to intercept.
38
+
39
+Improves signal robustness in noisy environments.
40
+
41
+**DSSS in Real-World Use:**
42
+
43
+Used in older Wi-Fi standards (like 802.11b).
44
+
45
+Also found in some military and commercial RF systems.
46
+
47
+Some toy-grade 2.4GHz systems may use simple DSSS-like techniques to reduce cost and avoid interference.
48
+
49
+**Comparison with FHSS:**
50
+
51
+DSSS spreads signal continuously across a wide band.
52
+
53
+FHSS (Frequency Hopping Spread Spectrum) hops between frequencies in a sequence.
54
+
55
+### Compare with WIFI
56
+
57
+| Feature | Wi-Fi (ESP8266) | DSSS RC (Toy/Hobby) |
58
+| ----------- | --------------------------- | ------------------------------ |
59
+| Range | 30โ€“100m typical | 20m (toy) to >1km (hobby) |
60
+| Latency | Medium | Very low |
61
+| Robustness | Lower (affected by routers) | High (designed for RF control) |
62
+| Ease of Use | Easy (phone control) | Needs RC Tx/Rx |
63
+
64
+
65
+## RC-protocols
66
+
67
+- [[edge-tx-dat]]
68
+
69
+- [[CRSF-dat]]
70
+
71
+- [[FrSky-dat]] == [[CC2500-dat]]
72
+
73
+- [[ELRS-dat]] - [[ELRS-RX-dat]] - [[ELRS-TX-dat]]
74
+
75
+
76
+## SDR
77
+
78
+Reverse engineering with a software-defined radio (SDR) (like RTL-SDR or HackRF).
79
+
80
+ You could record the RF signal and analyze it to reverse engineer the protocol.
81
+
82
+ This is complex and requires RF/digital signal processing (DSP) knowledge.
83
+
84
+Sniffing with NRF24L01+ in promiscuous mode (some hacks exist, but limited).
85
+
86
+ Might capture packets from other NRF24L01 devices only.
87
+
88
+ Wonโ€™t work for general 2.4GHz devices.
89
+
90
+- [[RTL-SDR-dat]] - [[hackrf-dat]]
91
+
92
+
93
+## Step-by-Step: How to Sniff 2.4GHz RC Signal
94
+
95
+1. Gather Tools
96
+2.
97
+RTL-SDR dongle (most only go up to ~1.7 GHz โ†’ Not enough for 2.4GHz)
98
+
99
+โ†’ You need:
100
+
101
+- A HackRF One (recommended โ€“ covers 1 MHz to 6 GHz)
102
+- OR a CC2500 module (common 2.4GHz transceiver used in RC gear)
103
+- OR an ESP32 with promiscuous mode (works only for Wi-Fi packets)
104
+
105
+
106
+
107
+## ref
108
+
109
+- [[RC-dat]] - [[logic-analyzer-dat]]
... ...
\ No newline at end of file
Tech-dat/Network-dat/RC-dat/RC-signal-dat/RTL-SDR-dat/RTL-SDR-dat.md
... ...
@@ -0,0 +1,52 @@
1
+
2
+# RTL-SDR-dat
3
+
4
+1. What You Need
5
+
6
+An RTL-SDR USB dongle (e.g., RTL2832U with R820T2)
7
+
8
+A Windows, Linux, macOS, or Android device
9
+
10
+An antenna (usually included)
11
+
12
+Software (like SDR# or Universal Radio Hacker)
13
+
14
+SDRSharp
15
+
16
+
17
+4. Signal Analysis (for reverse engineering)
18
+
19
+Use Universal Radio Hacker (URH):
20
+
21
+Record raw signals from 2.4GHz toy remote (if within range)
22
+
23
+Analyze bit patterns, timing, modulation
24
+
25
+Use Audacity to visualize audio-like modulated signals.
26
+
27
+5. On Android (Optional)
28
+
29
+Use SDR Touch with an OTG cable and RTL-SDR dongle.
30
+
31
+Works well for listening to FM, air band, etc.
32
+
33
+What You Can Do With RTL-SDR
34
+
35
+- Listen to FM radio, air traffic, police, weather stations
36
+- Track airplanes (ADS-B)
37
+- Capture RF from garage remotes, key fobs, toy RC
38
+- Reverse engineer simple RF protocols
39
+
40
+
41
+
42
+## Alternative: Use an SDR to Sniff Raw RF
43
+
44
+To analyze the actual RF signal, you need a Software Defined Radio (SDR) like:
45
+
46
+HackRF, LimeSDR, or USRP
47
+
48
+Record the 2.4GHz spectrum
49
+
50
+Analyze bursts from the remote
51
+
52
+Use Universal Radio Hacker (URH) or GNU Radio to decode the signal
... ...
\ No newline at end of file
Tech-dat/Network-dat/RC-dat/RC-signal-dat/SBUS-dat/SBUS-dat.md
... ...
@@ -0,0 +1,75 @@
1
+
2
+# SBUS-dat
3
+
4
+- [[futaba-dat]]
5
+
6
+## ๐Ÿ“ก What is SBUS? โ€” Simple Explanation
7
+
8
+**SBUS (Serial Bus)** is a digital protocol used in RC systems to send multiple control signals (channels) over a single wire.
9
+
10
+---
11
+
12
+### ๐Ÿงฉ Key Features
13
+
14
+- ๐Ÿ”ข **Up to 16 channels** in one signal
15
+- ๐Ÿ’ฌ **Digital serial protocol**
16
+- ๐Ÿ“ฆ Sends data in **serial frames**
17
+- โฑ๏ธ **100,000 baud**, **inverted UART**
18
+- โ†ช๏ธ Invented by **Futaba**, widely used (FrSky, Radiolink, etc.)
19
+- ๐Ÿง  Needs **inversion** to be read by normal UART (hardware or software)
20
+
21
+---
22
+
23
+### ๐Ÿงฑ Simple Analogy
24
+
25
+> SBUS is like 16 people taking turns speaking very fast on one microphone.
26
+> Each frame contains all channel values packed tightly together.
27
+
28
+---
29
+
30
+### ๐Ÿงช Data Frame Structure
31
+
32
+Each SBUS frame is 25 bytes:
33
+
34
+| 1 byte | 22 bytes | 1 byte | 1 byte |
35
+| ------ | ----------- | ------ | ------ |
36
+| Header | 16 channels | Flags | End |
37
+
38
+
39
+
40
+- **Header**: 0x0F
41
+- **End**: 0x00
42
+- Sent **every ~9ms** (111Hz refresh rate)
43
+
44
+---
45
+
46
+### ๐Ÿ”Œ Common Use Cases
47
+
48
+- RC Receiver โ†’ Flight Controller (e.g., FrSky RX to Betaflight FC)
49
+- RC Receiver โ†’ Microcontroller (Arduino, ESP32)
50
+- RC โ†’ Servo controller boards (if SBUS supported)
51
+
52
+---
53
+
54
+### โš–๏ธ SBUS vs PWM vs PPM
55
+
56
+| Feature | SBUS | PWM | PPM |
57
+|---------------|-------------|---------------|---------------|
58
+| Channels | 16 | 1 per wire | 8 (typically) |
59
+| Wires needed | 1 | 1 per channel | 1 |
60
+| Type | Digital | Analog pulse | Analog pulse |
61
+| Speed | Very fast | Slow | Medium |
62
+| Latency | Very low | High | Medium |
63
+
64
+---
65
+
66
+### ๐Ÿงฐ Tip for Developers
67
+
68
+To read SBUS using a microcontroller:
69
+- Use **UART** at **100000 baud**, **8E2**, **inverted signal**
70
+- Some MCUs (like ESP32) support inversion natively
71
+- Otherwise, use an **inverter circuit** or a software decoder
72
+
73
+## ref
74
+
75
+- [[network-dat]]
Tech-dat/Network-dat/RC-dat/RC-signal-dat/edge-tx-dat/edge-tx-dat.md
... ...
@@ -0,0 +1,4 @@
1
+
2
+# edge-tx-dat
3
+
4
+https://github.com/EdgeTX/edgetx
... ...
\ No newline at end of file
Tech-dat/Network-dat/RC-dat/RC-supplier-dat/RC-supplier-dat.md
... ...
@@ -0,0 +1,3 @@
1
+
2
+# RC-supplier-dat.md
3
+
Tech-dat/Network-dat/RC-dat/RC-supplier-dat/WFLY-dat/2025-05-05-14-45-14.png
... ...
Binary files /dev/null and b/Tech-dat/Network-dat/RC-dat/RC-supplier-dat/WFLY-dat/2025-05-05-14-45-14.png differ
Tech-dat/Network-dat/RC-dat/RC-supplier-dat/WFLY-dat/2025-05-05-14-51-22.png
... ...
Binary files /dev/null and b/Tech-dat/Network-dat/RC-dat/RC-supplier-dat/WFLY-dat/2025-05-05-14-51-22.png differ
Tech-dat/Network-dat/RC-dat/RC-supplier-dat/WFLY-dat/2025-05-05-14-53-48.png
... ...
Binary files /dev/null and b/Tech-dat/Network-dat/RC-dat/RC-supplier-dat/WFLY-dat/2025-05-05-14-53-48.png differ
Tech-dat/Network-dat/RC-dat/RC-supplier-dat/WFLY-dat/2025-05-05-14-58-58.png
... ...
Binary files /dev/null and b/Tech-dat/Network-dat/RC-dat/RC-supplier-dat/WFLY-dat/2025-05-05-14-58-58.png differ
Tech-dat/Network-dat/RC-dat/RC-supplier-dat/WFLY-dat/2025-05-05-15-03-29.png
... ...
Binary files /dev/null and b/Tech-dat/Network-dat/RC-dat/RC-supplier-dat/WFLY-dat/2025-05-05-15-03-29.png differ
Tech-dat/Network-dat/RC-dat/RC-supplier-dat/WFLY-dat/WFLY-WFT06X_Mannual.pdf
... ...
Binary files /dev/null and b/Tech-dat/Network-dat/RC-dat/RC-supplier-dat/WFLY-dat/WFLY-WFT06X_Mannual.pdf differ
Tech-dat/Network-dat/RC-dat/RC-supplier-dat/WFLY-dat/WFLY-dat.md
... ...
@@ -0,0 +1,10 @@
1
+
2
+# WFLY-dat.md
3
+
4
+- [[WFT06x-dat]] - [[WFR06S-dat]]
5
+
6
+
7
+
8
+## ref
9
+
10
+- [[PPM-dat]]
... ...
\ No newline at end of file
Tech-dat/Network-dat/RC-dat/RC-supplier-dat/WFLY-dat/WFR06S-dat.md
... ...
@@ -0,0 +1,14 @@
1
+
2
+# WFR06S-dat.md
3
+
4
+![](2025-05-05-14-53-48.png)
5
+
6
+
7
+
8
+## New type of WFLY receiver
9
+
10
+
11
+- A. ่ทณ้ข‘้€Ÿๅบฆ้ซ˜๏ผŒ้‡‡็”จๆ‰ฉ่ทณ้ข‘็ณป็ปŸ๏ผˆFHSS&DSSS๏ผ‰๏ผšไธไฝ†้‡‡็”จไบ†DSSSๆŠ€ๆœฏ่€Œไธ”ๅœจDSSSๆŠ€ๆœฏๅŸบ็ก€ไธŠๅฏไปฅ่ฟ›่กŒๅคง็บฆๆฏ4ๆฏซ็ง’(ms)ไธ€ๆฌก็š„่ทณ้ข‘ใ€‚
12
+- B. ๆŽฅๆ”ถๆœบ่พ“ๅ‡บ็ป™่ˆตๆœบ็š„PWMไฟกๅท็จณๅฎšๅบฆ้ซ˜่ถณไปฅๅŒน้…็ฒพๅฏ†ๆ•ฐ็ ่ˆฑๆœบ๏ผšๅฏ็”จ็คบๆณขๅ™จ่ง‚ๅฏŸๅˆฐ็บณ็ง’็บง(nS)็š„็ป†่Š‚๏ผŒ่€Œๅ…ถไป–ไธ€ไบ›็‰Œๅญ็š„ๆŽฅๆ”ถๆœบ่พ“ๅ‡บ็š„PWMไฟกๅท็”จ็คบๆณขๅ™จๅœจus็บงๅˆซ่ง‚ๅฏŸๅฐฑไธ็จณๅฎšไบ†
13
+- C. 44096ๆ•ฐๆฎไธไป…ๅˆ†่พจ็އๆๅ‡๏ผŒๅๅบ”้€ŸๅบฆไนŸๅคงๅน…ๆๅ‡๏ผˆ้…ๅˆ9Sๆˆ–8SๆŽง๏ผ‰
14
+- D. ๆŽฅๆ”ถๆœบๅผ€ๆœบ็š„ๆ—ถๅ€™่‡ชๅŠจ่ฏ†ๅˆซPPM๏ผŒPCMS,4096PCMSไธ‰็งไผ ่พ“ๆจกๅผๆ—ฅ้‡‡็”จๅฏ่ทณ้ข‘็š„DSSS๏ผŒๅฏ้ ๆ€ง้ซ˜ใ€‚ๆ•ฐๅๅฐ่ฎพๅค‡ๅŒๆ—ถๅทฅไฝœ่€Œไบ’ๆ— ๅฝฑๅ“ใ€‚
... ...
\ No newline at end of file
Tech-dat/Network-dat/RC-dat/RC-supplier-dat/WFLY-dat/WFT06X-dat.md
... ...
@@ -0,0 +1,129 @@
1
+# WFLY-dat
2
+
3
+- [[PPM-dat]]
4
+
5
+![](2025-05-05-14-45-14.png)
6
+
7
+![](2025-05-05-14-51-22.png)
8
+
9
+- the manual == [[WFLY-WFT06X_Mannual.pdf]]
10
+- [fccd.io manual link](https://fccid.io/TZVWFT06XWFT08S/User-Manual/User-Manual-1-1119279.pdf)
11
+
12
+## Info
13
+
14
+- WFT06X-A: 6 channels airplane,mixfunction,D/R,HDE helicopter.
15
+- WFT06X-B: 4 channesl airplane, mix function,D/R, HDE helicopter.
16
+- WFT06X-C: 6 channels CCPMhelicopter,airplane.
17
+
18
+
19
+## Models
20
+
21
+![](2025-05-05-14-58-58.png)
22
+
23
+- [[airplane-dat]]
24
+
25
+
26
+## toggle switches
27
+
28
+![](2025-05-05-15-03-29.png)
29
+
30
+
31
+| Switch | State | | Up | Down |
32
+| :---------- | :--------- | --------------------------- | :--------------------------------- | :--------------------------------- |
33
+| A | Helicopter | Ch3 to Ch4 mixture. (note1) | Enables | Disables |
34
+| B | N/A | | Selects Helicopter state. | Selects Airplane state. |
35
+| C (1,2,4,6) | Airplane | | Dual Rate set to ยฑ125%. | Dual Rate set to ยฑ100%. |
36
+| D | Airplane | | Enables mixture functions (E, F). | Disables mixture functions (E, F). |
37
+| E | Airplane | | Enables Ch2 & Ch4 mixture (note3) | Enables Ch1 & Ch6 mixture (note3) |
38
+| F | Airplane | | Enables Ch1 & Ch2 mixture (note2). | N/A |
39
+| G (Ch1) | N/A | | Reverse Mode. | Normal Mode. |
40
+| H (Ch2) | N/A | | Reverse Mode. | Normal Mode. |
41
+| I (Ch3) | N/A | | Reverse Mode. | Normal Mode. |
42
+| J (Ch4) | N/A | | Reverse Mode. | Normal Mode. |
43
+| K (Ch6) | N/A | | Reverse Mode. | Normal Mode. |
44
+
45
+note1 == Ch3 to Ch6 mix always active
46
+
47
+note2 == (Elevon/Delta Wing) (Requires D Up, overrides D)
48
+
49
+note3 == (V-Tail) (Requires D Up).
50
+
51
+Switch Function Instruction
52
+
53
+- (A๏ผ‰At helicopterstate,pulling A down to put offmixturefunction of channel3to channel4,when pulling it up it willcomebackthefunction.Butthemixturefunctiontochannel 6isstable,whichisirrelevant with this switch.
54
+- (B) Pulling B down is airplane state and pulling it up is helicopter state.
55
+- (C) At airplane state, pulling 1, 2, 4, 6 down the dual rate is ยฑ100%; when pulling them up, the dual rate will be ยฑ125%.
56
+- (D) At airplane state, pulling D down make switches have no mixture function, but pulling it up will cause them have thefunction.
57
+- (E) At airplane state, when D is pulled up, pulling E down cause channel 1 & 6 mixture function (Flaperon); pulling E up will cause channel 2 & 4 mixture function(V-TAIL๏ผ‰.
58
+- (F) At airplane state,when D is pulled up,pulling F up it works as the mixture function of channel 1&2(TrianglewingELEVON),and Dfunctiondoesn'tworkat that moment.
59
+- (G) Channel 1 is reverse switch for aileron.Pulling G down is to make it in normal mode,and pulling it up is to make it act in reverse.
60
+- (H) Channel 2 is reverse switch for elevator. Pulling H down is to make it in normal mode, and pulling it up is to make it act in reverse.
61
+- (I) Channel 3 is reverse switch for power. Pulling I down is to make it in normal mode, and pulling it up is to make it act in reverse.
62
+- (J) Channel 4 is reverse switch for rudder. Pulling J down is to make it in normal mode, and pulling it up is to makeitactinreverse.
63
+- (K) Channel 6 is reverse switch for screw-pitch/ flaperon.Pulling K down is to make it in normal mode, and pulling it up is to make it act in reverse.
64
+
65
+
66
+
67
+## Binding Instructions:
68
+
69
+1. **Receiver:** Press and hold the "SET" button until the orange "STATUS" light flashes slowly. The receiver is now waiting for the transmitter's binding command.
70
+2. **Transmitter:** Press and hold the "SET" button while powering on the transmitter. Press the SET button once more to enter the binding function (the orange "STATUS" light will be solid). Then, press and hold the SET button until the orange light flashes slowly, entering the binding state.
71
+3. **Binding Successful:** The transmitter's green light will turn solid, and the receiver's indicator light will turn off.
72
+
73
+## Failsafe Setup:
74
+
75
+1. Power on the receiver.
76
+2. Press and hold the "SET" button while powering on the transmitter. Then, press and hold the SET button for about 2 seconds to enter the failsafe setup state (the green light will flash).
77
+3. The receiver's green light will flash quickly. The data currently being output by the transmitter will be set as the failsafe output data for the receiver.
78
+4. **Failsafe Active State:** The receiver's red light will be solid.
79
+
80
+## Technical Parameters:
81
+
82
+* **Application:** Fixed-wing aircraft, HDE helicopters, fixed-pitch helicopters, cars, boats
83
+* **Frequency Band:** 2.400 - 2.483 GHz
84
+* **Transmit Power:** โ‰ค 100mW
85
+* **Operating Current:** โ‰ค 160mA
86
+* **Encoding:** PPM
87
+* **RF Module:** Built-in
88
+* **Power Supply:** 9.6 - 12V
89
+* **Dual Rate/Expo Range:** 100% ~ 125%
90
+* **Mixing:**
91
+ * Flaperon (Channel 6 and Channel 1 mix)
92
+ * V-Tail (Channel 4 and Channel 2 mix)
93
+ * Delta Wing (Elevon) (Channel 1 and Channel 2 mix)
94
+ * HDE Helicopter (Channel 3 to Channel 4 & 6 mix)
95
+ * HDE Helicopter (Channel 3 to Channel 6 mix)
96
+* **Reverse Switches:**
97
+ * Channel 1: Aileron ๅ‰ฏ็ฟผ
98
+ * Channel 2: Elevator ๅ‡้™่ˆต
99
+ * Channel 3: Throttle ๆฒน้—จ
100
+ * Channel 4: Rudder ๆ–นๅ‘่ˆต
101
+ * Channel 6: Flap/Pitch ่ฅŸ็ฟผ/่žบ่ท
102
+* **Low Voltage Alarm (Visual & Audible):**
103
+ * Battery Voltage < 8.8V: Power indicator flashes once per second with beeping.
104
+ * Battery Voltage < 8.3V: Power indicator flashes twice per second (0.5s interval) with beeping.
105
+* **Charging Jack:** Yes
106
+* **Simulator Jack:** Yes
107
+
108
+
109
+## Beeping
110
+
111
+According to the document, the device will provide a sound-and-light notification when the battery voltage is low. ย 
112
+
113
+**When the battery voltage is below 8.8V**, the power indicator light will glitter and buzz at a rate of 1S/1S. ย 
114
+
115
+**When the battery voltage drops below 8.3V**, the power indicator light will glitter and buzz at a rate of 0.5S/1S. ย 
116
+
117
+Additionally, the WFT06X-C model transmitter will alarm if it is turned on in an Idle-up state with no output. ย 
118
+
119
+
120
+
121
+
122
+
123
+## demo video
124
+
125
+- [how to binding WFLY in chinese ](https://www.bilibili.com/video/BV1Mh4y1c7FS/?vd_source=74a6b8b9bfcd41c5946a742815bf71ae)
126
+
127
+## ref
128
+
129
+- [[WFLY]] - [[lightradio]] - [[radiomaster]]
... ...
\ No newline at end of file
Tech-dat/Network-dat/RC-dat/RC-supplier-dat/betaFPV-dat/2025-05-04-14-49-45.png
... ...
Binary files /dev/null and b/Tech-dat/Network-dat/RC-dat/RC-supplier-dat/betaFPV-dat/2025-05-04-14-49-45.png differ
Tech-dat/Network-dat/RC-dat/RC-supplier-dat/betaFPV-dat/2025-05-04-15-34-48.png
... ...
Binary files /dev/null and b/Tech-dat/Network-dat/RC-dat/RC-supplier-dat/betaFPV-dat/2025-05-04-15-34-48.png differ
Tech-dat/Network-dat/RC-dat/RC-supplier-dat/betaFPV-dat/betaFPV-dat.md
... ...
@@ -0,0 +1,4 @@
1
+
2
+# betaFPV-dat
3
+
4
+- [[lightradio-dat]]
... ...
\ No newline at end of file
Tech-dat/Network-dat/RC-dat/RC-supplier-dat/betaFPV-dat/lightradio-dat.md
... ...
@@ -0,0 +1,94 @@
1
+
2
+# lightradio-dat
3
+
4
+## Lightradio 3 Pro
5
+
6
+- professional version
7
+- build-in OLED display
8
+
9
+![](2025-05-04-15-34-48.png)
10
+
11
+Choice of two protocols:
12
+
13
+* **Built-in ELRS 2.4G:** Maximum output power up to 250mW, built-in omnidirectional antenna, enables long-range flight.
14
+* **Built-in CC2500 version:** Supports Frsky D / Frsky X / SFHSS and other protocols, maximum 100mW transmission power.
15
+
16
+
17
+
18
+## lightradio 3
19
+
20
+- does NOT support original [[ELRS-dat]] system
21
+
22
+### info
23
+
24
+![](2025-05-04-14-49-45.png)
25
+
26
+
27
+### Flight Controller
28
+
29
+The application supports flight controller that can run LiteSilver firmeware.
30
+
31
+- Lite Brushed FC V3
32
+- Cetus FPV Kit
33
+- Cetus Pro FPV Kit
34
+- Cetus X FPV KIT
35
+- Cetus Lite FPV Kit
36
+- Aquila 16 FPV kit
37
+
38
+Configurator for FC board is active.Follow the steps to enter FC Setup page.
39
+
40
+1. Connect the FC board to the computer via USB data cable.
41
+2. Select the virtual COM port and click the *Connect" button on the top right.
42
+
43
+Note: If enter FC Setup page fail, please update the FC firmware first.
44
+
45
+Click the "Firmware Flasher" tab on the left for firmware update.
46
+
47
+### Radio Transmitter
48
+
49
+Support the radio controller come with BETAFPV LiteRadio Firmware 2.0 Version.
50
+
51
+- LiteRadio 1
52
+- LiteRadio 2 SEV2
53
+- LiteRadio 3
54
+- LiteRadio 4 SE
55
+
56
+The LiteRadio 2 SE Frsky or Bayang version is not supported. LiteRadio 2 and LiteRadio 3 Pro is powered by OpenTX system, please use the OpenTX Companion.
57
+
58
+Click the yellow button below to active configurator for radio controller.
59
+
60
+### Remote control parameters
61
+
62
+- Model == LiteRadio3 remote control
63
+- Remote control distance == 500-600 meters
64
+- Frequency range == 2.4G (2403MHz-2447MHz)
65
+- Support protocol == ELRS 2.4G/Frsky (CC2500)
66
+- Channel == 8
67
+- Support protocol == ELRS 2.4G
68
+- Power == 25mW/50mW/100mW
69
+- Adaptive drone type supports
70
+ - Multi-rotor/support USB firmware update
71
+ - BETAFPV Configurator connection
72
+ - Custom LiteRadio system joystick calibration
73
+- LED light == red light on/red warning/blue normal
74
+- Battery built-in == 2000mAh1S battery
75
+- Charging connector == Type-C
76
+
77
+## BetaFPV Configurator
78
+
79
+[github release ](https://github.com/BETAFPV/BETAFPV_Configurator/releases)
80
+
81
+[BETAFPV Configurator User Manual](https://support.betafpv.com/hc/en-us/articles/40712112687769-BETAFPV-Configurator-User-Manual)
82
+
83
+[github BETAFPV_Configurator](https://github.com/BETAFPV/BETAFPV_Configurator)
84
+
85
+
86
+### Connection
87
+
88
+- via serial port (USB)
89
+
90
+
91
+
92
+## ref
93
+
94
+- [[betaFPV]] - [[FPV]]
... ...
\ No newline at end of file
Tech-dat/Network-dat/RC-dat/RC-supplier-dat/frsky-dat/frsky-dat.md
... ...
@@ -0,0 +1,9 @@
1
+
2
+# frsky-dat
3
+
4
+- [Taranis Series](https://www.frsky-rc.com/product-category/transmitters/taranis-series/)
5
+
6
+
7
+## ref
8
+
9
+- [[RC-supplier-dat]]
... ...
\ No newline at end of file
Tech-dat/Network-dat/RC-dat/RC-supplier-dat/radiomaster-dat/2025-05-16-12-45-54.png
... ...
Binary files /dev/null and b/Tech-dat/Network-dat/RC-dat/RC-supplier-dat/radiomaster-dat/2025-05-16-12-45-54.png differ
Tech-dat/Network-dat/RC-dat/RC-supplier-dat/radiomaster-dat/2025-05-16-12-47-56.png
... ...
Binary files /dev/null and b/Tech-dat/Network-dat/RC-dat/RC-supplier-dat/radiomaster-dat/2025-05-16-12-47-56.png differ
Tech-dat/Network-dat/RC-dat/RC-supplier-dat/radiomaster-dat/2025-05-16-12-48-22.png
... ...
Binary files /dev/null and b/Tech-dat/Network-dat/RC-dat/RC-supplier-dat/radiomaster-dat/2025-05-16-12-48-22.png differ
Tech-dat/Network-dat/RC-dat/RC-supplier-dat/radiomaster-dat/radiomaster-dat.md
... ...
@@ -0,0 +1,79 @@
1
+
2
+# radiomaster-dat
3
+
4
+
5
+## binding
6
+
7
+## Pocket Radio Controller (M2)
8
+
9
+
10
+https://www.radiomasterrc.com/products/pocket-radio-controller-m2
11
+
12
+https://cdn.shopify.com/s/files/1/0609/8324/7079/files/Pocket_1.pdf?v=1736839330
13
+
14
+firmwares - https://www.radiomasterrc.com/pages/firmware-updates
15
+
16
+
17
+![](2025-05-16-12-45-54.png)
18
+
19
+## wifi
20
+
21
+better use this wifi option to connect your devices to your local network:
22
+
23
+ One-time connect to network, retain Home network setting
24
+
25
+ http://elrs_tx.local
26
+
27
+
28
+find firmware version
29
+
30
+ ExpressLRS
31
+ RadioMaster Pocket Internal 2.4GHz TX
32
+ Firmware Rev. 3.5.4 (a6f9a2) ISM2G4
33
+
34
+
35
+## flash
36
+
37
+ You must choose regulatory domain for your device in 2.4 GHz band
38
+
39
+ Custom binding phrase must be longer than 6 characters
40
+
41
+
42
+## build firmware first
43
+
44
+![](2025-05-16-12-47-56.png)
45
+
46
+![](2025-05-16-12-48-22.png)
47
+
48
+
49
+## flash log
50
+
51
+ % Total % Received % Xferd Average Speed Time Time Time Current
52
+ Dload Upload Total Spent
53
+ Left Speed
54
+
55
+ 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
56
+ 12 1534k 0 0 12 192k 0 153k 0:00:09 0:00:01 0:00:08 154k
57
+ 20 1534k 0 0 20 320k 0 137k 0:00:11 0:00:02 0:00:09 137k
58
+ 25 1534k 0 0 25 384k 0 119k 0:00:12 0:00:03 0:00:09 119k
59
+ 33 1534k 0 0 33 512k 0 113k 0:00:13 0:00:04 0:00:09 113k
60
+ 37 1534k 0 0 37 576k 0 110k 0:00:13 0:00:05 0:00:08 110k
61
+ 45 1534k 0 0 45 704k 0 105k 0:00:14 0:00:06 0:00:08 96234
62
+ 50 1534k 0 0 50 768k 0 103k 0:00:14 0:00:07 0:00:07 90181
63
+ 54 1534k 0 0 54 832k 0 102k 0:00:15 0:00:08 0:00:07 92902
64
+ 62 1534k 0 0 62 960k 0 100k 0:00:15 0:00:09 0:00:06 91603
65
+ 66 1534k 0 0 66 1024k 0 100k 0:00:15 0:00:10 0:00:05 91548
66
+ 75 1534k 0 0 75 1152k 0 99k 0:00:15 0:00:11 0:00:04 93775
67
+ 79 1534k 0 0 79 1216k 0 98k 0:00:15 0:00:12 0:00:03 94064
68
+ 83 1534k 0 0 83 1280k 0 98k 0:00:15 0:00:13 0:00:02 93852
69
+ 91 1534k 0 0 91 1408k 0 99813 0:00:15 0:00:14 0:00:01 92958
70
+ 95 1534k 0 0 95 1472k 0 99416 0:00:15 0:00:15 --:--:-- 92639
71
+ 100 1534k 0 0 100 1534k 0 92904 0:00:16 0:00:16 --:--:-- 73560
72
+ 100 1534k 0 0 100 1534k 0 87667 0:00:17 0:00:17 --:--:-- 57992
73
+ 100 1535k 100 99 100 1534k 5 84899 0:00:19 0:00:18 0:00:01 47599
74
+ 100 1535k 100 99 100 1534k 5 84899 0:00:19 0:00:18 0:00:01 31982
75
+
76
+ ** UPLOADING TO: http://192.168.72.9/update
77
+
78
+ UPLOAD SUCCESS
79
+ Update complete. Please wait for a few seconds while the device reboots.
... ...
\ No newline at end of file
Tech-dat/Network-dat/RC-dat/RC-supplier-dat/speedybee-dat/speedybee-dat.md
... ...
@@ -0,0 +1,7 @@
1
+
2
+# speedybee-dat
3
+
4
+[SpeedyBee 4pcs FPV Soldering Practice Board for FPV Drone Beginners, Tools for Flight controller ESC Soldering Practice](https://www.amazon.com/SpeedyBee-Soldering-Practice-Beginners-controller/dp/B0C5X26JWQ/ref=sr_1_32?dib=eyJ2IjoiMSJ9.85xi15ftM4OWw33_siXrDRGNOKuf3CgQct4cVlBOFqI1ZAAZD4Gz_S4U_wqEKgjxWcsGOZPlWkdGdEASaTJntO1H_pFgsXO61wuEgveKAmLTLHR-cjsa5SOhaKUXU0vVHE7oijzqLoIPsx-H55gYNPr_F8aMX98OqPfwk64Ma12qrNSidLDVokmdegWL621v3U-5PDEaMNTjdACgOTHEBxAGhtxksaYVouWcSkxMCTI-jr0FkvxyQeZmO6S-UjXJcEcChxa4sPMjVyiK7070XhJlH2EnXqgnv0KScl80Jqc.AzbbGJAa2ls6bQWRCrudB-jGcm6vKV7pRItsIyBMpdA&dib_tag=se&keywords=FPV&qid=1744201259&sr=8-32)
5
+
6
+
7
+
Tech-dat/Network-dat/RC-dat/Tank-dat/2025-05-22-00-49-44.png
... ...
Binary files /dev/null and b/Tech-dat/Network-dat/RC-dat/Tank-dat/2025-05-22-00-49-44.png differ
Tech-dat/Network-dat/RC-dat/Tank-dat/2025-05-22-00-50-12.png
... ...
Binary files /dev/null and b/Tech-dat/Network-dat/RC-dat/Tank-dat/2025-05-22-00-50-12.png differ
Tech-dat/Network-dat/RC-dat/Tank-dat/Tank-dat.md
... ...
@@ -0,0 +1,28 @@
1
+
2
+# Tank-dat
3
+
4
+
5
+- [[dc-gear-motor-dat]] - [[MG513-dat]]
6
+
7
+- [[tank-track-dat]]
8
+
9
+## tank platform 1
10
+
11
+- Each wheel has an independent suspension spring
12
+- six rogs each side
13
+
14
+![](2025-05-22-00-49-44.png)
15
+
16
+![](2025-05-22-00-50-12.png)
17
+
18
+
19
+
20
+## 3D
21
+
22
+- tank track and [[robot-arm-dat]] - [3D model](https://cad.onshape.com/documents/74b490fd20a2a4c684736444/w/df7ed99939a49695aecaa97f/e/90154fe41bafe724913e360f?renderMode=0&uiState=68301af9be87bf505c7ca7d0)
23
+
24
+
25
+
26
+## ref
27
+
28
+- [[RC]] - [[tank]]
... ...
\ No newline at end of file
Tech-dat/Network-dat/RC-dat/Tank-dat/markus-tank-dat/markus-tank-dat.md
... ...
@@ -0,0 +1,36 @@
1
+
2
+# markus-rover-dat
3
+
4
+- [FPV-Rover V2.0 (RC Tank)](https://www.thingiverse.com/thing:2952852)
5
+- [youtube](https://www.youtube.com/watch?v=dpUSdjNppN0)
6
+- https://www.instructables.com/FPV-Rover-V20/
7
+
8
+## printed parts
9
+
10
+- 2x main cog front
11
+- 2x main cog rear (needs support)
12
+- 16x small cog
13
+- 1x body (needs support)
14
+- 2x outer frame
15
+- 2x big bevel gear (use 4:1 for less heat and more torque)
16
+- 2x small bevel gear (I recommend strong filament like Nylon) (use 4:1 for less heat and more torque)
17
+- 2x motor mounting bracket
18
+- 2x ESC mount
19
+- 1x inner frame left (or inner frame left high)
20
+- 1x inner frame right (or inner frame right high)
21
+- 1x front cover (needs support)
22
+- 1x rear cover
23
+- 64x tank track
24
+- 64x rubber track for tank track
25
+
26
+## ordered parts
27
+
28
+
29
+
30
+## knowledge
31
+
32
+- [[3d-printer-dat]]
33
+
34
+- [[dc-motor-dat]] - [[tank-track-dat]] - [[ESC-dat]]
35
+
36
+- cog == gear
Tech-dat/Network-dat/RC-dat/Tank-dat/tank-track-dat/2025-05-22-14-09-36.png
... ...
Binary files /dev/null and b/Tech-dat/Network-dat/RC-dat/Tank-dat/tank-track-dat/2025-05-22-14-09-36.png differ
Tech-dat/Network-dat/RC-dat/Tank-dat/tank-track-dat/2025-05-22-14-10-22.png
... ...
Binary files /dev/null and b/Tech-dat/Network-dat/RC-dat/Tank-dat/tank-track-dat/2025-05-22-14-10-22.png differ
Tech-dat/Network-dat/RC-dat/Tank-dat/tank-track-dat/2025-05-22-14-11-57.png
... ...
Binary files /dev/null and b/Tech-dat/Network-dat/RC-dat/Tank-dat/tank-track-dat/2025-05-22-14-11-57.png differ
Tech-dat/Network-dat/RC-dat/Tank-dat/tank-track-dat/tank-track-dat.md
... ...
@@ -0,0 +1,54 @@
1
+
2
+# tank-track-dat
3
+
4
+
5
+## โœ… When Tank Tracks Are Better
6
+- **Soft Terrain** (sand, mud, snow):
7
+ - Tracks distribute weight over a larger surface, preventing sinking.
8
+- **Uneven Terrain** (rocks, slopes, obstacles):
9
+ - Tracks provide better grip and stability.
10
+- **Heavy Loads**:
11
+ - Tracks can support and move heavier equipment with more traction.
12
+
13
+## โœ… When Wheels Are Better
14
+- **Hard, Flat Terrain** (pavement, concrete):
15
+ - Wheels are faster and more energy-efficient.
16
+- **Speed & Efficiency**:
17
+ - Wheeled systems are usually lighter and less power-hungry.
18
+- **Maintenance & Cost**:
19
+ - Wheels are simpler, cheaper, and easier to repair.
20
+
21
+
22
+## ๐Ÿ” Summary Table
23
+
24
+| Feature | Tank Tracks | Wheels |
25
+|------------------|----------------------------------|----------------------------------|
26
+| Traction | Excellent on rough terrain | Good on hard surfaces |
27
+| Speed | Slower | Faster |
28
+| Efficiency | Lower (more friction) | Higher |
29
+| Terrain Handling | Superior on soft/uneven ground | Best on smooth/hard ground |
30
+| Weight Support | High | Moderate |
31
+| Maintenance | More complex and expensive | Easier and cheaper |
32
+
33
+
34
+## BOMS
35
+
36
+Cogs
37
+
38
+![](2025-05-22-14-09-36.png)
39
+
40
+![](2025-05-22-14-11-57.png)
41
+
42
+Chains
43
+
44
+![](2025-05-22-14-10-22.png)
45
+
46
+
47
+## guide
48
+
49
+- [tank #track disassemble and re-assemble](https://t.me/electrodragon3/371)
50
+
51
+
52
+## ref
53
+
54
+- [[robot-dat]] - [[tank-dat]]
... ...
\ No newline at end of file
Tech-dat/Network-dat/RC-dat/UAV-dat/UAV-dat.md
... ...
@@ -0,0 +1,46 @@
1
+
2
+# UAV-dat
3
+
4
+A UAV stands for Unmanned Aerial Vehicle. It's an aircraft without a human pilot on board, controlled remotely or autonomously. They are also commonly known as drones.
5
+
6
+- [[betaflight-dat]] - [[ArduPilot-dat]]
7
+
8
+- [[FPV-dat]]
9
+
10
+
11
+
12
+## fixed-wing UAV
13
+
14
+### Talon 1400 Overview
15
+
16
+#### What is the Talon 1400?
17
+The **Talon 1400** is a high-performance, **3D-printed unmanned aerial vehicle (UAV)** developed by Flightory. It is optimized for long-range and efficient flight.
18
+
19
+##### Specifications:
20
+- **Wingspan:** 1,305 mm
21
+- **Length:** 830 mm
22
+- **Flight Time:** Up to 4 hours (with large Li-Ion 4S6P battery)
23
+- **Materials:** LW-PLA and PETG
24
+- **Airfoil:** Eppler E205
25
+- **Optimal Cruise Speed:** 55-65 km/h
26
+
27
+#### Is It Betaflight-Based?
28
+
29
+**No**, the Talon 1400 is **not** based on Betaflight. Since it is a **fixed-wing UAV**, it is more suited for **autonomous flight controllers** rather than Betaflight, which is designed for FPV racing drones.
30
+
31
+##### Recommended Flight Controllers:
32
+
33
+- **Mateksys F405-Wing / F765-Wing**
34
+- **Pixhawk (PX4 or ArduPilot firmware)**
35
+- **Holybro Kakute F7 / H743-Wing**
36
+
37
+These controllers support **GPS navigation, waypoint missions, and return-to-home (RTH)**, making them better suited for long-range operations.
38
+
39
+#### Resources:
40
+
41
+- [Flying a 3D Printed Fixed Wing Drone | Talon 1400 V2](https://www.youtube.com/watch?v=2ngGgtw1sUw)
42
+
43
+- [Flightory Talon 1400 Official Page](https://flightory.com/product/talon-1400/)
44
+- [Talon 1400 Assembly Tutorial (YouTube)](https://www.youtube.com/watch?v=LGt_8F4e5r8)
45
+
46
+
Tech-dat/Network-dat/RC-dat/UAV-dat/betaflight-dat.md
... ...
@@ -0,0 +1,31 @@
1
+
2
+
3
+# betaflight-dat.md
4
+
5
+Betaflight is an open-source firmware for drones and other unmanned aerial vehicles (UAVs). It is designed to provide advanced flight control capabilities, making it popular among hobbyists and enthusiasts in the drone community. Betaflight is known for its flexibility, configurability, and support for a wide range of hardware platforms.
6
+
7
+- [[FPV-dat]]
8
+
9
+
10
+
11
+
12
+
13
+## commerlized projects
14
+
15
+- **speedybee** == https://www.speedybee.com/ == SpeedyBee is a company that specializes in providing high-quality drone components and accessories, including flight controllers, ESCs, and other related products. They are known for their innovative designs and user-friendly interfaces, making them a popular choice among drone enthusiasts.
16
+- **betafpv** == https://www.betafpv.com/ == BETAFPV is a company that focuses on producing small and lightweight drones, particularly for FPV (First Person View) racing and freestyle flying. They offer a range of products, including flight controllers, cameras, and other accessories tailored for FPV enthusiasts.
17
+- happymodel
18
+- iFlight
19
+- Holybro
20
+- TBS
21
+- Flywoo
22
+- HGLRC
23
+- Diatone
24
+- GepRC
25
+- Racerstar
26
+- Emax
27
+- Eachine
28
+- HGLRC
29
+- Racerstar
30
+
31
+
Tech-dat/Network-dat/RC-dat/airplane-dat/airplane-dat.md
... ...
@@ -0,0 +1,38 @@
1
+
2
+# airplane-dat
3
+
4
+## Channel 1: Aileron Action
5
+
6
+Control theright-and-left lean of the aircraft.To level the slantwise aircraft,youmust make
7
+thecontrol rod act inreverse direction.Otherwise,it will makethe aircraftoverturn.
8
+
9
+## Channel 2: Elevator Action
10
+
11
+Control the aerocraft to descend orascend.Pulling the control rod down will driveup the head,
12
+and the aeroplane will ascend.Boosting it upwill make thehead downhill,and the aeroplane
13
+willdescend.
14
+
15
+## Channel 3: Throttle Operation
16
+
17
+Control the power. Pulling the control rod down will minish down the power group, and boosting
18
+the control rod up will increase thepower group.
19
+
20
+## Channel 4: Rudder Action
21
+
22
+Control the swerve of the aerocraft. Turning the control rod to left will make the head of the
23
+aircraft turn left, and turning it to right will make the head turn right.
24
+
25
+## Channel 5: LandingGear/GyroAction
26
+
27
+This channel is for switch variable. It is a switch to control landing gear when used for airplane
28
+state, but it will be a switch for gyroscope when used for helicopter.
29
+
30
+## Channel 6: Screw-pitch/Flaperon Action
31
+
32
+The angle adjustingof the flaperon isfor the airplane state,and the adjustingof themain
33
+screw-pitch is forhelicopter state.
34
+
35
+
36
+## ref
37
+
38
+- [[RC-dat]] - [[airplane]] - [[RC]]
... ...
\ No newline at end of file
Tech-dat/Network-dat/RC-dat/flight-controller-dat/flight-controller-dat.md
... ...
@@ -0,0 +1,3 @@
1
+
2
+# flight-controller-dat
3
+
Tech-dat/Network-dat/RC-dat/quadcopter-dat/2025-01-29-17-12-32.png
... ...
Binary files /dev/null and b/Tech-dat/Network-dat/RC-dat/quadcopter-dat/2025-01-29-17-12-32.png differ
Tech-dat/Network-dat/RC-dat/quadcopter-dat/FPV-dat/2025-04-02-12-45-53.png
... ...
Binary files /dev/null and b/Tech-dat/Network-dat/RC-dat/quadcopter-dat/FPV-dat/2025-04-02-12-45-53.png differ
Tech-dat/Network-dat/RC-dat/quadcopter-dat/FPV-dat/2025-04-02-13-14-05.png
... ...
Binary files /dev/null and b/Tech-dat/Network-dat/RC-dat/quadcopter-dat/FPV-dat/2025-04-02-13-14-05.png differ
Tech-dat/Network-dat/RC-dat/quadcopter-dat/FPV-dat/FPV-controller-dat/FPV-controller-dat.md
... ...
@@ -0,0 +1,13 @@
1
+
2
+# FPV-receiver-dat
3
+
4
+- [[ELRS-dat]] - [[TBS-dat]]
5
+
6
+
7
+## DJI
8
+
9
+- [DJI FPV Remote Controller 3](https://www.amazon.com/DJI-FPV-Remote-Controller-Compatibility/dp/B0CS6JCX2W/ref=sr_1_3?dib=eyJ2IjoiMSJ9.85xi15ftM4OWw33_siXrDRGNOKuf3CgQct4cVlBOFqI1ZAAZD4Gz_S4U_wqEKgjxWcsGOZPlWkdGdEASaTJntO1H_pFgsXO61wuEgveKAmLTLHR-cjsa5SOhaKUXU0vVHE7oijzqLoIPsx-H55gYNPr_F8aMX98OqPfwk64Ma12qrNSidLDVokmdegWL621v3U-5PDEaMNTjdACgOTHEBxAGhtxksaYVouWcSkxMCTI-jr0FkvxyQeZmO6S-UjXJcEcChxa4sPMjVyiK7070XhJlH2EnXqgnv0KScl80Jqc.AzbbGJAa2ls6bQWRCrudB-jGcm6vKV7pRItsIyBMpdA&dib_tag=se&keywords=FPV&qid=1744201259&sr=8-3)
10
+
11
+- [DJI RC Motion 3, FPV Smart Controller with Immersive Motion Control, Compact and Portable, One-Click Emergency Brake, AR Cursor, Intuitive Drone Controller, Multi-Model Compatibility](https://www.amazon.com/DJI-Controller-Immersive-Multi-Model-Compatibility/dp/B0CS6LDCKC/ref=sr_1_11?dib=eyJ2IjoiMSJ9.85xi15ftM4OWw33_siXrDRGNOKuf3CgQct4cVlBOFqI1ZAAZD4Gz_S4U_wqEKgjxWcsGOZPlWkdGdEASaTJntO1H_pFgsXO61wuEgveKAmLTLHR-cjsa5SOhaKUXU0vVHE7oijzqLoIPsx-H55gYNPr_F8aMX98OqPfwk64Ma12qrNSidLDVokmdegWL621v3U-5PDEaMNTjdACgOTHEBxAGhtxksaYVouWcSkxMCTI-jr0FkvxyQeZmO6S-UjXJcEcChxa4sPMjVyiK7070XhJlH2EnXqgnv0KScl80Jqc.AzbbGJAa2ls6bQWRCrudB-jGcm6vKV7pRItsIyBMpdA&dib_tag=se&keywords=FPV&qid=1744201259&sr=8-11)
12
+
13
+
Tech-dat/Network-dat/RC-dat/quadcopter-dat/FPV-dat/FPV-dat.md
... ...
@@ -0,0 +1,208 @@
1
+
2
+# FPV-dat
3
+
4
+- [[quadcopter-dat]]
5
+
6
+- [[FPV-controller-dat]] - [[Goggles-dat]]
7
+
8
+- [[ELRS-dat]] - [[FrSky-dat]] - [[ArduPilot-dat]] - [[CRSF-dat]]
9
+
10
+- [[BMS-dat]]
11
+
12
+
13
+
14
+## parts of the FPV drones
15
+
16
+- **Flight Controller**: The brain of the drone, responsible for stabilizing and controlling the flight. It processes data from sensors and executes commands from the pilot or autopilot system.
17
+
18
+- **Electronic Speed Controller (ESC)**: Controls the speed of the motors by adjusting the power supplied to them. ESCs are essential for smooth and responsive flight.
19
+
20
+- **Motors**: Provide the thrust needed for flight. Brushless motors are commonly used in FPV drones due to their efficiency and power.
21
+
22
+- **Propellers**: Generate lift by spinning rapidly. The size and pitch of the propellers can significantly affect the drone's performance and flight characteristics.
23
+
24
+ - [[SCU1059-dat]]
25
+
26
+- **Camera**: Captures real-time video for FPV flying. FPV cameras are designed to provide low-latency video transmission to the pilot's goggles or screen.
27
+
28
+- [[VTX-dat]]: Video Transmitters are commonly referred to as VTX units. They are responsible for transmitting the video signal from the camera to the pilot's goggles or screen. VTX units come in various power levels and frequencies, allowing pilots to choose the best option for their flying environment.
29
+- **Antenna**: Enhances the signal strength and range of the VTX. Different antenna types (e.g., dipole, patch, circular polarized) can be used to optimize performance.
30
+
31
+- **ExpressLRS**: A long-range radio control link for FPV drones, known for its low latency and high refresh rates. It is an open-source project that competes with other systems like Crossfire and ELRS.
32
+
33
+ - [[ELRS-dat]]
34
+
35
+- **Goggles**: Wearable displays that allow pilots to see the live video feed from the drone's camera. They often include features like head tracking and DVR (Digital Video Recorder) capabilities.
36
+
37
+
38
+
39
+
40
+
41
+## Bee35
42
+
43
+
44
+![](2025-04-02-13-14-05.png)
45
+
46
+![](2025-04-02-12-45-53.png)
47
+
48
+| version | price | description |
49
+| -------------------------- | ----- | ------------------------------------- |
50
+| Bee35 Pro O3 Air Unit TBS | 480 | O3 Air Unit, TBS radio |
51
+| Bee35 Pro O3 Air Unit ELRS | 470 | O3 Air Unit, ELRS radio |
52
+| Bee35 Pro O3 Air Unit PNP | 460 | O3 Air Unit, no receiver |
53
+| Bee35 Pro | 270 | Standard analog version |
54
+| Bee35 Pro LINK WASP TBS | 430 | LINK WASP digital system, TBS radio |
55
+| Bee35 Pro LINK WASP ELRS | 420 | LINK WASP digital system, ELRS radio |
56
+| Bee35 Pro LINK WASP PNP | 400 | LINK WASP digital system, no receiver |
57
+| Bee35 Analog TBS | 306 | Analog FPV system, TBS radio |
58
+| Bee35 Analog ELRS | 296 | Analog FPV system, ELRS radio |
59
+
60
+
61
+
62
+## commerialized FPV
63
+
64
+- [[speedybee-dat]]
65
+
66
+### 1. [SpeedyBee Flight Controllers & Stacks](https://speedybee.com/)
67
+- **Brand:** SpeedyBee
68
+- **Description:** Budget-friendly, Betaflight-supported flight controllers with easy app-based tuning.
69
+- **Example Products:**
70
+ - **SpeedyBee F405 V4 Stack** (F4-based, affordable)
71
+ - **SpeedyBee F7 V3 Stack** (F7-based, powerful & feature-rich)
72
+- **Commercial Features:**
73
+ - Wireless **Bluetooth & Wi-Fi tuning** via SpeedyBee app.
74
+ - Fully compatible with Betaflight Configurator.
75
+- **Website:** [speedybee.com](https://speedybee.com/)
76
+
77
+---
78
+
79
+### 2. [TBS Tango 2 (Crossfire-Integrated Radio Controller)](https://www.team-blacksheep.com/)
80
+- **Brand:** Team BlackSheep (TBS)
81
+- **Description:** A high-performance FPV radio transmitter designed for **Betaflight-based drones** with **built-in Crossfire**.
82
+- **Commercial Features:**
83
+ - Fully optimized for **Betaflight & Crossfire**.
84
+ - Compact, ergonomic design for FPV pilots.
85
+- **Website:** [team-blacksheep.com](https://www.team-blacksheep.com/)
86
+
87
+
88
+## opensource control projects
89
+
90
+# Most Famous Open-Source FPV GitHub Projects
91
+
92
+If you're looking for **open-source FPV (First-Person View) projects** on GitHub, here are some of the **most famous** ones:
93
+
94
+## 1. [Betaflight](https://github.com/betaflight/betaflight)
95
+- **Description:** One of the most widely used open-source flight control firmware for FPV drones.
96
+- **Features:**
97
+ - Highly optimized for **acrobatic** and **racing drones**.
98
+ - Supports a wide range of flight controllers.
99
+ - Advanced **tuning options** for PID, filters, and motor control.
100
+- **GitHub:** [github.com/betaflight/betaflight](https://github.com/betaflight/betaflight)
101
+
102
+---
103
+
104
+## 2. [iNavFlight](https://github.com/iNavFlight/inav)
105
+- **Description:** A fork of Betaflight, but optimized for **GPS and long-range FPV**.
106
+- **Features:**
107
+ - Supports **GPS waypoint navigation, return-to-home (RTH), and mission planning**.
108
+ - Designed for **freestyle and long-range cruising** rather than racing.
109
+- **GitHub:** [github.com/iNavFlight/inav](https://github.com/iNavFlight/inav)
110
+
111
+---
112
+
113
+## 3. [ArduPilot](https://github.com/ArduPilot/ardupilot)
114
+- **Description:** A professional-grade open-source autopilot for drones, including **FPV quadcopters, planes, and rovers**.
115
+- **Features:**
116
+ - **Highly autonomous** with advanced mission planning.
117
+ - Works with multiple types of vehicles (planes, multirotors, helicopters).
118
+ - Compatible with **Mission Planner** and **QGroundControl**.
119
+- **GitHub:** [github.com/ArduPilot/ardupilot](https://github.com/ArduPilot/ardupilot)
120
+
121
+---
122
+
123
+## 4. [PX4](https://github.com/PX4/PX4-Autopilot)
124
+- **Description:** A powerful open-source **flight control software** used in drones and FPV systems.
125
+- **Features:**
126
+ - Supports both **FPV racing drones** and **autonomous UAVs**.
127
+ - Works with Pixhawk flight controllers and supports **ROS (Robot Operating System)**.
128
+- **GitHub:** [github.com/PX4/PX4-Autopilot](https://github.com/PX4/PX4-Autopilot)
129
+
130
+---
131
+
132
+## 5. [FalcoX](https://github.com/FlightOne/FalcoX)
133
+- **Description:** An alternative FPV flight control firmware focusing on **ease of use and smooth flight performance**.
134
+- **Features:**
135
+ - Intuitive configuration interface.
136
+ - Aimed at both **freestyle pilots** and **racers**.
137
+- **GitHub:** [github.com/FlightOne/FalcoX](https://github.com/FlightOne/FalcoX)
138
+
139
+---
140
+
141
+## 6. [ExpressLRS](https://github.com/ExpressLRS/ExpressLRS)
142
+- **Description:** Open-source long-range **radio control link** for FPV drones, competing with Crossfire and ELRS.
143
+- **Features:**
144
+ - **Low latency and high refresh rates** (great for FPV racing).
145
+ - Compatible with many radio transmitters (TBS, Jumper, Radiomaster).
146
+- **GitHub:** [github.com/ExpressLRS/ExpressLRS](https://github.com/ExpressLRS/ExpressLRS)
147
+
148
+---
149
+
150
+## 7. [OpenHD](https://github.com/OpenHD/OpenHD)
151
+- **Description:** Open-source **HD video transmission** for FPV drones (alternative to DJI HD systems).
152
+- **Features:**
153
+ - Uses **Raspberry Pi + WiFi** for HD FPV video streaming.
154
+ - Supports OSD (On-Screen Display) and telemetry data.
155
+- **GitHub:** [github.com/OpenHD/OpenHD](https://github.com/OpenHD/OpenHD)
156
+
157
+---
158
+
159
+## ๐Ÿ”ฅ Which One Should You Choose?
160
+| Purpose | Best Open-Source Project |
161
+| ------------------------------------------- | ------------------------------------------------------ |
162
+| **Racing/Freestyle FPV** | [Betaflight](https://github.com/betaflight/betaflight) |
163
+| **GPS & Long-Range FPV** | [iNav](https://github.com/iNavFlight/inav) |
164
+| **Full Autopilot (Drones, Planes, Rovers)** | [ArduPilot](https://github.com/ArduPilot/ardupilot) |
165
+| **Professional UAVs & Research** | [PX4](https://github.com/PX4/PX4-Autopilot) |
166
+| **HD FPV Video Streaming** | [OpenHD](https://github.com/OpenHD/OpenHD) |
167
+| **Long-Range Radio Links** | [ExpressLRS](https://github.com/ExpressLRS/ExpressLRS) |
168
+
169
+
170
+
171
+## standards
172
+
173
+### PNP stands for "Plug and Play."
174
+
175
+In the context of FPV drones, a PNP version means that the drone comes mostly assembled but does not include a radio receiver.
176
+
177
+Here's why it doesn't include a receiver:
178
+
179
+Flexibility: PNP versions cater to experienced FPV pilots who already have their preferred radio transmitter and receiver. This allows them to use their existing equipment and avoid paying for redundant components.
180
+Customization: Pilots might have specific receiver requirements based on their radio system (e.g., TBS Crossfire, ELRS, FrSky). Offering a PNP version lets them choose the exact receiver that's compatible with their setup.
181
+Cost Savings: By excluding the receiver, the manufacturer can offer the PNP version at a lower price point, making it attractive to those who don't need the included receiver.
182
+In short, PNP versions are designed for users who want to use their own radio gear and prefer to avoid unnecessary costs or compatibility issues.
183
+
184
+
185
+
186
+## popular products
187
+
188
+DJI
189
+
190
+- [DJI Avata 2 (Drone Only), FPV Drone with Camera 4K, Immersive Flight Experience, Built-in Propeller Guard, Easy Flip/Roll, Super-Wide 155ยฐ FOV, Compatible with RC Motion 3, FAA Remote ID Compliant](https://www.amazon.com/DJI-Immersive-Experience-Super-Wide-Compatible/dp/B0CS6KY96F/ref=sr_1_45?dib=eyJ2IjoiMSJ9.85xi15ftM4OWw33_siXrDRGNOKuf3CgQct4cVlBOFqI1ZAAZD4Gz_S4U_wqEKgjxWcsGOZPlWkdGdEASaTJntO1H_pFgsXO61wuEgveKAmLTLHR-cjsa5SOhaKUXU0vVHE7oijzqLoIPsx-H55gYNPr_F8aMX98OqPfwk64Ma12qrNSidLDVokmdegWL621v3U-5PDEaMNTjdACgOTHEBxAGhtxksaYVouWcSkxMCTI-jr0FkvxyQeZmO6S-UjXJcEcChxa4sPMjVyiK7070XhJlH2EnXqgnv0KScl80Jqc.AzbbGJAa2ls6bQWRCrudB-jGcm6vKV7pRItsIyBMpdA&dib_tag=se&keywords=FPV&qid=1744201259&sr=8-45)
191
+
192
+BetaFPV
193
+
194
+- [BETAFPV Betaflight ELRS V3 Cetus X FPV Kit with LiteRadio 3 Transmitter C04 Camera VR03 Goggles with DVR Recording Function, Supported 2S Power Advanced RTF Kit for FPV Beginners to Fly Faster Further](https://www.amazon.com/BETAFPV-LiteRadio-Transmitter-Recording-Betaflight/dp/B0BJVP3XW7/ref=sr_1_48?dib=eyJ2IjoiMSJ9.85xi15ftM4OWw33_siXrDRGNOKuf3CgQct4cVlBOFqI1ZAAZD4Gz_S4U_wqEKgjxWcsGOZPlWkdGdEASaTJntO1H_pFgsXO61wuEgveKAmLTLHR-cjsa5SOhaKUXU0vVHE7oijzqLoIPsx-H55gYNPr_F8aMX98OqPfwk64Ma12qrNSidLDVokmdegWL621v3U-5PDEaMNTjdACgOTHEBxAGhtxksaYVouWcSkxMCTI-jr0FkvxyQeZmO6S-UjXJcEcChxa4sPMjVyiK7070XhJlH2EnXqgnv0KScl80Jqc.AzbbGJAa2ls6bQWRCrudB-jGcm6vKV7pRItsIyBMpdA&dib_tag=se&keywords=FPV&qid=1744201259&sr=8-48) == rating == 3.5
195
+
196
+- [BETAFPV Pavo20 Brushless Whoop Quadcopter with HD Digital Bracket for O3 Air Unit, F4 2-3S 20A FC, 1103 8500KV Motor, COB LED Strip, Compatible for FPV Racing Indoor and Outdoor](https://www.amazon.com/BETAFPV-Brushless-Quadcopter-Material-Compatible/dp/B0CKT5G6C1/ref=sr_1_11?crid=1KCLBGZLCPWMM&dib=eyJ2IjoiMSJ9.u8zpDMqhQLF9cnPbc5r76LO9SVPJiVyPzTq0xdtVa2u4UYSXdyYl9H-Z3gMzqguhRBkKgkoRZWaxBHDFD6BRFsCQJKVb4iWibNm9DVSzo8jjnyx10jKEMfQICYMtZJab4CpDzmZXALE0VqfYmsl2b2z6zA536zmhj3MbQfvXxqOrlO8RzQiYLdFv-lIZbHe3VqkD5N2AuBL25TgOETuGrMPmYt7Yhvu1G4lry067nFXe06m0NOi7YGC9HehoblQsTDd1-4IPkuJfZGdR6OljCFD_F9mIqaJ-dIPMlULs8kg.m1NOD5DB1dn9oAtRj6kjXh5UkWTCRb94gNjUZ8Owz8Y&dib_tag=se&keywords=betafpv&qid=1744202445&sprefix=beta%2Caps%2C676&sr=8-11) == rating == 4.1
197
+
198
+
199
+SpeedyBee Frame
200
+
201
+- [Speedy Bee Bee35 3.5inch Cinewhoop FPV Drone Frame- Pro Version 4S 6S Frame Kit Compatible with DJI O3 Air Unit FPV VTX,Different Flight Controller Stack](https://www.amazon.com/3-5inch-Cinewhoop-Compatible-Different-Controller/dp/B086X5M24H/ref=sr_1_1?dib=eyJ2IjoiMSJ9.flOlB5a6W8Z4mxOLR-K_BDlWDFVnqHJ69LrRLHzsG3Vt1_EuF1CQCJw-erVA1bWn.aK6G-MxmMYmSkACuczQuR4yI0PIn2BzHbY4-bbiXRLo&dib_tag=se&keywords=bee35&qid=1744202041&sr=8-1)
202
+
203
+
204
+
205
+
206
+## ref
207
+
208
+- [[FPV]]
... ...
\ No newline at end of file
Tech-dat/Network-dat/RC-dat/quadcopter-dat/FPV-dat/FPV-simulation-dat/FPV-simulation-dat.md
... ...
@@ -0,0 +1,88 @@
1
+
2
+# FPV-simulation-dat
3
+
4
+## Popular FPV Simulators for PC
5
+
6
+| Simulator | Highlights | Price |
7
+| ------------- | ---------------------------------------------------------- | ----- |
8
+| Liftoff | Realistic physics, good for racing & freestyle | ~$20 |
9
+| VelociDrone | Excellent feel, popular for competition practice | ~$20 |
10
+| DRL Simulator | Based on the Drone Racing League, includes tracks & events | ~$10 |
11
+| Uncrashed | Stunning graphics, smooth flying | ~$15 |
12
+| FPV Freerider | Lightweight, good for low-end PCs | ~$5 |
13
+
14
+
15
+
16
+## Compatible Controllers
17
+
18
+- RadioMaster TX16S
19
+- FrSky Taranis QX7 / X9D
20
+- BetaFPV LiteRadio
21
+- DJI FPV controller (works with some sims)
22
+- Most transmitters that support USB or simulator mode
23
+
24
+
25
+
26
+## ๐Ÿ†“ Free or Open Source FPV Simulators for PC
27
+
28
+### ๐Ÿ›  FPV.Skydive (from ORQA)
29
+- โœ… Free on Steam
30
+- ๐Ÿง  Beginner-friendly with training modules
31
+- ๐ŸŽฎ Supports many controllers (via USB)
32
+- ๐Ÿ“ฆ Good for freestyle and basic racing
33
+- โ— Not open-source, but completely free
34
+- ๐Ÿ”— [Steam Link](https://store.steampowered.com/app/1645840/FPV_Skydive/)
35
+
36
+https://store.steampowered.com/app/1278060/FPV_SkyDive__FPV_Drone_Simulator/
37
+
38
+---
39
+
40
+### ๐Ÿ›  RotorHazard Simulator
41
+- โš™๏ธ Community-developed simulator inspired by RotorHazard timing system
42
+- ๐Ÿ–ฅ Lightweight, browser-based or local
43
+- ๐Ÿ’ป Not super polished, but interesting for DIY folks
44
+- ๐ŸŒ Open-source (GitHub available)
45
+- ๐Ÿ”— [GitHub Repository](https://github.com/RotorHazard)
46
+
47
+---
48
+
49
+### ๐Ÿ›  OpenFPV Simulator (dead?)
50
+- ๐ŸŒ Browser-based prototype sim
51
+- ๐Ÿ‘ถ Very basic physics and controls
52
+- ๐Ÿง‘โ€๐Ÿ’ป Open-source, you can fork or contribute
53
+- ๐Ÿ”ง Good for devs/hackers/experimenters
54
+- ๐Ÿ”— [GitHub Link](https://github.com/OpenFPV/openfpv-simulator)
55
+
56
+---
57
+
58
+### ๐Ÿ›  Multirotor Sim (Unity-based) (dead?)
59
+- ๐Ÿงช Community project with editable Unity source
60
+- ๐ŸŽฎ Supports USB controllers
61
+- ๐Ÿ”ง Needs a bit of setup, but can be modified freely
62
+- ๐Ÿ”— [GitHub Link](https://github.com/ArduPilot/multirotor_sim)
63
+
64
+---
65
+
66
+### ๐Ÿ“Œ Honorable Mentions (Free Trials or Demos)
67
+
68
+#### **FPV Freerider (Demo version)**
69
+- Limited map, but physics work well
70
+- ๐Ÿ”— [freeriderfpv.com](https://fpv-freerider.itch.io/fpv-freerider-recharged-demo)
71
+
72
+---
73
+
74
+### ๐Ÿงญ Recommendation
75
+
76
+- **If you're new and want a polished free experience:**
77
+ โžก๏ธ Try **[FPV.Skydive](https://store.steampowered.com/app/1645840/FPV_Skydive/)**
78
+
79
+- **If you're into tinkering or want to code your own sim:**
80
+ โžก๏ธ Check out **OpenFPV** or **Multirotor Sim** on GitHub
81
+
82
+
83
+
84
+
85
+## ref
86
+
87
+
88
+- [[FPV-dat]]
... ...
\ No newline at end of file
Tech-dat/Network-dat/RC-dat/quadcopter-dat/FPV-dat/Goggles-dat/Goggles-dat.md
... ...
@@ -0,0 +1,7 @@
1
+
2
+# Goggles-dat
3
+
4
+[DJI Goggles 3, FPV Goggles with Stunning Micro-OLED Screens, Immersive Flight Experience, O4 HD Video Transmission, Adjustable Diopters, Wireless Streaming, Drone Goggles with Real View PiP](https://www.amazon.com/DJI-Micro-OLED-Experience-Transmission-Adjustable/dp/B0CS6L6D6J/ref=sr_1_17?dib=eyJ2IjoiMSJ9.85xi15ftM4OWw33_siXrDRGNOKuf3CgQct4cVlBOFqI1ZAAZD4Gz_S4U_wqEKgjxWcsGOZPlWkdGdEASaTJntO1H_pFgsXO61wuEgveKAmLTLHR-cjsa5SOhaKUXU0vVHE7oijzqLoIPsx-H55gYNPr_F8aMX98OqPfwk64Ma12qrNSidLDVokmdegWL621v3U-5PDEaMNTjdACgOTHEBxAGhtxksaYVouWcSkxMCTI-jr0FkvxyQeZmO6S-UjXJcEcChxa4sPMjVyiK7070XhJlH2EnXqgnv0KScl80Jqc.AzbbGJAa2ls6bQWRCrudB-jGcm6vKV7pRItsIyBMpdA&dib_tag=se&keywords=FPV&qid=1744201259&sr=8-17)
5
+
6
+
7
+[Fat Shark Recon Echo FPV Goggles](https://www.amazon.com/Fat-Shark-Recon-Echo-Goggles/dp/B0CTB8VLYQ/ref=sr_1_41?dib=eyJ2IjoiMSJ9.85xi15ftM4OWw33_siXrDRGNOKuf3CgQct4cVlBOFqI1ZAAZD4Gz_S4U_wqEKgjxWcsGOZPlWkdGdEASaTJntO1H_pFgsXO61wuEgveKAmLTLHR-cjsa5SOhaKUXU0vVHE7oijzqLoIPsx-H55gYNPr_F8aMX98OqPfwk64Ma12qrNSidLDVokmdegWL621v3U-5PDEaMNTjdACgOTHEBxAGhtxksaYVouWcSkxMCTI-jr0FkvxyQeZmO6S-UjXJcEcChxa4sPMjVyiK7070XhJlH2EnXqgnv0KScl80Jqc.AzbbGJAa2ls6bQWRCrudB-jGcm6vKV7pRItsIyBMpdA&dib_tag=se&keywords=FPV&qid=1744201259&sr=8-41)
... ...
\ No newline at end of file
Tech-dat/Network-dat/RC-dat/quadcopter-dat/quadcopter-dat.md
... ...
@@ -0,0 +1,65 @@
1
+
2
+# quadcopter-dat
3
+
4
+
5
+## opensource
6
+
7
+### cleanfight
8
+
9
+https://github.com/cleanflight/cleanflight
10
+
11
+https://github.com/cleanflight/cleanflight/tree/master/docs
12
+
13
+https://cleanflight.com/
14
+
15
+
16
+### Openpilot
17
+
18
+## Commerial
19
+
20
+### CJMCU
21
+
22
+![](2025-01-29-17-12-32.png)
23
+
24
+- https://www.rcgroups.com/forums/showthread.php?2456739-Openpilot-port-to-CJMCU-stm32-quadcopter
25
+
26
+- https://oscarliang.com/build-fpv-micro-quadcopter-smallest-quad/
27
+
28
+#### new version from https://aeracoop.net/cjmcu2-open-source-brushed-quadcopter/
29
+
30
+https://github.com/Edragon/cjmcu2
31
+
32
+
33
+
34
+## BOM
35
+
36
+### receiver
37
+
38
+- [DT 2.4GHz Receivers](https://www.deltang.co.uk/)
39
+
40
+
41
+
42
+### props
43
+
44
+
45
+### motors
46
+
47
+
48
+### motor drive
49
+
50
+- [[mosfet-dat]]
51
+
52
+## forum
53
+
54
+- http://www.multiwii.com/forum
55
+- https://www.rcgroups.com/forums
56
+
57
+
58
+
59
+## hexquadcopter
60
+
61
+- http://www.multiwii.com/forum/viewtopic.php?f=12&t=4893&p=53317#p53317
62
+
63
+## ref
64
+
65
+- [[quadcopter]]
... ...
\ No newline at end of file
Tech-dat/Network-dat/RC-dat/rover-dat/2025-05-23-15-11-02.png
... ...
Binary files /dev/null and b/Tech-dat/Network-dat/RC-dat/rover-dat/2025-05-23-15-11-02.png differ
Tech-dat/Network-dat/RC-dat/rover-dat/rc-car-dat/2025-03-25-15-00-18.png
... ...
Binary files /dev/null and b/Tech-dat/Network-dat/RC-dat/rover-dat/rc-car-dat/2025-03-25-15-00-18.png differ
Tech-dat/Network-dat/RC-dat/rover-dat/rc-car-dat/2025-03-25-15-00-49.png
... ...
Binary files /dev/null and b/Tech-dat/Network-dat/RC-dat/rover-dat/rc-car-dat/2025-03-25-15-00-49.png differ
Tech-dat/Network-dat/RC-dat/rover-dat/rc-car-dat/2025-03-25-15-01-11.png
... ...
Binary files /dev/null and b/Tech-dat/Network-dat/RC-dat/rover-dat/rc-car-dat/2025-03-25-15-01-11.png differ
Tech-dat/Network-dat/RC-dat/rover-dat/rc-car-dat/2025-03-25-15-02-19.png
... ...
Binary files /dev/null and b/Tech-dat/Network-dat/RC-dat/rover-dat/rc-car-dat/2025-03-25-15-02-19.png differ
Tech-dat/Network-dat/RC-dat/rover-dat/rc-car-dat/2025-03-28-18-44-53.png
... ...
Binary files /dev/null and b/Tech-dat/Network-dat/RC-dat/rover-dat/rc-car-dat/2025-03-28-18-44-53.png differ
Tech-dat/Network-dat/RC-dat/rover-dat/rc-car-dat/RC-car-dat.md
... ...
@@ -0,0 +1,49 @@
1
+
2
+# RC-car-dat
3
+
4
+- [[video-RC-car-dat]]
5
+
6
+basic [[tech-dat]] - [[robot-dat]]
7
+
8
+
9
+
10
+## Tracked robot platform
11
+
12
+![](2025-03-25-15-02-19.png)
13
+
14
+![](2025-03-25-15-01-11.png)
15
+
16
+
17
+![](2025-03-25-15-00-49.png)
18
+
19
+![](2025-03-25-15-00-18.png)
20
+
21
+## tricycle / four-wheels platform
22
+
23
+![](2025-03-28-18-44-53.png)
24
+
25
+tricycle
26
+
27
+Four-wheel two-drive car
28
+
29
+Four-wheel drive car
30
+
31
+Omnidirectional four-wheel two-wheel drive car
32
+
33
+
34
+## other
35
+
36
+### robot tank with camera
37
+
38
+- https://github.com/YahboomTechnology/Raspberry-pi-G1-Tank
39
+
40
+
41
+## read
42
+
43
+- [Tear down and Learn a good-build $20 RC Toy Car](https://www.electrodragon.com/disassemble-and-learn-a-good-build-20-rc-toy-car/)
44
+
45
+## ref
46
+
47
+- [[motor-dat]]
48
+
49
+- [[RC-car]]
... ...
\ No newline at end of file
Tech-dat/Network-dat/RC-dat/rover-dat/rc-car-dat/rc-car-hack-dat/2025-05-12-18-37-13.png
... ...
Binary files /dev/null and b/Tech-dat/Network-dat/RC-dat/rover-dat/rc-car-dat/rc-car-hack-dat/2025-05-12-18-37-13.png differ
Tech-dat/Network-dat/RC-dat/rover-dat/rc-car-dat/rc-car-hack-dat/rc-car-hack-dat.md
... ...
@@ -0,0 +1,44 @@
1
+
2
+# rc-car-hack-dat
3
+
4
+
5
+## 1. battery Enlargement
6
+
7
+- [[lithium-battery-dat]] - [[battery-pack-dat]]
8
+
9
+
10
+## 2. RC Signal Extension
11
+
12
+- improve up to 10KM by [[FPV-dat]] system [[ELRS-dat]], or [[PPM-dat]] == [[Wfly-dat]]
13
+
14
+- [[antenna-dat]]
15
+
16
+- control system - try to hack by [[arduino-dat]]
17
+
18
+## 3. Imaging System
19
+
20
+- [[video-transmission-dat]] == pickup option == [[LTE-dat]]
21
+
22
+
23
+## 4. GNSS location system
24
+
25
+- [[location-dat]]
26
+
27
+
28
+## other fancy functions
29
+
30
+- [[WS2812-dat]]
31
+
32
+
33
+
34
+
35
+## Accessories
36
+
37
+- [[Velcro-dat]]
38
+
39
+
40
+## Get Inpsired
41
+
42
+The battery can be put in your top luggage rack
43
+
44
+![](2025-05-12-18-37-13.png)
Tech-dat/Network-dat/RC-dat/rover-dat/rc-car-dat/video-rc-car-dat/2025-03-25-14-43-46.png
... ...
Binary files /dev/null and b/Tech-dat/Network-dat/RC-dat/rover-dat/rc-car-dat/video-rc-car-dat/2025-03-25-14-43-46.png differ
Tech-dat/Network-dat/RC-dat/rover-dat/rc-car-dat/video-rc-car-dat/2025-03-25-14-48-15.png
... ...
Binary files /dev/null and b/Tech-dat/Network-dat/RC-dat/rover-dat/rc-car-dat/video-rc-car-dat/2025-03-25-14-48-15.png differ
Tech-dat/Network-dat/RC-dat/rover-dat/rc-car-dat/video-rc-car-dat/2025-03-25-14-48-28.png
... ...
Binary files /dev/null and b/Tech-dat/Network-dat/RC-dat/rover-dat/rc-car-dat/video-rc-car-dat/2025-03-25-14-48-28.png differ
Tech-dat/Network-dat/RC-dat/rover-dat/rc-car-dat/video-rc-car-dat/video-RC-car-dat.md
... ...
@@ -0,0 +1,36 @@
1
+
2
+# video-RC-car-dat
3
+
4
+
5
+[[tech-dat]] - [[Camera-dat]] - [[rc-car-dat]] - [[video-transmission-dat]] - [[robot-dat]]
6
+
7
+- [[rc-car-hack-dat]]
8
+
9
+## Demos
10
+
11
+### based on cable [[fiber-optic-dat]]
12
+
13
+#### demos 1
14
+
15
+up to 100 meters
16
+
17
+![](2025-03-25-14-43-46.png)
18
+
19
+![](2025-03-25-14-48-15.png)
20
+
21
+![](2025-03-25-14-48-28.png)
22
+
23
+
24
+#### demo video 2
25
+
26
+- https://t.me/electrodragon3/334
27
+
28
+### Wireless
29
+
30
+- [[video-transmission-dat]]
31
+
32
+## ref
33
+
34
+- [[video-RC-car]] - [[RC-car]] - [[video-transmission]]
35
+
36
+- [[camera]]
... ...
\ No newline at end of file
Tech-dat/Network-dat/RC-dat/rover-dat/rover-dat.md
... ...
@@ -0,0 +1,44 @@
1
+
2
+# rover-dat
3
+
4
+- [[ardupilot-dat]] - [[rc-dat]]
5
+
6
+https://ardupilot.org/rover/index.html
7
+
8
+- [[RC-car-dat]] - [[rover-dat]] - [[RC-car-hack-dat]]
9
+
10
+- [[rc-signal-dat]]
11
+
12
+- ARKV6X Flight Controller Overview
13
+- ARK FPV Flight Controller Overview == STM32H743IIK6 MCU
14
+- CUAV V5 Plus Overview == STM32F765
15
+
16
+
17
+
18
+## 3D printed
19
+
20
+- [[markus-rover-dat]]
21
+
22
+
23
+## 3D files
24
+
25
+![](2025-05-23-15-11-02.png)
26
+
27
+[differential drive robot](https://cad.onshape.com/documents/78baf3d450629341539223b8/w/67b1d15167c8efd1d8242192/e/0e64a58d61cf14a49375d9c6?renderMode=0&uiState=68301fdbbe87bf505c7cb858)
28
+
29
+[TT Motor 4WD Car Mecanum wheel](https://cad.onshape.com/documents/ffe6ad9ac868a2e0b125a547/w/06961ea3665cb10f47c1f6fe/e/c6b6790270216188fea6ddec?renderMode=0&uiState=6830205c37d051363fada807)
30
+
31
+[Another TT Motor 4WD Car Mecanum wheel](https://cad.onshape.com/documents/3fc9a68709b7b211c126b7b0/w/fd59e3cfbe0cf012d3264ef8/e/f35859a1e063a8642be26811?renderMode=0&uiState=68302088624d574aaab00cc0)
32
+
33
+
34
+## board
35
+
36
+- [[SDR1064-dat]]
37
+
38
+Parts - [[TT-motor-dat]] - [[mecanum-wheel-dat]]
39
+
40
+## ref
41
+
42
+- [[dc-motor-dat]]
43
+
44
+- [[rc-car]] - [[maker]]
... ...
\ No newline at end of file
app-dat/RC-dat/ArduPilot-dat/2025-05-04-16-11-57.png
... ...
Binary files a/app-dat/RC-dat/ArduPilot-dat/2025-05-04-16-11-57.png and /dev/null differ
app-dat/RC-dat/ArduPilot-dat/ArduPilot-dat.md
... ...
@@ -1,93 +0,0 @@
1
-
2
-# ArduPilot-dat
3
-
4
-
5
-## Radio Control Systems
6
-
7
-
8
-- [Radio Control Systems](https://ardupilot.org/rover/docs/common-rc-systems.html)
9
-
10
-Compatible RC Protocols
11
-
12
-ArduPilot autopilots are compatible with the following receiver output protocols:
13
-
14
-PPM-Sum receivers - [[PPM-dat]]
15
-
16
-SBus receivers - [[SBUS-dat]]
17
-
18
-Fast SBus (from DJI HDL video/RC systems)
19
-
20
-i-BUS receivers - [[IBUS-dat]]
21
-
22
-FPort Receivers
23
-
24
-Spektrum SRXL2,DSM, DSM2, and DSM-X Satellite receivers
25
-
26
-Multiplex SRXL version 1 and version 2 receivers
27
-
28
-CRSF receivers (including ExpressLRS systems) - [[ELRS-dat]] - [[CRSF-dat]]
29
-
30
-mLRS (with telemetry) (MAVLink)
31
-
32
-Graupner SUM-D
33
-
34
-IRC Ghost
35
-
36
-DroneCAN peripherals can decode these RC protocols on a peripheral and pass to the autopilot
37
-
38
-MAVLink connected RC (not to be confused with MAVLink RC Overrides used for CS joystick control of RC functions)
39
-
40
-Parallel PWM outputs encoded to PPM-Sum using an external encoder (see below, not supported on many autopilots now)
41
-
42
-
43
-
44
-## specs
45
-
46
-| Original Manu | Range | Telemetry | Telem Speed | TX Display | RC Protocol | Notes |
47
-| --------------- | ------ | --------------- | ----------- | ----------- | -------------------- | ----- |
48
-| Flysky | Short | Yes | | yes | i-BUS/SBUS | 7 |
49
-| FrSky X series | Short | Bi-dir | Medium | yes | PPM-SUM/SBUS/ FPort | 2 |
50
-| Futaba | Short | No | | | SBus | |
51
-| Graupner | Short | Yes | Medium | yes | SUM-D | |
52
-| Multiplex | Short | No | | | SRXL | |
53
-| Spektrum | Short | Vendor Specific | | yes | DSM/DSM2 DSM-X/ SRXL | |
54
-| FrSky R9 series | Medium | Bi-dir | Medium | yes | PPM-SUM/SBUS/ FPort | 2 |
55
-| IRC Ghost | Medium | Vendor Specific | | yes | IRC Ghost | |
56
-| [[CRSF-dat]] | Long | Bi-dir | Variable | yes | SBUS/CRSF | 3 |
57
-| DragonLink | Long | Bi-dir | 56K | via MTP/LUA | PPM_SUM/SBUS | 1 |
58
-| [[ELRS-dat]] | Long | Bi-Dir | Variable | optional | SBUS/CRSF Mavlink | 4 |
59
-| HereLink | Long | Bi-dir | 56K | integrated | SBUS | 8 |
60
-| mLRS | Long | Bi-dir | 12K - 91K | via LUA | SBUS/CRSF | 5 |
61
-| SIYI | Long | Bi-dir | 56K | integrated | SBUS | 8 |
62
-
63
-- [[network-dat]]
64
-
65
-RC protocols - [[SBUS-dat]] - [[CRSF-dat]] - [[PPM-SUM-dat]] - [[Fport-dat]] - [[SUM-D-dat]] - [[IBUS-dat]] - [[DSM-dat]]
66
-
67
-
68
-
69
-Note 1: DragonLink provides a 56Kbaud transparent link for telemetry, allowing full MAVLink telemetry to/from the vehicle from the transmitter module. Dragonlink is an add-on module to the transmitter, such as an FRSky Taranis or RadioMaster T16. See DragonLink RC Systems. MTP (Mavlink to Passthru) converters are available to allow direct display of MAVLink Telemetry data on OpenTX transmitters using Yaapu Telemetry LUA Script.
70
-
71
-Note 2: See Yaapu FrSky Telemetry Script for OpenTX. The ability to change parameters over FRSky telemetry from an Open TX compatible transmitter in addition to displaying the telemetry data is possible. Most FRSky compatible transmitters use OpenTX. Note that R9 systems are not quite Long Range, but much further range than normal FRSky systems, themselves at the very high end of the Short Range category at 1.6-2km range.
72
-
73
-Note 3: ArduPilot provides a means to send its telemetry data via CRSF such that it can be displayed on OpenTX transmitters using the Yaapu Telemetry LUA Script. The ability to change parameters over CRSF telemetry from an Open TX compatible transmitter in addition to displaying the telemetry data is also possible. See TBS Crossfire Telemetry
74
-
75
-Note 4: ELRS (ExpressLRS) is a flexible open-source system that can output CRSF, SBUS, or MAVLink (with embedded RC) protocols. Telemetry requires the use of CRSF or Mavlink, and the receiver must be wired to a full UART. See ExpressLRS site <https://www.expresslrs.org/> and TBS CRSF/ ELRS for more information.
76
-
77
-Note 5: The mLRS project is firmware designed specifically to carry both RC and MAVLink. The usable telemetry speed varies by the chosen mode and is managed via RADIO_STATUS flow control. It uses the CRSF (TBS Crossfire) RC protocol on both the receiver and Tx module. It also integrates full MAVLink telemetry via serial connections on the Tx module and the receiver.
78
-
79
-Note 6: Vendor Specific Telem means that they accomodate sensor additions to the vehicle and can display the information on certain Vendor specific TXs but do not send ArduPilot telemetry from the vehicle to ArduPilot compatible GCS or OpenTX display scripts.
80
-
81
-Note 7: The receiver must support i-BUS telemetry (look for a SENS port on the receiver or check the product specifications).
82
-
83
-Note 8: These systems have integrated HD video transmission from Ethernet or HDMI camera systems in addition to RC control and vehicle telemetry.
84
-
85
-
86
-## protocol converter
87
-
88
-![](2025-05-04-16-11-57.png)
89
-
90
-
91
-## ref
92
-
93
-- [[ardupilot-dat]] - [[FPV]]
... ...
\ No newline at end of file
app-dat/RC-dat/RC-code-dat/PWM-1ch.ino
... ...
@@ -1,74 +0,0 @@
1
-// Define pins for each RC channel
2
-int aileronPin = 2; // Channel 1
3
-
4
-const int ENA = 5; // PWM for speed for Motor 1
5
-const int ENB = 4; // PWM for speed for Motor 2
6
-
7
-const int IN1 = 0; // Direction for Motor 1 (IN2_Motor1 is inverted in hardware)
8
-const int IN2 = 2; // Direction pin 1 for Motor 2
9
-
10
-long aileronControl;
11
-
12
-long readAileronControlSignal() {
13
- unsigned long rawPWM = pulseIn(aileronPin, HIGH, 25000);
14
- if (rawPWM == 0) { // Timeout or no signal
15
- return 50; // Mid-point for 0-100 scale (1500us equivalent)
16
- }
17
- long constrainedPWM = constrain(rawPWM, 1000, 2000);
18
- return map(constrainedPWM, 1000, 2000, 0, 100);
19
-}
20
-
21
-void setup() {
22
- pinMode(aileronPin, INPUT);
23
-
24
- pinMode(ENA, OUTPUT);
25
- pinMode(ENB, OUTPUT);
26
- pinMode(IN1, OUTPUT);
27
- pinMode(IN2, OUTPUT);
28
-
29
- // Initialize motors to off
30
- digitalWrite(IN1, LOW);
31
- digitalWrite(IN2, LOW);
32
- analogWrite(ENA, 0);
33
- analogWrite(ENB, 0);
34
-
35
- Serial.begin(9600);
36
-}
37
-
38
-void loop() {
39
- // Read mapped control signals from each channel
40
- aileronControl = readAileronControlSignal();
41
-
42
- // Print the mapped control signal values to the Serial Monitor
43
- Serial.print("Aileron: ");
44
- Serial.print(aileronControl);
45
- Serial.println(); // Newline for better readability
46
-
47
- if (aileronControl > 70) {
48
- // Forward
49
- digitalWrite(IN1, HIGH); // Motor 1 forward
50
- digitalWrite(IN2, HIGH); // Motor 2 forward
51
-
52
- // Map aileronControl (61-100) to PWM speed (e.g., 100-255)
53
- int motorSpeed = map(aileronControl, 61, 100, 100, 255);
54
- analogWrite(ENA, motorSpeed);
55
- analogWrite(ENB, motorSpeed);
56
- } else if (aileronControl < 30) {
57
- // Backward
58
- digitalWrite(IN1, LOW); // Motor 1 backward
59
- digitalWrite(IN2, LOW); // Motor 2 backward
60
-
61
- // Map aileronControl (0-39) to PWM speed (e.g., 255-100, reversing the range for backward)
62
- int motorSpeed = map(aileronControl, 0, 39, 255, 100);
63
- analogWrite(ENA, motorSpeed);
64
- analogWrite(ENB, motorSpeed);
65
- } else {
66
- // Stop motors (aileronControl is between 40 and 60 inclusive)
67
- digitalWrite(IN1, LOW);
68
- digitalWrite(IN2, LOW);
69
- analogWrite(ENA, 0);
70
- analogWrite(ENB, 0);
71
- }
72
-
73
- delay(100); // Limit output rate
74
-}
... ...
\ No newline at end of file
app-dat/RC-dat/RC-code-dat/PWM-2ch-2.ino
... ...
@@ -1,142 +0,0 @@
1
-// Define pins for each RC channel
2
-int aileronPin = 14; // Channel 1 (Throttle)
3
-int elevatorPin = 12; // Channel 2 (Steering)
4
-
5
-const int ENA = 5; // PWM for speed for Motor 1
6
-const int ENB = 4; // PWM for speed for Motor 2
7
-
8
-const int IN1 = 0; // Direction for Motor 1
9
-const int IN2 = 2; // Direction pin 1 for Motor 2
10
-
11
-long aileronControl; // Mapped value from aileron channel (0-100)
12
-long elevatorControl; // Mapped value from elevator channel (0-100)
13
-
14
-// Reads the PWM signal from the aileron channel and maps it to 0-100
15
-long readAileronControlSignal() {
16
- unsigned long rawPWM = pulseIn(aileronPin, HIGH, 25000);
17
- // If signal is lost (timeout) or clearly out of valid RC pulse range, return neutral (50)
18
- // Valid RC pulses are typically 1000-2000us. Values outside ~900-2100us are treated as invalid.
19
- if (rawPWM == 0 || rawPWM < 900 || rawPWM > 2100) {
20
- return 50; // Mid-point for 0-100 scale (1500us equivalent), results in stop
21
- }
22
- // Otherwise, the signal is likely valid; constrain it to the standard 1000-2000us range and map
23
- long constrainedPWM = constrain(rawPWM, 1000, 2000);
24
- return map(constrainedPWM, 1000, 2000, 0, 100);
25
-}
26
-
27
-// Reads the PWM signal from the elevator channel and maps it to 0-100
28
-long readElevatorControlSignal() {
29
- unsigned long rawPWM = pulseIn(elevatorPin, HIGH, 25000);
30
- // If signal is lost (timeout) or clearly out of valid RC pulse range, return neutral (50)
31
- // Valid RC pulses are typically 1000-2000us. Values outside ~900-2100us are treated as invalid.
32
- if (rawPWM == 0 || rawPWM < 900 || rawPWM > 2100) {
33
- return 50; // Mid-point for 0-100 scale (1500us equivalent), results in stop
34
- }
35
- // Otherwise, the signal is likely valid; constrain it to the standard 1000-2000us range and map
36
- long constrainedPWM = constrain(rawPWM, 1000, 2000);
37
- return map(constrainedPWM, 1000, 2000, 0, 100);
38
-}
39
-
40
-void setup() {
41
- pinMode(aileronPin, INPUT);
42
- pinMode(elevatorPin, INPUT); // Initialize elevator pin
43
-
44
- pinMode(ENA, OUTPUT);
45
- pinMode(ENB, OUTPUT);
46
- pinMode(IN1, OUTPUT);
47
- pinMode(IN2, OUTPUT);
48
-
49
- // Initialize motors to off
50
- digitalWrite(IN1, LOW);
51
- digitalWrite(IN2, LOW);
52
- analogWrite(ENA, 0);
53
- analogWrite(ENB, 0);
54
-
55
- Serial.begin(9600);
56
-}
57
-
58
-// Helper function to control a single motor
59
-// pwmVal: -255 (full backward) to 255 (full forward)
60
-void setMotorOutput(int dirPin, int speedPin, int pwmVal) {
61
- if (pwmVal > 0) { // Forward
62
- digitalWrite(dirPin, HIGH);
63
- analogWrite(speedPin, pwmVal);
64
- } else if (pwmVal < 0) { // Backward
65
- digitalWrite(dirPin, LOW);
66
- analogWrite(speedPin, -pwmVal); // Speed is positive
67
- } else { // Stop
68
- digitalWrite(dirPin, LOW); // Or HIGH, doesn't matter much if speed is 0
69
- analogWrite(speedPin, 0);
70
- }
71
-}
72
-
73
-// Helper function to map RC control input (0-100) to an output range (e.g., -255 to 255)
74
-// with a deadband around the center (e.g., 50).
75
-long mapWithDeadband(long rcValue, int rcMin, int rcMax, int rcCenter, int deadbandRadius, int outMin, int outMax) {
76
- long mappedValue = 0;
77
- int deadbandLower = rcCenter - deadbandRadius;
78
- int deadbandUpper = rcCenter + deadbandRadius;
79
-
80
- if (rcValue < deadbandLower) {
81
- // Map the range [rcMin, deadbandLower - 1] to [outMin, -1]
82
- // Ensure deadbandLower - 1 is not less than rcMin
83
- if (deadbandLower -1 < rcMin) {
84
- mappedValue = outMin;
85
- } else {
86
- mappedValue = map(rcValue, rcMin, deadbandLower - 1, outMin, -1);
87
- }
88
- } else if (rcValue > deadbandUpper) {
89
- // Map the range [deadbandUpper + 1, rcMax] to [1, outMax]
90
- // Ensure deadbandUpper + 1 is not greater than rcMax
91
- if (deadbandUpper + 1 > rcMax) {
92
- mappedValue = outMax;
93
- } else {
94
- mappedValue = map(rcValue, deadbandUpper + 1, rcMax, 1, outMax);
95
- }
96
- } else {
97
- // Inside deadband
98
- mappedValue = 0;
99
- }
100
- return constrain(mappedValue, outMin, outMax);
101
-}
102
-
103
-void loop() {
104
- // Read mapped control signals from each channel
105
- aileronControl = readAileronControlSignal(); // Throttle (0-100)
106
- elevatorControl = readElevatorControlSignal(); // Steering (0-100)
107
-
108
- // Print the mapped control signal values to the Serial Monitor
109
- Serial.print("Aileron (Throttle): ");
110
- Serial.print(aileronControl);
111
- Serial.print(" Elevator (Steering): ");
112
- Serial.print(elevatorControl);
113
- Serial.println();
114
-
115
- // Define deadband radius (e.g., +/- 5 around center of 50 for a 0-100 input)
116
- // This means input values from 45 to 55 (inclusive if center is 50 and radius is 5) will be treated as 0.
117
- int deadbandRadius = 10;
118
- float steeringFactor = 3; // Adjust this value to change steering sensitivity
119
- float throttleFactor = 3; // Adjust this value to change throttle sensitivity (e.g., 1.2 for 20% stronger throttle)
120
-
121
- // Map control values with deadband
122
- long rawThrottleValue = mapWithDeadband(aileronControl, 0, 100, 50, deadbandRadius, -255, 255);
123
- long rawSteeringValue = mapWithDeadband(elevatorControl, 0, 100, 50, deadbandRadius, -255, 255);
124
-
125
- // Apply sensitivity factors
126
- long throttleValue = rawThrottleValue * throttleFactor;
127
- long adjustedSteeringValue = rawSteeringValue * steeringFactor;
128
-
129
- // Mix throttle and steering for differential drive
130
- long motor1Pwm = throttleValue + adjustedSteeringValue;
131
- long motor2Pwm = throttleValue - adjustedSteeringValue;
132
-
133
- // Constrain PWM values to the valid range [-255, 255]
134
- motor1Pwm = constrain(motor1Pwm, -255, 255);
135
- motor2Pwm = constrain(motor2Pwm, -255, 255);
136
-
137
- // Set motor speeds and directions
138
- setMotorOutput(IN1, ENA, motor1Pwm); // Motor 1
139
- setMotorOutput(IN2, ENB, motor2Pwm); // Motor 2
140
-
141
- delay(20); // Shorter delay for better responsiveness
142
-}
... ...
\ No newline at end of file
app-dat/RC-dat/RC-code-dat/PWM-2ch-v2.ino
... ...
@@ -1,68 +0,0 @@
1
-// RC signal input pins
2
-#define THROTTLE_PIN 2 // Channel 1 (forward/back)
3
-#define STEERING_PIN 3 // Channel 2 (left/right)
4
-
5
-// Motor control pins (L298N)
6
-#define LEFT_ENA 9
7
-#define LEFT_IN1 4
8
-#define LEFT_IN2 5
9
-
10
-#define RIGHT_ENB 10
11
-#define RIGHT_IN3 6
12
-#define RIGHT_IN4 7
13
-
14
-int throttle, steering;
15
-
16
-void setup() {
17
- pinMode(THROTTLE_PIN, INPUT);
18
- pinMode(STEERING_PIN, INPUT);
19
-
20
- pinMode(LEFT_IN1, OUTPUT);
21
- pinMode(LEFT_IN2, OUTPUT);
22
- pinMode(LEFT_ENA, OUTPUT);
23
-
24
- pinMode(RIGHT_IN3, OUTPUT);
25
- pinMode(RIGHT_IN4, OUTPUT);
26
- pinMode(RIGHT_ENB, OUTPUT);
27
-
28
- Serial.begin(9600);
29
-}
30
-
31
-void loop() {
32
- // Read PWM input
33
- throttle = pulseIn(THROTTLE_PIN, HIGH, 25000);
34
- steering = pulseIn(STEERING_PIN, HIGH, 25000);
35
-
36
- // Center = 1500, range = 1000โ€“2000
37
- int throttleVal = map(throttle, 1000, 2000, -255, 255);
38
- int steeringVal = map(steering, 1000, 2000, -100, 100); // less aggressive
39
-
40
- // Motor mixing (differential drive)
41
- int leftSpeed = constrain(throttleVal + steeringVal, -255, 255);
42
- int rightSpeed = constrain(throttleVal - steeringVal, -255, 255);
43
-
44
- setMotor(LEFT_IN1, LEFT_IN2, LEFT_ENA, leftSpeed);
45
- setMotor(RIGHT_IN3, RIGHT_IN4, RIGHT_ENB, rightSpeed);
46
-
47
- // Debug
48
- Serial.print("Throttle: "); Serial.print(throttleVal);
49
- Serial.print(" Steering: "); Serial.print(steeringVal);
50
- Serial.print(" L: "); Serial.print(leftSpeed);
51
- Serial.print(" R: "); Serial.println(rightSpeed);
52
-
53
- delay(20);
54
-}
55
-
56
-void setMotor(int in1, int in2, int ena, int speed) {
57
- if (speed > 0) {
58
- digitalWrite(in1, HIGH);
59
- digitalWrite(in2, LOW);
60
- } else if (speed < 0) {
61
- digitalWrite(in1, LOW);
62
- digitalWrite(in2, HIGH);
63
- } else {
64
- digitalWrite(in1, LOW);
65
- digitalWrite(in2, LOW);
66
- }
67
- analogWrite(ena, abs(speed));
68
-}
app-dat/RC-dat/RC-code-dat/PWM-2ch.ino
... ...
@@ -1,136 +0,0 @@
1
-// Define pins for each RC channel
2
-int aileronPin = 14; // Channel 1 (Throttle)
3
-int elevatorPin = 12; // Channel 2 (Steering)
4
-
5
-const int ENA = 5; // PWM for speed for Motor 1
6
-const int ENB = 4; // PWM for speed for Motor 2
7
-
8
-const int IN1 = 0; // Direction for Motor 1
9
-const int IN2 = 2; // Direction pin 1 for Motor 2
10
-
11
-long aileronControl; // Mapped value from aileron channel (0-100)
12
-long elevatorControl; // Mapped value from elevator channel (0-100)
13
-
14
-// Reads the PWM signal from the aileron channel and maps it to 0-100
15
-long readAileronControlSignal() {
16
- unsigned long rawPWM = pulseIn(aileronPin, HIGH, 25000);
17
- if (rawPWM == 0) { // Timeout or no signal
18
- return 50; // Mid-point for 0-100 scale (1500us equivalent)
19
- }
20
- long constrainedPWM = constrain(rawPWM, 1000, 2000);
21
- return map(constrainedPWM, 1000, 2000, 0, 100);
22
-}
23
-
24
-// Reads the PWM signal from the elevator channel and maps it to 0-100
25
-long readElevatorControlSignal() {
26
- unsigned long rawPWM = pulseIn(elevatorPin, HIGH, 25000);
27
- if (rawPWM == 0) { // Timeout or no signal
28
- return 50; // Mid-point for 0-100 scale (1500us equivalent)
29
- }
30
- long constrainedPWM = constrain(rawPWM, 1000, 2000);
31
- return map(constrainedPWM, 1000, 2000, 0, 100);
32
-}
33
-
34
-void setup() {
35
- pinMode(aileronPin, INPUT);
36
- pinMode(elevatorPin, INPUT); // Initialize elevator pin
37
-
38
- pinMode(ENA, OUTPUT);
39
- pinMode(ENB, OUTPUT);
40
- pinMode(IN1, OUTPUT);
41
- pinMode(IN2, OUTPUT);
42
-
43
- // Initialize motors to off
44
- digitalWrite(IN1, LOW);
45
- digitalWrite(IN2, LOW);
46
- analogWrite(ENA, 0);
47
- analogWrite(ENB, 0);
48
-
49
- Serial.begin(9600);
50
-}
51
-
52
-// Helper function to control a single motor
53
-// pwmVal: -255 (full backward) to 255 (full forward)
54
-void setMotorOutput(int dirPin, int speedPin, int pwmVal) {
55
- if (pwmVal > 0) { // Forward
56
- digitalWrite(dirPin, HIGH);
57
- analogWrite(speedPin, pwmVal);
58
- } else if (pwmVal < 0) { // Backward
59
- digitalWrite(dirPin, LOW);
60
- analogWrite(speedPin, -pwmVal); // Speed is positive
61
- } else { // Stop
62
- digitalWrite(dirPin, LOW); // Or HIGH, doesn't matter much if speed is 0
63
- analogWrite(speedPin, 0);
64
- }
65
-}
66
-
67
-// Helper function to map RC control input (0-100) to an output range (e.g., -255 to 255)
68
-// with a deadband around the center (e.g., 50).
69
-long mapWithDeadband(long rcValue, int rcMin, int rcMax, int rcCenter, int deadbandRadius, int outMin, int outMax) {
70
- long mappedValue = 0;
71
- int deadbandLower = rcCenter - deadbandRadius;
72
- int deadbandUpper = rcCenter + deadbandRadius;
73
-
74
- if (rcValue < deadbandLower) {
75
- // Map the range [rcMin, deadbandLower - 1] to [outMin, -1]
76
- // Ensure deadbandLower - 1 is not less than rcMin
77
- if (deadbandLower -1 < rcMin) {
78
- mappedValue = outMin;
79
- } else {
80
- mappedValue = map(rcValue, rcMin, deadbandLower - 1, outMin, -1);
81
- }
82
- } else if (rcValue > deadbandUpper) {
83
- // Map the range [deadbandUpper + 1, rcMax] to [1, outMax]
84
- // Ensure deadbandUpper + 1 is not greater than rcMax
85
- if (deadbandUpper + 1 > rcMax) {
86
- mappedValue = outMax;
87
- } else {
88
- mappedValue = map(rcValue, deadbandUpper + 1, rcMax, 1, outMax);
89
- }
90
- } else {
91
- // Inside deadband
92
- mappedValue = 0;
93
- }
94
- return constrain(mappedValue, outMin, outMax);
95
-}
96
-
97
-void loop() {
98
- // Read mapped control signals from each channel
99
- aileronControl = readAileronControlSignal(); // Throttle (0-100)
100
- elevatorControl = readElevatorControlSignal(); // Steering (0-100)
101
-
102
- // Print the mapped control signal values to the Serial Monitor
103
- Serial.print("Aileron (Throttle): ");
104
- Serial.print(aileronControl);
105
- Serial.print(" Elevator (Steering): ");
106
- Serial.print(elevatorControl);
107
- Serial.println();
108
-
109
- // Define deadband radius (e.g., +/- 5 around center of 50 for a 0-100 input)
110
- // This means input values from 45 to 55 (inclusive if center is 50 and radius is 5) will be treated as 0.
111
- int deadbandRadius = 5;
112
- float steeringFactor = 1.5; // Adjust this value to change steering sensitivity
113
- float throttleFactor = 1.3; // Adjust this value to change throttle sensitivity (e.g., 1.2 for 20% stronger throttle)
114
-
115
- // Map control values with deadband
116
- long rawThrottleValue = mapWithDeadband(aileronControl, 0, 100, 50, deadbandRadius, -255, 255);
117
- long rawSteeringValue = mapWithDeadband(elevatorControl, 0, 100, 50, deadbandRadius, -255, 255);
118
-
119
- // Apply sensitivity factors
120
- long throttleValue = rawThrottleValue * throttleFactor;
121
- long adjustedSteeringValue = rawSteeringValue * steeringFactor;
122
-
123
- // Mix throttle and steering for differential drive
124
- long motor1Pwm = throttleValue + adjustedSteeringValue;
125
- long motor2Pwm = throttleValue - adjustedSteeringValue;
126
-
127
- // Constrain PWM values to the valid range [-255, 255]
128
- motor1Pwm = constrain(motor1Pwm, -255, 255);
129
- motor2Pwm = constrain(motor2Pwm, -255, 255);
130
-
131
- // Set motor speeds and directions
132
- setMotorOutput(IN1, ENA, motor1Pwm); // Motor 1
133
- setMotorOutput(IN2, ENB, motor2Pwm); // Motor 2
134
-
135
- delay(20); // Shorter delay for better responsiveness
136
-}
... ...
\ No newline at end of file
app-dat/RC-dat/RC-code-dat/RC-code-dat.md
... ...
@@ -1,16 +0,0 @@
1
-
2
-# RC-code-dat
3
-
4
-## working for
5
-
6
-- [[SDR1064-dat]]
7
-
8
-## code
9
-
10
-- [[PWM-1ch.ino]] - [[PWM-2ch.ino]] - [[PWM-2ch-v2.ino]]
11
-
12
-## ref
13
-
14
-- [[PWM-dat]]
15
-
16
-- [[RC-dat]]
... ...
\ No newline at end of file
app-dat/RC-dat/RC-code-dat/rover-2.ino
... ...
@@ -1,170 +0,0 @@
1
-#include <Adafruit_NeoPixel.h>
2
-
3
-// Define pins for each RC channel
4
-int aileronPin = 14; // Channel 1 (Throttle)
5
-int elevatorPin = 12; // Channel 2 (Steering)
6
-
7
-const int ENA = 5; // PWM for speed for Motor 1
8
-const int ENB = 4; // PWM for speed for Motor 2
9
-
10
-const int IN1 = 0; // Direction for Motor 1
11
-const int IN2 = 2; // Direction pin 1 for Motor 2
12
-
13
-// WS2812 LED Strip Configuration
14
-#define LED_PIN 15
15
-#define LED_COUNT 8
16
-Adafruit_NeoPixel strip(LED_COUNT, LED_PIN, NEO_GRB + NEO_KHZ800);
17
-
18
-long aileronControl; // Mapped value from aileron channel (0-100)
19
-long elevatorControl; // Mapped value from elevator channel (0-100)
20
-
21
-// Reads the PWM signal from the aileron channel and maps it to 0-100
22
-long readAileronControlSignal() {
23
- unsigned long rawPWM = pulseIn(aileronPin, HIGH, 25000);
24
- // If signal is lost (timeout) or clearly out of valid RC pulse range, return neutral (50)
25
- // Valid RC pulses are typically 1000-2000us. Values outside ~900-2100us are treated as invalid.
26
- if (rawPWM == 0 || rawPWM < 900 || rawPWM > 2100) {
27
- return 50; // Mid-point for 0-100 scale (1500us equivalent), results in stop
28
- }
29
- // Otherwise, the signal is likely valid; constrain it to the standard 1000-2000us range and map
30
- long constrainedPWM = constrain(rawPWM, 1000, 2000);
31
- return map(constrainedPWM, 1000, 2000, 0, 100);
32
-}
33
-
34
-// Reads the PWM signal from the elevator channel and maps it to 0-100
35
-long readElevatorControlSignal() {
36
- unsigned long rawPWM = pulseIn(elevatorPin, HIGH, 25000);
37
- // If signal is lost (timeout) or clearly out of valid RC pulse range, return neutral (50)
38
- // Valid RC pulses are typically 1000-2000us. Values outside ~900-2100us are treated as invalid.
39
- if (rawPWM == 0 || rawPWM < 900 || rawPWM > 2100) {
40
- return 50; // Mid-point for 0-100 scale (1500us equivalent), results in stop
41
- }
42
- // Otherwise, the signal is likely valid; constrain it to the standard 1000-2000us range and map
43
- long constrainedPWM = constrain(rawPWM, 1000, 2000);
44
- return map(constrainedPWM, 1000, 2000, 0, 100);
45
-}
46
-
47
-void setup() {
48
- pinMode(aileronPin, INPUT);
49
- pinMode(elevatorPin, INPUT); // Initialize elevator pin
50
-
51
- pinMode(ENA, OUTPUT);
52
- pinMode(ENB, OUTPUT);
53
- pinMode(IN1, OUTPUT);
54
- pinMode(IN2, OUTPUT);
55
-
56
- // Initialize motors to off
57
- digitalWrite(IN1, LOW);
58
- digitalWrite(IN2, LOW);
59
- analogWrite(ENA, 0);
60
- analogWrite(ENB, 0);
61
-
62
- Serial.begin(9600);
63
-
64
- strip.begin(); // INITIALIZE NeoPixel strip object (REQUIRED)
65
- strip.show(); // Turn OFF all pixels ASAP
66
- strip.setBrightness(50); // Set BRIGHTNESS to about 1/5 (max = 255)
67
-}
68
-
69
-// Helper function to control a single motor
70
-// pwmVal: -255 (full backward) to 255 (full forward)
71
-void setMotorOutput(int dirPin, int speedPin, int pwmVal) {
72
- if (pwmVal > 0) { // Forward
73
- digitalWrite(dirPin, HIGH);
74
- analogWrite(speedPin, pwmVal);
75
- } else if (pwmVal < 0) { // Backward
76
- digitalWrite(dirPin, LOW);
77
- analogWrite(speedPin, -pwmVal); // Speed is positive
78
- } else { // Stop
79
- digitalWrite(dirPin, LOW); // Or HIGH, doesn't matter much if speed is 0
80
- analogWrite(speedPin, 0);
81
- }
82
-}
83
-
84
-// Helper function to map RC control input (0-100) to an output range (e.g., -255 to 255)
85
-// with a deadband around the center (e.g., 50).
86
-long mapWithDeadband(long rcValue, int rcMin, int rcMax, int rcCenter, int deadbandRadius, int outMin, int outMax) {
87
- long mappedValue = 0;
88
- int deadbandLower = rcCenter - deadbandRadius;
89
- int deadbandUpper = rcCenter + deadbandRadius;
90
-
91
- if (rcValue < deadbandLower) {
92
- // Map the range [rcMin, deadbandLower - 1] to [outMin, -1]
93
- // Ensure deadbandLower - 1 is not less than rcMin
94
- if (deadbandLower -1 < rcMin) {
95
- mappedValue = outMin;
96
- } else {
97
- mappedValue = map(rcValue, rcMin, deadbandLower - 1, outMin, -1);
98
- }
99
- } else if (rcValue > deadbandUpper) {
100
- // Map the range [deadbandUpper + 1, rcMax] to [1, outMax]
101
- // Ensure deadbandUpper + 1 is not greater than rcMax
102
- if (deadbandUpper + 1 > rcMax) {
103
- mappedValue = outMax;
104
- } else {
105
- mappedValue = map(rcValue, deadbandUpper + 1, rcMax, 1, outMax);
106
- }
107
- } else {
108
- // Inside deadband
109
- mappedValue = 0;
110
- }
111
- return constrain(mappedValue, outMin, outMax);
112
-}
113
-
114
-// Function to create a random blinking effect for WS2812 LEDs
115
-void randomBlinkEffect() {
116
- for (int i = 0; i < LED_COUNT; i++) {
117
- // Turn on a random LED with a random color
118
- if (random(0, 2) == 1) { // 50% chance to turn on this LED
119
- strip.setPixelColor(i, strip.Color(random(0, 256), random(0, 256), random(0, 256)));
120
- } else {
121
- strip.setPixelColor(i, strip.Color(0, 0, 0)); // Turn off
122
- }
123
- }
124
- strip.show(); // Send the updated pixel colors to the hardware.
125
- delay(100); // Wait a short period
126
-}
127
-
128
-void loop() {
129
- // Read mapped control signals from each channel
130
- aileronControl = readAileronControlSignal(); // Throttle (0-100)
131
- elevatorControl = readElevatorControlSignal(); // Steering (0-100)
132
-
133
- // Print the mapped control signal values to the Serial Monitor
134
- Serial.print("Aileron (Throttle): ");
135
- Serial.print(aileronControl);
136
- Serial.print(" Elevator (Steering): ");
137
- Serial.print(elevatorControl);
138
- Serial.println();
139
-
140
- // Define deadband radius (e.g., +/- 5 around center of 50 for a 0-100 input)
141
- // This means input values from 45 to 55 (inclusive if center is 50 and radius is 5) will be treated as 0.
142
- int deadbandRadius = 15;
143
- float steeringFactor = 3; // Adjust this value to change steering sensitivity
144
- float throttleFactor = 3; // Adjust this value to change throttle sensitivity (e.g., 1.2 for 20% stronger throttle)
145
-
146
- // Map control values with deadband
147
- long rawThrottleValue = mapWithDeadband(aileronControl, 0, 100, 50, deadbandRadius, -255, 255);
148
- long rawSteeringValue = mapWithDeadband(elevatorControl, 0, 100, 50, deadbandRadius, -255, 255);
149
-
150
- // Apply sensitivity factors
151
- long throttleValue = rawThrottleValue * throttleFactor;
152
- long adjustedSteeringValue = rawSteeringValue * steeringFactor;
153
-
154
- // Mix throttle and steering for differential drive
155
- long motor1Pwm = throttleValue + adjustedSteeringValue;
156
- long motor2Pwm = throttleValue - adjustedSteeringValue;
157
-
158
- // Constrain PWM values to the valid range [-255, 255]
159
- motor1Pwm = constrain(motor1Pwm, -255, 255);
160
- motor2Pwm = constrain(motor2Pwm, -255, 255);
161
-
162
- // Set motor speeds and directions
163
- setMotorOutput(IN1, ENA, motor1Pwm); // Motor 1
164
- setMotorOutput(IN2, ENB, motor2Pwm); // Motor 2
165
-
166
- // Add the LED effect
167
- randomBlinkEffect();
168
-
169
- delay(20); // Shorter delay for better responsiveness
170
-}
... ...
\ No newline at end of file
app-dat/RC-dat/RC-dat.md
... ...
@@ -1,35 +0,0 @@
1
-
2
-# RC-dat
3
-
4
-
5
-## RC - apps
6
-
7
-- [[rover-dat]] - [[RC-car-dat]] - [[RC-car-hack-dat]] - [[video-rc-car-dat]]
8
-
9
-- [[quadcopter-dat]] - [[FPV-dat]]
10
-
11
-- [[airplane-dat]]
12
-
13
-- [[UAV-dat]]
14
-
15
-
16
-
17
-
18
-
19
-## RC - signal
20
-
21
-- [[RC-signal-dat]]
22
-
23
-## RC - systems
24
-
25
-- [[ardupilot-dat]]
26
-
27
-## RC - Hardware
28
-
29
-- [[flight-controller-dat]] - [[RC-link-dat]]
30
-
31
-- [[BMS-dat]] - [[battery-dat]]
32
-
33
-## RC - manufacturers
34
-
35
-- [[Wfly-dat]] - [[betaFPV-dat]] - [[speedybee-dat]]
... ...
\ No newline at end of file
app-dat/RC-dat/RC-link-dat/2025-05-23-16-14-35.png
... ...
Binary files a/app-dat/RC-dat/RC-link-dat/2025-05-23-16-14-35.png and /dev/null differ
app-dat/RC-dat/RC-link-dat/RC-link-dat.md
... ...
@@ -1,48 +0,0 @@
1
-
2
-# RC-link-dat
3
-
4
-- [[Wfly-dat]] - [[WFT06x-dat]] - [[WFR06S-dat]]
5
-
6
-## RC Tx
7
-
8
-- [[PX4-dat]]
9
-
10
-![](2025-05-23-16-14-35.png)
11
-
12
-
13
-
14
-## RC Receiver
15
-
16
-When you push the **RC console (joystick or stick) up and down**, you're typically controlling the throttle or elevator channel, depending on the mode of your transmitter. The PWM (Pulse Width Modulation) signal output sent to the receiver or flight controller varies accordingly:
17
-
18
-PWM signal range: ~1000 ยตs (microseconds) to ~2000 ยตs
19
-
20
- Center/stick neutral: ~1500 ยตs
21
-
22
- Stick fully down: ~1000 ยตs
23
-
24
- Stick fully up: ~2000 ยตs
25
-
26
-Example:
27
-
28
-If you're using Mode 2 (common mode):
29
-
30
-Left stick up/down = Throttle
31
-
32
- Stick down = 1000 ยตs (zero throttle)
33
-
34
- Stick up = 2000 ยตs (full throttle)
35
-
36
-If it's controlling elevator (pitch):
37
-
38
- Stick down (nose down) = 1000 ยตs
39
-
40
- Stick up (nose up) = 2000 ยตs
41
-
42
-
43
-
44
-## ref
45
-
46
-- https://docs.px4.io/v1.11/en/getting_started/rc_transmitter_receiver.html
47
-
48
-- [[RC-dat]]
... ...
\ No newline at end of file
app-dat/RC-dat/RC-signal-dat/CRSF-dat/CRSF-dat.md
... ...
@@ -1,74 +0,0 @@
1
-
2
-# CRSF-dat
3
-
4
-CRSF (Crossfire Serial Protocol) is a low-latency, high-speed serial protocol developed by **Team BlackSheep (TBS)** for communication between radio receivers (like TBS Crossfire Nano RX) and flight controllers.
5
-
6
-Itโ€™s used in RC applications (especially FPV drones) to transmit RC channel data, telemetry, and link status over a compact serial format.
7
-
8
-CRSF packets are binary data. Here's the basic structure of a CRSF packet:
9
-
10
-## CRSF Packet Structure (General)
11
-
12
-| Byte Index | Name | Description |
13
-|------------|----------------|---------------------------------------------|
14
-| 0 | Device Address | Who is sending (e.g., RX, TX) |
15
-| 1 | Frame Length | Length of payload + 1 (type byte + data) |
16
-| 2 | Frame Type | Type of data (e.g., RC channels, telemetry) |
17
-| 3 - N | Payload | Actual data, varies by Frame Type |
18
-| Last Byte | CRC | Checksum for packet validation |
19
-
20
-
21
-This is how a typical RC channel data packet might look (in hex):
22
-
23
-C8 18 16 A1 84 3F C1 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 9E
24
-
25
-## RC Channel Encoding (Packed 11-bit)
26
-
27
-Each RC channel is packed as 11-bit little-endian integers, with up to 16 channels per frame. Example values:
28
-
29
-- 1000 โ†’ channel center
30
-- 172 โ†’ min
31
-- 1811 โ†’ max
32
-
33
-## read data via serial
34
-
35
-Yes, you can use a serial port to read CRSF data, because CRSF is a serial protocol โ€” specifically, a half-duplex, asynchronous UART protocol using 8N1 (8 data bits, no parity, 1 stop bit).
36
-
37
-### ๐Ÿ“ก CRSF over Serial โ€“ Quick Guide
38
-
39
-- **Baud rate**: 420000 or 115200 (depends on TX/RX version or setting)
40
-- **Protocol**: UART (8N1)
41
-- **Signal direction**: Half-duplex (same wire for TX and RX)
42
-- **Voltage**: 3.3V (NOT 5V safe on most Crossfire receivers)
43
-- **Typical usage**: Read CRSF data from TBS Nano RX or TX
44
-
45
-#### ๐Ÿงฐ What You Need:
46
-- A microcontroller or board with UART support (e.g., Arduino, ESP32, STM32, Raspberry Pi)
47
-- Logic-level conversion (if needed for 3.3V safety)
48
-- CRSF-compatible device (e.g., TBS Crossfire Nano RX)
49
-
50
-Code Concept (Pseudocode)
51
-
52
-
53
- Serial.begin(420000); // Or 115200 for some TX modules
54
-
55
- void loop() {
56
- if (Serial.available()) {
57
- uint8_t byte = Serial.read();
58
- // Process CRSF packet bytes here
59
- }
60
- }
61
-
62
-
63
-
64
-## via ardupilot
65
-
66
-If you wish to use telemetry then a receiver can be connected to a UART utilizing the CRSF protocol.
67
-
68
-CRSF is a full-duplex protocol that supports integrated telemetry and a number of other features. Connect the RX pin of the UART to the CRSF TX pin of the CRSF device and vice versa. Currently a full-duplex UART connection is required. For best performance a UART with DMA capability on its RX port is desirable, but not required. A message will be displayed once on the GCS console, if connected to a UART without this capability on an F4/F7 based autopilot.
69
-
70
-https://ardupilot.org/rover/docs/common-tbs-rc.html#common-tbs-rc
71
-
72
-## ref
73
-
74
-- [[FPV-dat]]
... ...
\ No newline at end of file
app-dat/RC-dat/RC-signal-dat/ELRS-dat/2025-04-25-17-30-48.png
... ...
Binary files a/app-dat/RC-dat/RC-signal-dat/ELRS-dat/2025-04-25-17-30-48.png and /dev/null differ
app-dat/RC-dat/RC-signal-dat/ELRS-dat/2025-05-04-15-29-54.png
... ...
Binary files a/app-dat/RC-dat/RC-signal-dat/ELRS-dat/2025-05-04-15-29-54.png and /dev/null differ
app-dat/RC-dat/RC-signal-dat/ELRS-dat/2025-05-04-15-31-56.png
... ...
Binary files a/app-dat/RC-dat/RC-signal-dat/ELRS-dat/2025-05-04-15-31-56.png and /dev/null differ
app-dat/RC-dat/RC-signal-dat/ELRS-dat/ELRS-915M-dat.md
... ...
@@ -1,4 +0,0 @@
1
-
2
-# ELRS-915M-dat.md
3
-
4
-![](2025-04-25-17-30-48.png)
... ...
\ No newline at end of file
app-dat/RC-dat/RC-signal-dat/ELRS-dat/ELRS-HF-RF-Module-dat/2025-05-16-13-30-09.png
... ...
Binary files a/app-dat/RC-dat/RC-signal-dat/ELRS-dat/ELRS-HF-RF-Module-dat/2025-05-16-13-30-09.png and /dev/null differ
app-dat/RC-dat/RC-signal-dat/ELRS-dat/ELRS-HF-RF-Module-dat/ELRS-HF-RF-Module-dat.md
... ...
@@ -1,10 +0,0 @@
1
-
2
-# ELRS-HF-RF-Module-dat
3
-
4
-1.่ฟžๆŽฅUSB,้ซ˜้ข‘ๅคดๆ— ้œ€ๅฆๅค–ไพ›็”ต๏ผŒ็ฌฌไธ€ๆฌก่ฟžๆŽฅ็”ต่„‘ๅฆ‚ๆžœไฝ ็š„็ณป็ปŸๆ˜ฏwindows 10ๆˆ–ไปฅไธŠๅนถๅค„ไบŽ่”็ฝ‘็Šถๆ€ไธ‹๏ผŒ็”ต่„‘ไผš่‡ชๅŠจๅฎ‰่ฃ…ๅไธบCH9102็š„USB-TTL้ฉฑๅŠจ๏ผŒๅˆทๅ†™ๅ›บไปถๆ— ้œ€ไปปไฝ•ๆŒ‰้”ฎ่ฟ›ๅ…ฅboot,ๅˆทๅ†™ๅ†…็ฝฎ็š„๏ผŒๅนถไธ”ๅˆทๅ†™ๅ†…็ฝฎBackpackไนŸๆ— ้œ€ๆŒ‰ไปปไฝ•ๆŒ‰้”ฎๅ’Œๆ‹จ็ ๅผ€ๅ…ณ,ๅ› ไธบๆˆ‘ไปฌๅœจๅ†…้ƒจ่ฎพ่ฎกไบ†่‡ชๅŠจๆฟ€ๆดปๅˆทๆœบๆจกๅผ็”ต่ทฏไธŽๅˆท่ƒŒๅŒ…ๅ›บไปถ็›ด้€šๆจกๅผ
5
-
6
-![](2025-05-16-13-30-09.png)
7
-
8
-## ref
9
-
10
-- [[ESP8266-dat]]
... ...
\ No newline at end of file
app-dat/RC-dat/RC-signal-dat/ELRS-dat/ELRS-PWM-dat/2025-04-25-17-34-11.png
... ...
Binary files a/app-dat/RC-dat/RC-signal-dat/ELRS-dat/ELRS-PWM-dat/2025-04-25-17-34-11.png and /dev/null differ
app-dat/RC-dat/RC-signal-dat/ELRS-dat/ELRS-PWM-dat/2025-05-12-14-23-11.png
... ...
Binary files a/app-dat/RC-dat/RC-signal-dat/ELRS-dat/ELRS-PWM-dat/2025-05-12-14-23-11.png and /dev/null differ
app-dat/RC-dat/RC-signal-dat/ELRS-dat/ELRS-PWM-dat/2025-05-16-13-31-40.png
... ...
Binary files a/app-dat/RC-dat/RC-signal-dat/ELRS-dat/ELRS-PWM-dat/2025-05-16-13-31-40.png and /dev/null differ
app-dat/RC-dat/RC-signal-dat/ELRS-dat/ELRS-PWM-dat/2025-05-16-13-32-31.png
... ...
Binary files a/app-dat/RC-dat/RC-signal-dat/ELRS-dat/ELRS-PWM-dat/2025-05-16-13-32-31.png and /dev/null differ
app-dat/RC-dat/RC-signal-dat/ELRS-dat/ELRS-PWM-dat/2025-05-16-13-33-12.png
... ...
Binary files a/app-dat/RC-dat/RC-signal-dat/ELRS-dat/ELRS-PWM-dat/2025-05-16-13-33-12.png and /dev/null differ
app-dat/RC-dat/RC-signal-dat/ELRS-dat/ELRS-PWM-dat/7CH.json
... ...
@@ -1,32 +0,0 @@
1
-{
2
- "customised": "true",
3
- "serial_rx": -1,
4
- "serial_tx": -1,
5
- "radio_dio1": 4,
6
- "radio_miso": 12,
7
- "radio_mosi": 13,
8
- "radio_nss": 15,
9
- "radio_rst": 2,
10
- "radio_sck": 14,
11
- "power_min": 0,
12
- "power_high": 0,
13
- "power_max": 0,
14
- "power_default": 0,
15
- "power_control": 0,
16
- "power_values": [
17
- 13
18
- ],
19
- "led": 16,
20
- "pwm_outputs": [
21
- 0,
22
- 1,
23
- 3,
24
- 9,
25
- 10,
26
- 5,
27
- 16
28
- ],
29
- "vbat": 17,
30
- "vbat_offset": 12,
31
- "vbat_scale": 310
32
-}
... ...
\ No newline at end of file
app-dat/RC-dat/RC-signal-dat/ELRS-dat/ELRS-PWM-dat/CRSF.json
... ...
@@ -1 +0,0 @@
1
-{"customised":"true","serial_rx":3,"serial_tx":1,"radio_dio1":4,"radio_miso":12,"radio_mosi":13,"radio_nss":15,"radio_rst":2,"radio_sck":14,"power_min":0,"power_high":0,"power_max":0,"power_default":0,"power_control":0,"power_values":[13],"led":16,"pwm_outputs":[-1],"vbat":17,"vbat_offset":12,"vbat_scale":310}
... ...
\ No newline at end of file
app-dat/RC-dat/RC-signal-dat/ELRS-dat/ELRS-PWM-dat/ELRS-PWM-dat.md
... ...
@@ -1,73 +0,0 @@
1
-
2
-# ELRS-CHS-PWM-dat.md
3
-
4
-![](2025-04-25-17-34-11.png)
5
-
6
-![](2025-05-12-14-23-11.png)
7
-
8
-## Electrodragon 7CH PWM ELRS Receiver
9
-
10
-
11
-Electrodragon ELRS 2.4G Receiver, Seven-Channel PWM Receiver
12
-
13
-This receiver features independent PWM channel outputs, suitable for fixed-wing aircraft, cars, boats, and other models. It also supports CRSF output. The two output signals (PWM and CRSF) can be switched without re-flashing the firmware.
14
-
15
-Follow these steps to switch between PWM (6CH/7CH) and CRSF modes:
16
-
17
-**Accessing the Receiver's Wi-Fi Network:**
18
-
19
-1. **If connected to the high-frequency head (transmitter module):** Use the transmitter's LUA script menu to activate the receiver's Wi-Fi.
20
-2. **If not connected to the high-frequency head:** Power on the receiver and wait for one minute. The receiver will automatically enter Wi-Fi mode.
21
-
22
-**Connecting to the Receiver's Wi-Fi:**
23
-
24
-* Search for Wi-Fi networks on your computer or phone.
25
-* **Wi-Fi Hotspot Name (SSID):** `EXPRESSLRSRX`
26
-* **Connection Password (all lowercase):** `expresslrs`
27
-
28
-**Accessing the Configuration Page:**
29
-
30
-* Open a web browser and go to: `http://10.0.0.1/hardware.html`
31
-
32
-**Configuring the Receiver:**
33
-
34
-* This will take you to the ELRS hardware configuration page where you can import hardware configuration files.
35
-* **Caution:** Do not modify parameters yourself unless you fully understand their meaning.
36
-* Import the provided configuration file for either `PWM7CH` or `CRSF`.
37
-* Click the button at the bottom of the page and wait for the receiver to restart automatically.
38
-
39
-
40
-
41
-## custom PWM setup
42
-
43
-![](2025-05-16-13-31-40.png)
44
-
45
-![](2025-05-16-13-32-31.png)
46
-
47
-
48
-## setup for [[ELRS-HF-RF-module-dat]]
49
-
50
-![](2025-05-16-13-33-12.png)
51
-
52
-## configuration file
53
-
54
-- [[7CH.json]] - [[CRSF.json]]
55
-
56
-the pwm channels
57
-
58
- "pwm_outputs": [
59
- 0,
60
- 1,
61
- 3,
62
- 9,
63
- 10,
64
- 5,
65
- 16
66
- ],
67
-
68
-
69
-
70
-
71
-## ref
72
-
73
-- [[ELRS-PWM]] - [[ELRS]]
app-dat/RC-dat/RC-signal-dat/ELRS-dat/ELRS-RX-dat/2025-04-25-16-52-56.png
... ...
Binary files a/app-dat/RC-dat/RC-signal-dat/ELRS-dat/ELRS-RX-dat/2025-04-25-16-52-56.png and /dev/null differ
app-dat/RC-dat/RC-signal-dat/ELRS-dat/ELRS-RX-dat/2025-04-25-16-55-05.png
... ...
Binary files a/app-dat/RC-dat/RC-signal-dat/ELRS-dat/ELRS-RX-dat/2025-04-25-16-55-05.png and /dev/null differ
app-dat/RC-dat/RC-signal-dat/ELRS-dat/ELRS-RX-dat/2025-05-08-18-22-08.png
... ...
Binary files a/app-dat/RC-dat/RC-signal-dat/ELRS-dat/ELRS-RX-dat/2025-05-08-18-22-08.png and /dev/null differ
app-dat/RC-dat/RC-signal-dat/ELRS-dat/ELRS-RX-dat/2025-05-16-12-57-47.png
... ...
Binary files a/app-dat/RC-dat/RC-signal-dat/ELRS-dat/ELRS-RX-dat/2025-05-16-12-57-47.png and /dev/null differ
app-dat/RC-dat/RC-signal-dat/ELRS-dat/ELRS-RX-dat/ELRS-RX-dat.md
... ...
@@ -1,90 +0,0 @@
1
-
2
-# ELRS-RX-dat
3
-
4
-
5
-## T-anntena version
6
-
7
-![](2025-04-25-16-52-56.png)
8
-
9
-
10
-- [[antenna-dat]]
11
-
12
-## SMD antenna version
13
-
14
-## info
15
-
16
-Nano2400-RX receiver with power amplifier (PA+LNA).
17
-
18
-Therefore, it has 100mW telemetry output and better sensitivity at longer distances.
19
-
20
-It uses an IPEX1 antenna connector.
21
-
22
-Paired with an external dipole T-antenna (customized by a professional factory, each antenna is tested with professional instruments to ensure quality, lightness, and durability).
23
-
24
-The CYCLONE series receivers are based on the open-source architecture and program of ExpressLRS.
25
-
26
-We have released 3 types of RX receiver modules. All use the [[ESP8285-dat]] [[MCU-dat]]. You can upgrade the firmware via [[WIFI-dat]], which is very user-friendly.
27
-
28
-## hotspot
29
-
30
-Typically, after powering the receiver and with the remote controller turned off, the ExpressLRS hotspot can be found after a default of 60 seconds. Connect to this hotspot using a computer or mobile phone.
31
-
32
-The password is "expresslrs", and then you can access 10.0.0.1 to upload the receiver firmware.
33
-
34
-![](2025-05-08-18-22-08.png)
35
-
36
-## serial
37
-
38
-Runtime Options
39
-
40
-This form overrides the options provided when the firmware was flashed. These changes will persist across reboots, but will be reset when the firmware is reflashed.
41
-
42
-WiFi auto on" interval in seconds (leave blank to disable) == 60
43
-UART baud == 420000 = 420K
44
-
45
-
46
-## Product Features
47
-
48
-- High refresh rate 100mW telemetry output;
49
-- Supports convenient and fast firmware flashing via WIFI connection;
50
-- Firmware Version: 3.3.0 [BETAFPVLite2400RX]
51
-- Equipped with a power amplifier (PA+LNA), providing 100mW telemetry output and better response speed;
52
-- Theoretically compatible with most ELRS 2.4G transmitter modules on the market (requires firmware version 2.0 or above).
53
-
54
-![](2025-04-25-16-55-05.png)
55
-
56
-
57
-
58
-## supported modules
59
-
60
-![](2025-05-16-12-57-47.png)
61
-## FAQ
62
-
63
-1. **Q: Can this receiver be bound to a XXX brand's high-frequency head (transmitter module)?**
64
- A: The ELRS project is open source. Therefore, as long as the high-frequency head uses the ELRS protocol, regardless of the brand, it can be bound. However, three conditions must be met:
65
- * The frequency must be the same, either both 2.4G or both 915MHz.
66
- * The firmware version must be consistent. For example, if the high-frequency head is flashed with firmware version 2.5.0, the receiver must also be flashed with firmware version 2.5.0.
67
- * Either both have no binding phrase, or both have the same binding phrase set.
68
-
69
-2. **Q: How do I enter binding mode?**
70
- A: After soldering the receiver, quickly power cycle the aircraft three times. That is: power on then immediately power off, power on then immediately power off, power on and leave it on. The interval between power cycles should be within 1.5 seconds. If done correctly, the receiver's LED will flash rapidly twice in a cycle, indicating it is in binding mode. At this time, press the bind button in the remote controller's script. If binding is successful, the receiver's LED will turn solid.
71
-
72
-3. **Q: I'm using my receiver for the first time, why can't I enter binding mode? The light stays solid. What's wrong?**
73
- A: We have encountered similar issues in after-sales support. We found that some flight controllers have abnormal TX/RX ports, causing the receiver to enter bootloader/flash mode upon power-up. In this case, simply changing to a different TX/RX port on the flight controller can solve the problem.
74
-
75
-4. **Q: Why is my receiver's light always flashing rapidly?**
76
- A: If you power on the receiver and it does not enter binding mode, or if it's already bound but the remote controller is not turned on, the receiver will enter WiFi flashing mode after 60 seconds without a signal, and the indicator light will flash rapidly.
77
-
78
-5. **Q: How do I enter WiFi flashing mode to flash firmware to the receiver?**
79
- A: Same as the answer above. Power on the receiver and leave it. It will automatically enter WiFi flashing mode in about 60 seconds, and the light will flash rapidly.
80
-
81
-
82
-## Versions
83
-
84
-- Firmware Rev. 3.5.2 (7ac5f4)
85
-
86
-
87
-
88
-## ref
89
-
90
-- [[ELRS-dat]]
... ...
\ No newline at end of file
app-dat/RC-dat/RC-signal-dat/ELRS-dat/ELRS-TX-dat/ELRS-TX-dat.md
... ...
@@ -1,14 +0,0 @@
1
-
2
-# ELRS-TX-dat
3
-
4
-- [[radiomaster-dat]]
5
-
6
-radiomaster guide
7
-
8
-https://www.expresslrs.org/quick-start/transmitters/rm-ranger/
9
-
10
-
11
-
12
-## ref
13
-
14
-- [[ELRS-dat]]
... ...
\ No newline at end of file
app-dat/RC-dat/RC-signal-dat/ELRS-dat/ELRS-dat.md
... ...
@@ -1,170 +0,0 @@
1
-
2
-# ELRS-dat
3
-
4
-Info - [[ELRS-frequency-dat]] - [[ELRS-faq-dat]]
5
-
6
-
7
-## ELRS-link
8
-
9
-ELRS-remote-console-tx
10
-
11
-- BETAFPV literadio 3
12
-- BETAFPV literadio 2
13
-
14
-- [[edge-tx-dat]] - [[radiomaster-dat]] - [[lightradio-dat]]
15
-
16
-- [[ELRS-RX-dat]] - [[SX1276-dat]] - [[ESP8285-dat]] - [[ESP32-dat]] - [[SX1281-dat]] - [[SX1208-dat]]
17
-
18
-protocol output - - [[CRSF-dat]]
19
-
20
-- [[CC2500-dat]]
21
-
22
-- [[ELRS-TX-dat]] - [[ELRS-915M-dat]] - [[ELRS-PWM-dat]] - [[ELRS-2.4Ghz-dat]]
23
-
24
-- [[ELRS]]
25
-
26
-## resources
27
-
28
-https://github.com/ExpressLRS/ExpressLRS
29
-
30
-https://www.expresslrs.org/quick-start/getting-started/
31
-
32
-[ExpressLRS-Configurator-releases](https://github.com/ExpressLRS/ExpressLRS-Configurator/releases)
33
-
34
-
35
-
36
-## **ExpressLRS (ELRS) 2.4GHz Standard Explained**
37
-
38
-**ExpressLRS (ELRS) 2.4GHz** is an open-source **long-range, low-latency radio control link** developed for FPV drones and RC applications. It offers **high performance, ultra-fast response times, and robust signal reliability** compared to traditional RC protocols like FrSky, Crossfire, and Ghost.
39
-
40
----
41
-
42
-### **๐Ÿ”น Key Features of ELRS 2.4GHz**
43
-- **Ultra-Low Latency** (~5ms in high-speed mode).
44
-- **Long-Range Performance** (Up to **30km+** with proper setup).
45
-- **High Packet Rate (Up to 1000Hz)** for **smooth & responsive controls**.
46
-- **Open-Source & Customizable** (Community-driven development).
47
-- **Affordable Hardware** (Compared to Crossfire or Ghost).
48
-- **Wide Compatibility** (Supported on many **radio transmitters & receivers**).
49
-
50
----
51
-
52
-### **๐Ÿ”น ELRS 2.4GHz vs. Other RC Links**
53
-| Feature | ELRS 2.4GHz | TBS Crossfire | Ghost 2.4GHz | FrSky R9M |
54
-| --------------- | ------------ | ------------- | ------------ | ----------- |
55
-| **Frequency** | 2.4GHz | 900MHz | 2.4GHz | 900MHz |
56
-| **Max Range** | ~30km+ | ~50km+ | ~15km | ~10-20km |
57
-| **Latency** | 5-7ms | 15-50ms | ~4ms | ~20ms |
58
-| **Packet Rate** | Up to 1000Hz | 50-150Hz | 500Hz | ~100Hz |
59
-| **Open Source** | โœ… Yes | โŒ No | โŒ No | โŒ No |
60
-| **Cost** | ๐Ÿ’ฐ Affordable | ๐Ÿ’ฐ๐Ÿ’ฐ Expensive | ๐Ÿ’ฐ๐Ÿ’ฐ Expensive | ๐Ÿ’ฐ Mid-Range |
61
-
62
----
63
-
64
-### **๐Ÿ”น ELRS 2.4GHz Modes & Performance**
65
-| Mode | Packet Rate | Latency | Range |
66
-| --------- | ----------- | ------- | --------------------- |
67
-| **500Hz** | 500Hz | ~5ms | Short (~3km) |
68
-| **250Hz** | 250Hz | ~7ms | Mid (~10km) |
69
-| **150Hz** | 150Hz | ~10ms | Long (~20km) |
70
-| **50Hz** | 50Hz | ~20ms | Extreme Long (~30km+) |
71
-
72
-๐Ÿ”น **Higher packet rate = Lower latency, but reduced range**
73
-๐Ÿ”น **Lower packet rate = Higher range, but increased latency**
74
-
75
----
76
-
77
-### **๐Ÿ”น Recommended ExpressLRS 2.4GHz Hardware**
78
-#### **๐Ÿ› ๏ธ Transmitters (TX)**
79
-- **RadioMaster Zorro ELRS 2.4GHz**
80
-- **Jumper T20S (Built-in ELRS)**
81
-- **Happymodel ES24TX Pro (External ELRS Module)**
82
-- **BetaFPV ELRS Micro TX Module**
83
-
84
-#### **๐Ÿ“ก Receivers (RX)**
85
-- **Happymodel EP2 (Tiny, best for micro quads)**
86
-- **BetaFPV ELRS 2.4GHz Nano RX**
87
-- **Radiomaster RP1 / RP2 RX (Great range & reliability)**
88
-
89
----
90
-
91
-### **๐Ÿ”น Why Choose ELRS 2.4GHz?**
92
-โœ… **Best for FPV Racing & Freestyle** โ†’ **Low latency & fast response**
93
-โœ… **Perfect for Long-Range FPV** โ†’ **Good range at lower packet rates**
94
-โœ… **Affordable & Open-Source** โ†’ **Cheaper than Crossfire & Ghost**
95
-
96
-๐Ÿš€ **If you need ultra-low latency for FPV racing or long-range performance at an affordable price, ExpressLRS 2.4GHz is the best choice!** ๐Ÿ”ฅ
97
-
98
-
99
-## 2.4hz compare to LORA 915mhz
100
-
101
-| Feature | DJI NC3 (OcuSync 2.0) | ELRS 2.4GHz (100mW) | ELRS 915MHz (100mW, SX1276) |
102
-|----------------------------|---------------------------|------------------------------|-------------------------------|
103
-| Protocol Type | Proprietary digital (DJI) | Open-source LoRa/FLRC | Open-source LoRa |
104
-| Frequency Band | 2.4GHz + 5.8GHz | 2.4GHz | 915MHz |
105
-| Max Packet Rate | N/A (digital control/video)| Up to 500Hz | Up to 50Hz |
106
-| Latency (best-case) | ~120 ms (control + video) | ~2.5 ms (500Hz) | ~20 ms (50Hz) |
107
-| Typical Latency | ~120โ€“150 ms | ~6โ€“13 ms | ~22โ€“30 ms |
108
-| Max Range (LOS, FCC) | ~10 km | ~2 km | ~10 km |
109
-| Penetration (Obstacles) | Moderate | Moderate | Strong |
110
-| Interference Resistance | High (hopping + digital) | Moderate | Strong |
111
-| Video Support | Yes (integrated) | No | No |
112
-| Use Case | DJI drones (Mini, Air) | FPV racing, freestyle | Long-range FPV, endurance |
113
-| Antenna Size | Small | Small | Larger |
114
-| Custom Flight Controllers | Not supported | Fully supported | Fully supported |
115
-
116
-
117
-โŒ No โ€” ELRS does not support 5.8GHz (as of now).
118
-
119
-- [[LORA-dat]] - [[RF-2.4ghz-dat]]
120
-
121
-- [[5.8Ghz-dat]]
122
-
123
-
124
-## WebUI Configurator
125
-
126
-[ExpressLRS Configurator](https://github.com/ExpressLRS/ExpressLRS-Configurator/releases/)
127
-
128
-[github](https://github.com/ExpressLRS/ExpressLRS)
129
-
130
-### Via "ExpressLRS RX" Access Point
131
-
132
-![](2025-05-04-15-29-54.png)
133
-
134
-Load the Web UI on your browser using these addresses:
135
-
136
-http://10.0.0.1/ - If you have connected to the ExpressLRS RX Access Point
137
-
138
-### Via button press
139
-
140
-![](2025-05-04-15-31-56.png)
141
-
142
-
143
-## Code
144
-
145
-| Method | Arduino-Friendly? | Notes |
146
-|---------------|-------------------|--------------------------------------------|
147
-| PWM Output | โœ… Yes | Easiest to use. Limited channels. |
148
-| SBUS/PPM | โœ… Yes (with lib) | Good middle ground. |
149
-| CRSF over UART| โš ๏ธ Difficult | Only feasible on fast boards (ESP32/STM32).|
150
-
151
-
152
-### โœ… Use PWM output from ELRS receiver for arduino
153
-
154
-Some ELRS receivers support PWM output, which can be read with Arduino pulseIn() or interrupts.
155
-
156
-This is much easier but limits you to a few channels (e.g., 4โ€“8).
157
-
158
-### โœ… Use CRSF over UART (advanced)
159
-If you use a faster board like Teensy, ESP32, or STM32:
160
-
161
-These can handle high baud rates and may be able to parse CRSF messages.
162
-
163
-Youโ€™d need to write or port a CRSF parser for Arduino/Teensy/ESP32.
164
-
165
-
166
-## ref
167
-
168
-- [[FPV-dat]]
169
-
170
-- [[ELRS]]
... ...
\ No newline at end of file
app-dat/RC-dat/RC-signal-dat/ELRS-dat/ELRS-faq-dat.md
... ...
@@ -1,26 +0,0 @@
1
-
2
-# ELRS-faq-dat
3
-
4
-## Frequently Asked Questions (FAQ)
5
-
6
-**Q1: Can this receiver bind with a transmitter module (TX module) from brand XXX?**
7
-**A:** The ELRS project is open-source. Therefore, as long as the TX module uses the ELRS protocol, regardless of the brand, they can bind with each other, provided three conditions are met:
8
- 1. **Same Frequency:** Both must operate on the same frequency band (e.g., both 2.4GHz or both 915MHz).
9
- 2. **Matching Firmware Version:** The firmware versions must be identical. For example, if the TX module is flashed with firmware version 2.5.0, the receiver must also be flashed with version 2.5.0.
10
- 3. **Binding Phrase:** Either both devices have no binding phrase set, or they both have the exact same binding phrase configured.
11
-
12
-**Q2: How do I enter binding mode?**
13
-**A:** After soldering the receiver, quickly power cycle the aircraft three times: power on then immediately power off, power on then immediately power off, power on and leave it on. Each power cycle interval should be less than 1.5 seconds. If performed correctly, the receiver's LED will flash quickly twice in a repeating pattern, indicating it is in binding mode. Then, use the bind function/button on your remote controller (often found in the ELRS Lua script). Once binding is successful, the receiver's LED will turn solid.
14
-
15
-**Q3: The first time I used my receiver, it wouldn't enter binding mode, and the LED stayed solid. Why?**
16
-**A:** We've encountered this issue in support cases. It's often caused by an abnormality on the flight controller's TX/RX UART port, which forces the receiver into bootloader/firmware flashing mode upon power-up. Switching the receiver connection to a different, functional TX/RX UART port on the flight controller usually resolves this.
17
-
18
-**Q4: Why is my receiver's LED flashing quickly and continuously?**
19
-**A:** If the receiver is powered on but doesn't enter binding mode (or if it's already bound but the remote controller is off), it will automatically enter Wi-Fi firmware update mode after approximately 60 seconds of not receiving a signal. The fast flashing indicates Wi-Fi mode is active.
20
-
21
-**Q5: How do I enter Wi-Fi mode to update the receiver's firmware?**
22
-**A:** As mentioned above, simply power on the receiver and wait. If it doesn't connect to a transmitter within about 60 seconds, it will automatically enter Wi-Fi update mode, indicated by the rapidly flashing LED.
23
-
24
-
25
-## ref
26
-
app-dat/RC-dat/RC-signal-dat/ELRS-dat/ELRS-frequency-dat.md
... ...
@@ -1,20 +0,0 @@
1
-
2
-# ELRS-frequency-dat.md
3
-
4
-| Feature | ELRS 915MHz (LoRa) | ELRS 2.4GHz (LoRa/FLRC) |
5
-|---------------------|-----------------------------|------------------------------|
6
-| Frequency Band | 915 MHz | 2.4 GHz |
7
-| Range (LOS, 100mW) | โœ… 5โ€“10+ km | โš ๏ธ 1โ€“2 km |
8
-| Penetration | โœ… Strong (trees, buildings) | โš ๏ธ Moderate |
9
-| Latency | โŒ ~20โ€“30 ms | โœ… ~2.5โ€“13 ms |
10
-| Max Packet Rate | โŒ ~50Hz | โœ… Up to 500Hz |
11
-| Antenna Size | โŒ Large | โœ… Small |
12
-| Interference Avoidance | โœ… Less crowded band | โš ๏ธ More Wi-Fi/Bluetooth noise |
13
-| Use Case | Long-range, endurance | Freestyle, racing |
14
-| Power Efficiency | โœ… High (lower data rate) | โœ… High (LoRa + FLRC modes) |
15
-| Hardware Support | Older SX1276 modules | Newer SX1280 + ESP modules |
16
-
17
-
18
-## ref
19
-
20
-- [[ELRS-dat]]
... ...
\ No newline at end of file
app-dat/RC-dat/RC-signal-dat/FrSky-dat/FrSky-dat.md
... ...
@@ -1,4 +0,0 @@
1
-
2
-# FrSky-dat
3
-
4
-- [[CC2500-dat]]
... ...
\ No newline at end of file
app-dat/RC-dat/RC-signal-dat/PPM-dat/PPM-dat.md
... ...
@@ -1,29 +0,0 @@
1
-
2
-# PPM-dat
3
-
4
-- [[Wfly-dat]] - [[RC-code-dat]]
5
-
6
-- [[PWM-dat]]
7
-
8
-PPM (Pulse Position Modulation) is a type of analog signal used in radio control (RC) systems to transmit multiple channels of control information (like throttle, steering, elevator, etc.) over a single wire.
9
-
10
-In simple terms:
11
-
12
-- It sends a series of pulses.
13
-- The position (or timing) of each pulse within a repeating frame represents the value for a specific channel.
14
-- A longer "sync" pulse marks the end of one frame and the beginning of the next.
15
-
16
-So, instead of needing a separate wire for each control channel, PPM combines them into one sequential signal.
17
-
18
-## demo video
19
-
20
-[RC #PPM PWM send and receive at Arduino, note the four channels color](https://youtube.com/shorts/BDdSFPlh9KE?si=n1oF2KUIMqEeH1QW)
21
-
22
-Internal control by [[SDR1064-dat]]
23
-
24
-[Wfly #PPM console control toy rover](https://t.me/electrodragon3/369)
25
-
26
-
27
-## ref
28
-
29
-- [[RC-protocols-dat]]
... ...
\ No newline at end of file
app-dat/RC-dat/RC-signal-dat/RC-signal-dat.md
... ...
@@ -1,109 +0,0 @@
1
-
2
-# RC-signal-dat.md
3
-
4
-## RC-signals
5
-
6
-- [[WIFI-dat]]
7
-
8
-
9
-### Proprietary modulation schemes๏ผˆไธ“ๆœ‰่ฐƒๅˆถๆ–นๆกˆ๏ผ‰
10
-
11
-Toy RC systems may use other modulation methods like [[DSSS-dat]], [[FHSS-dat]], or non-standard GFSK configurations.
12
-
13
-- [[GFSK-dat]] = [[NRF24L01-dat]]
14
-
15
-- [[SBUS-dat]] - [[PPM-dat]] - [[PWM-dat]]
16
-
17
-Frequency Hopping:
18
-
19
-Many toy-grade RC transmitters hop between frequencies.
20
-
21
-#### DSSS (Direct Sequence Spread Spectrum)
22
-
23
-DSSS (Direct Sequence Spread Spectrum) is a method of transmitting radio signals by spreading the signal over a wider frequency band than the original data rate requires.
24
-
25
-**How DSSS Works:**
26
-
27
-The original data signal is multiplied by a "chipping code", a sequence of faster bits called "chips."
28
-
29
-This process spreads the energy of the signal over a wider bandwidth.
30
-
31
-The receiver, knowing the same chipping code, can reconstruct the original data.
32
-
33
-**Key Features:**
34
-
35
-Spreads signal across wide frequency band (increases resistance to interference and jamming).
36
-
37
-More secure and harder to intercept.
38
-
39
-Improves signal robustness in noisy environments.
40
-
41
-**DSSS in Real-World Use:**
42
-
43
-Used in older Wi-Fi standards (like 802.11b).
44
-
45
-Also found in some military and commercial RF systems.
46
-
47
-Some toy-grade 2.4GHz systems may use simple DSSS-like techniques to reduce cost and avoid interference.
48
-
49
-**Comparison with FHSS:**
50
-
51
-DSSS spreads signal continuously across a wide band.
52
-
53
-FHSS (Frequency Hopping Spread Spectrum) hops between frequencies in a sequence.
54
-
55
-### Compare with WIFI
56
-
57
-| Feature | Wi-Fi (ESP8266) | DSSS RC (Toy/Hobby) |
58
-| ----------- | --------------------------- | ------------------------------ |
59
-| Range | 30โ€“100m typical | 20m (toy) to >1km (hobby) |
60
-| Latency | Medium | Very low |
61
-| Robustness | Lower (affected by routers) | High (designed for RF control) |
62
-| Ease of Use | Easy (phone control) | Needs RC Tx/Rx |
63
-
64
-
65
-## RC-protocols
66
-
67
-- [[edge-tx-dat]]
68
-
69
-- [[CRSF-dat]]
70
-
71
-- [[FrSky-dat]] == [[CC2500-dat]]
72
-
73
-- [[ELRS-dat]] - [[ELRS-RX-dat]] - [[ELRS-TX-dat]]
74
-
75
-
76
-## SDR
77
-
78
-Reverse engineering with a software-defined radio (SDR) (like RTL-SDR or HackRF).
79
-
80
- You could record the RF signal and analyze it to reverse engineer the protocol.
81
-
82
- This is complex and requires RF/digital signal processing (DSP) knowledge.
83
-
84
-Sniffing with NRF24L01+ in promiscuous mode (some hacks exist, but limited).
85
-
86
- Might capture packets from other NRF24L01 devices only.
87
-
88
- Wonโ€™t work for general 2.4GHz devices.
89
-
90
-- [[RTL-SDR-dat]] - [[hackrf-dat]]
91
-
92
-
93
-## Step-by-Step: How to Sniff 2.4GHz RC Signal
94
-
95
-1. Gather Tools
96
-2.
97
-RTL-SDR dongle (most only go up to ~1.7 GHz โ†’ Not enough for 2.4GHz)
98
-
99
-โ†’ You need:
100
-
101
-- A HackRF One (recommended โ€“ covers 1 MHz to 6 GHz)
102
-- OR a CC2500 module (common 2.4GHz transceiver used in RC gear)
103
-- OR an ESP32 with promiscuous mode (works only for Wi-Fi packets)
104
-
105
-
106
-
107
-## ref
108
-
109
-- [[RC-dat]] - [[logic-analyzer-dat]]
... ...
\ No newline at end of file
app-dat/RC-dat/RC-signal-dat/RTL-SDR-dat/RTL-SDR-dat.md
... ...
@@ -1,52 +0,0 @@
1
-
2
-# RTL-SDR-dat
3
-
4
-1. What You Need
5
-
6
-An RTL-SDR USB dongle (e.g., RTL2832U with R820T2)
7
-
8
-A Windows, Linux, macOS, or Android device
9
-
10
-An antenna (usually included)
11
-
12
-Software (like SDR# or Universal Radio Hacker)
13
-
14
-SDRSharp
15
-
16
-
17
-4. Signal Analysis (for reverse engineering)
18
-
19
-Use Universal Radio Hacker (URH):
20
-
21
-Record raw signals from 2.4GHz toy remote (if within range)
22
-
23
-Analyze bit patterns, timing, modulation
24
-
25
-Use Audacity to visualize audio-like modulated signals.
26
-
27
-5. On Android (Optional)
28
-
29
-Use SDR Touch with an OTG cable and RTL-SDR dongle.
30
-
31
-Works well for listening to FM, air band, etc.
32
-
33
-What You Can Do With RTL-SDR
34
-
35
-- Listen to FM radio, air traffic, police, weather stations
36
-- Track airplanes (ADS-B)
37
-- Capture RF from garage remotes, key fobs, toy RC
38
-- Reverse engineer simple RF protocols
39
-
40
-
41
-
42
-## Alternative: Use an SDR to Sniff Raw RF
43
-
44
-To analyze the actual RF signal, you need a Software Defined Radio (SDR) like:
45
-
46
-HackRF, LimeSDR, or USRP
47
-
48
-Record the 2.4GHz spectrum
49
-
50
-Analyze bursts from the remote
51
-
52
-Use Universal Radio Hacker (URH) or GNU Radio to decode the signal
... ...
\ No newline at end of file
app-dat/RC-dat/RC-signal-dat/SBUS-dat/SBUS-dat.md
... ...
@@ -1,75 +0,0 @@
1
-
2
-# SBUS-dat
3
-
4
-- [[futaba-dat]]
5
-
6
-## ๐Ÿ“ก What is SBUS? โ€” Simple Explanation
7
-
8
-**SBUS (Serial Bus)** is a digital protocol used in RC systems to send multiple control signals (channels) over a single wire.
9
-
10
----
11
-
12
-### ๐Ÿงฉ Key Features
13
-
14
-- ๐Ÿ”ข **Up to 16 channels** in one signal
15
-- ๐Ÿ’ฌ **Digital serial protocol**
16
-- ๐Ÿ“ฆ Sends data in **serial frames**
17
-- โฑ๏ธ **100,000 baud**, **inverted UART**
18
-- โ†ช๏ธ Invented by **Futaba**, widely used (FrSky, Radiolink, etc.)
19
-- ๐Ÿง  Needs **inversion** to be read by normal UART (hardware or software)
20
-
21
----
22
-
23
-### ๐Ÿงฑ Simple Analogy
24
-
25
-> SBUS is like 16 people taking turns speaking very fast on one microphone.
26
-> Each frame contains all channel values packed tightly together.
27
-
28
----
29
-
30
-### ๐Ÿงช Data Frame Structure
31
-
32
-Each SBUS frame is 25 bytes:
33
-
34
-| 1 byte | 22 bytes | 1 byte | 1 byte |
35
-| ------ | ----------- | ------ | ------ |
36
-| Header | 16 channels | Flags | End |
37
-
38
-
39
-
40
-- **Header**: 0x0F
41
-- **End**: 0x00
42
-- Sent **every ~9ms** (111Hz refresh rate)
43
-
44
----
45
-
46
-### ๐Ÿ”Œ Common Use Cases
47
-
48
-- RC Receiver โ†’ Flight Controller (e.g., FrSky RX to Betaflight FC)
49
-- RC Receiver โ†’ Microcontroller (Arduino, ESP32)
50
-- RC โ†’ Servo controller boards (if SBUS supported)
51
-
52
----
53
-
54
-### โš–๏ธ SBUS vs PWM vs PPM
55
-
56
-| Feature | SBUS | PWM | PPM |
57
-|---------------|-------------|---------------|---------------|
58
-| Channels | 16 | 1 per wire | 8 (typically) |
59
-| Wires needed | 1 | 1 per channel | 1 |
60
-| Type | Digital | Analog pulse | Analog pulse |
61
-| Speed | Very fast | Slow | Medium |
62
-| Latency | Very low | High | Medium |
63
-
64
----
65
-
66
-### ๐Ÿงฐ Tip for Developers
67
-
68
-To read SBUS using a microcontroller:
69
-- Use **UART** at **100000 baud**, **8E2**, **inverted signal**
70
-- Some MCUs (like ESP32) support inversion natively
71
-- Otherwise, use an **inverter circuit** or a software decoder
72
-
73
-## ref
74
-
75
-- [[network-dat]]
app-dat/RC-dat/RC-signal-dat/edge-tx-dat/edge-tx-dat.md
... ...
@@ -1,4 +0,0 @@
1
-
2
-# edge-tx-dat
3
-
4
-https://github.com/EdgeTX/edgetx
... ...
\ No newline at end of file
app-dat/RC-dat/RC-supplier-dat/RC-supplier-dat.md
... ...
@@ -1,3 +0,0 @@
1
-
2
-# RC-supplier-dat.md
3
-
app-dat/RC-dat/RC-supplier-dat/WFLY-dat/2025-05-05-14-45-14.png
... ...
Binary files a/app-dat/RC-dat/RC-supplier-dat/WFLY-dat/2025-05-05-14-45-14.png and /dev/null differ
app-dat/RC-dat/RC-supplier-dat/WFLY-dat/2025-05-05-14-51-22.png
... ...
Binary files a/app-dat/RC-dat/RC-supplier-dat/WFLY-dat/2025-05-05-14-51-22.png and /dev/null differ
app-dat/RC-dat/RC-supplier-dat/WFLY-dat/2025-05-05-14-53-48.png
... ...
Binary files a/app-dat/RC-dat/RC-supplier-dat/WFLY-dat/2025-05-05-14-53-48.png and /dev/null differ
app-dat/RC-dat/RC-supplier-dat/WFLY-dat/2025-05-05-14-58-58.png
... ...
Binary files a/app-dat/RC-dat/RC-supplier-dat/WFLY-dat/2025-05-05-14-58-58.png and /dev/null differ
app-dat/RC-dat/RC-supplier-dat/WFLY-dat/2025-05-05-15-03-29.png
... ...
Binary files a/app-dat/RC-dat/RC-supplier-dat/WFLY-dat/2025-05-05-15-03-29.png and /dev/null differ
app-dat/RC-dat/RC-supplier-dat/WFLY-dat/WFLY-WFT06X_Mannual.pdf
... ...
Binary files a/app-dat/RC-dat/RC-supplier-dat/WFLY-dat/WFLY-WFT06X_Mannual.pdf and /dev/null differ
app-dat/RC-dat/RC-supplier-dat/WFLY-dat/WFLY-dat.md
... ...
@@ -1,10 +0,0 @@
1
-
2
-# WFLY-dat.md
3
-
4
-- [[WFT06x-dat]] - [[WFR06S-dat]]
5
-
6
-
7
-
8
-## ref
9
-
10
-- [[PPM-dat]]
... ...
\ No newline at end of file
app-dat/RC-dat/RC-supplier-dat/WFLY-dat/WFR06S-dat.md
... ...
@@ -1,14 +0,0 @@
1
-
2
-# WFR06S-dat.md
3
-
4
-![](2025-05-05-14-53-48.png)
5
-
6
-
7
-
8
-## New type of WFLY receiver
9
-
10
-
11
-- A. ่ทณ้ข‘้€Ÿๅบฆ้ซ˜๏ผŒ้‡‡็”จๆ‰ฉ่ทณ้ข‘็ณป็ปŸ๏ผˆFHSS&DSSS๏ผ‰๏ผšไธไฝ†้‡‡็”จไบ†DSSSๆŠ€ๆœฏ่€Œไธ”ๅœจDSSSๆŠ€ๆœฏๅŸบ็ก€ไธŠๅฏไปฅ่ฟ›่กŒๅคง็บฆๆฏ4ๆฏซ็ง’(ms)ไธ€ๆฌก็š„่ทณ้ข‘ใ€‚
12
-- B. ๆŽฅๆ”ถๆœบ่พ“ๅ‡บ็ป™่ˆตๆœบ็š„PWMไฟกๅท็จณๅฎšๅบฆ้ซ˜่ถณไปฅๅŒน้…็ฒพๅฏ†ๆ•ฐ็ ่ˆฑๆœบ๏ผšๅฏ็”จ็คบๆณขๅ™จ่ง‚ๅฏŸๅˆฐ็บณ็ง’็บง(nS)็š„็ป†่Š‚๏ผŒ่€Œๅ…ถไป–ไธ€ไบ›็‰Œๅญ็š„ๆŽฅๆ”ถๆœบ่พ“ๅ‡บ็š„PWMไฟกๅท็”จ็คบๆณขๅ™จๅœจus็บงๅˆซ่ง‚ๅฏŸๅฐฑไธ็จณๅฎšไบ†
13
-- C. 44096ๆ•ฐๆฎไธไป…ๅˆ†่พจ็އๆๅ‡๏ผŒๅๅบ”้€ŸๅบฆไนŸๅคงๅน…ๆๅ‡๏ผˆ้…ๅˆ9Sๆˆ–8SๆŽง๏ผ‰
14
-- D. ๆŽฅๆ”ถๆœบๅผ€ๆœบ็š„ๆ—ถๅ€™่‡ชๅŠจ่ฏ†ๅˆซPPM๏ผŒPCMS,4096PCMSไธ‰็งไผ ่พ“ๆจกๅผๆ—ฅ้‡‡็”จๅฏ่ทณ้ข‘็š„DSSS๏ผŒๅฏ้ ๆ€ง้ซ˜ใ€‚ๆ•ฐๅๅฐ่ฎพๅค‡ๅŒๆ—ถๅทฅไฝœ่€Œไบ’ๆ— ๅฝฑๅ“ใ€‚
... ...
\ No newline at end of file
app-dat/RC-dat/RC-supplier-dat/WFLY-dat/WFT06X-dat.md
... ...
@@ -1,129 +0,0 @@
1
-# WFLY-dat
2
-
3
-- [[PPM-dat]]
4
-
5
-![](2025-05-05-14-45-14.png)
6
-
7
-![](2025-05-05-14-51-22.png)
8
-
9
-- the manual == [[WFLY-WFT06X_Mannual.pdf]]
10
-- [fccd.io manual link](https://fccid.io/TZVWFT06XWFT08S/User-Manual/User-Manual-1-1119279.pdf)
11
-
12
-## Info
13
-
14
-- WFT06X-A: 6 channels airplane,mixfunction,D/R,HDE helicopter.
15
-- WFT06X-B: 4 channesl airplane, mix function,D/R, HDE helicopter.
16
-- WFT06X-C: 6 channels CCPMhelicopter,airplane.
17
-
18
-
19
-## Models
20
-
21
-![](2025-05-05-14-58-58.png)
22
-
23
-- [[airplane-dat]]
24
-
25
-
26
-## toggle switches
27
-
28
-![](2025-05-05-15-03-29.png)
29
-
30
-
31
-| Switch | State | | Up | Down |
32
-| :---------- | :--------- | --------------------------- | :--------------------------------- | :--------------------------------- |
33
-| A | Helicopter | Ch3 to Ch4 mixture. (note1) | Enables | Disables |
34
-| B | N/A | | Selects Helicopter state. | Selects Airplane state. |
35
-| C (1,2,4,6) | Airplane | | Dual Rate set to ยฑ125%. | Dual Rate set to ยฑ100%. |
36
-| D | Airplane | | Enables mixture functions (E, F). | Disables mixture functions (E, F). |
37
-| E | Airplane | | Enables Ch2 & Ch4 mixture (note3) | Enables Ch1 & Ch6 mixture (note3) |
38
-| F | Airplane | | Enables Ch1 & Ch2 mixture (note2). | N/A |
39
-| G (Ch1) | N/A | | Reverse Mode. | Normal Mode. |
40
-| H (Ch2) | N/A | | Reverse Mode. | Normal Mode. |
41
-| I (Ch3) | N/A | | Reverse Mode. | Normal Mode. |
42
-| J (Ch4) | N/A | | Reverse Mode. | Normal Mode. |
43
-| K (Ch6) | N/A | | Reverse Mode. | Normal Mode. |
44
-
45
-note1 == Ch3 to Ch6 mix always active
46
-
47
-note2 == (Elevon/Delta Wing) (Requires D Up, overrides D)
48
-
49
-note3 == (V-Tail) (Requires D Up).
50
-
51
-Switch Function Instruction
52
-
53
-- (A๏ผ‰At helicopterstate,pulling A down to put offmixturefunction of channel3to channel4,when pulling it up it willcomebackthefunction.Butthemixturefunctiontochannel 6isstable,whichisirrelevant with this switch.
54
-- (B) Pulling B down is airplane state and pulling it up is helicopter state.
55
-- (C) At airplane state, pulling 1, 2, 4, 6 down the dual rate is ยฑ100%; when pulling them up, the dual rate will be ยฑ125%.
56
-- (D) At airplane state, pulling D down make switches have no mixture function, but pulling it up will cause them have thefunction.
57
-- (E) At airplane state, when D is pulled up, pulling E down cause channel 1 & 6 mixture function (Flaperon); pulling E up will cause channel 2 & 4 mixture function(V-TAIL๏ผ‰.
58
-- (F) At airplane state,when D is pulled up,pulling F up it works as the mixture function of channel 1&2(TrianglewingELEVON),and Dfunctiondoesn'tworkat that moment.
59
-- (G) Channel 1 is reverse switch for aileron.Pulling G down is to make it in normal mode,and pulling it up is to make it act in reverse.
60
-- (H) Channel 2 is reverse switch for elevator. Pulling H down is to make it in normal mode, and pulling it up is to make it act in reverse.
61
-- (I) Channel 3 is reverse switch for power. Pulling I down is to make it in normal mode, and pulling it up is to make it act in reverse.
62
-- (J) Channel 4 is reverse switch for rudder. Pulling J down is to make it in normal mode, and pulling it up is to makeitactinreverse.
63
-- (K) Channel 6 is reverse switch for screw-pitch/ flaperon.Pulling K down is to make it in normal mode, and pulling it up is to make it act in reverse.
64
-
65
-
66
-
67
-## Binding Instructions:
68
-
69
-1. **Receiver:** Press and hold the "SET" button until the orange "STATUS" light flashes slowly. The receiver is now waiting for the transmitter's binding command.
70
-2. **Transmitter:** Press and hold the "SET" button while powering on the transmitter. Press the SET button once more to enter the binding function (the orange "STATUS" light will be solid). Then, press and hold the SET button until the orange light flashes slowly, entering the binding state.
71
-3. **Binding Successful:** The transmitter's green light will turn solid, and the receiver's indicator light will turn off.
72
-
73
-## Failsafe Setup:
74
-
75
-1. Power on the receiver.
76
-2. Press and hold the "SET" button while powering on the transmitter. Then, press and hold the SET button for about 2 seconds to enter the failsafe setup state (the green light will flash).
77
-3. The receiver's green light will flash quickly. The data currently being output by the transmitter will be set as the failsafe output data for the receiver.
78
-4. **Failsafe Active State:** The receiver's red light will be solid.
79
-
80
-## Technical Parameters:
81
-
82
-* **Application:** Fixed-wing aircraft, HDE helicopters, fixed-pitch helicopters, cars, boats
83
-* **Frequency Band:** 2.400 - 2.483 GHz
84
-* **Transmit Power:** โ‰ค 100mW
85
-* **Operating Current:** โ‰ค 160mA
86
-* **Encoding:** PPM
87
-* **RF Module:** Built-in
88
-* **Power Supply:** 9.6 - 12V
89
-* **Dual Rate/Expo Range:** 100% ~ 125%
90
-* **Mixing:**
91
- * Flaperon (Channel 6 and Channel 1 mix)
92
- * V-Tail (Channel 4 and Channel 2 mix)
93
- * Delta Wing (Elevon) (Channel 1 and Channel 2 mix)
94
- * HDE Helicopter (Channel 3 to Channel 4 & 6 mix)
95
- * HDE Helicopter (Channel 3 to Channel 6 mix)
96
-* **Reverse Switches:**
97
- * Channel 1: Aileron ๅ‰ฏ็ฟผ
98
- * Channel 2: Elevator ๅ‡้™่ˆต
99
- * Channel 3: Throttle ๆฒน้—จ
100
- * Channel 4: Rudder ๆ–นๅ‘่ˆต
101
- * Channel 6: Flap/Pitch ่ฅŸ็ฟผ/่žบ่ท
102
-* **Low Voltage Alarm (Visual & Audible):**
103
- * Battery Voltage < 8.8V: Power indicator flashes once per second with beeping.
104
- * Battery Voltage < 8.3V: Power indicator flashes twice per second (0.5s interval) with beeping.
105
-* **Charging Jack:** Yes
106
-* **Simulator Jack:** Yes
107
-
108
-
109
-## Beeping
110
-
111
-According to the document, the device will provide a sound-and-light notification when the battery voltage is low. ย 
112
-
113
-**When the battery voltage is below 8.8V**, the power indicator light will glitter and buzz at a rate of 1S/1S. ย 
114
-
115
-**When the battery voltage drops below 8.3V**, the power indicator light will glitter and buzz at a rate of 0.5S/1S. ย 
116
-
117
-Additionally, the WFT06X-C model transmitter will alarm if it is turned on in an Idle-up state with no output. ย 
118
-
119
-
120
-
121
-
122
-
123
-## demo video
124
-
125
-- [how to binding WFLY in chinese ](https://www.bilibili.com/video/BV1Mh4y1c7FS/?vd_source=74a6b8b9bfcd41c5946a742815bf71ae)
126
-
127
-## ref
128
-
129
-- [[WFLY]] - [[lightradio]] - [[radiomaster]]
... ...
\ No newline at end of file
app-dat/RC-dat/RC-supplier-dat/betaFPV-dat/2025-05-04-14-49-45.png
... ...
Binary files a/app-dat/RC-dat/RC-supplier-dat/betaFPV-dat/2025-05-04-14-49-45.png and /dev/null differ
app-dat/RC-dat/RC-supplier-dat/betaFPV-dat/2025-05-04-15-34-48.png
... ...
Binary files a/app-dat/RC-dat/RC-supplier-dat/betaFPV-dat/2025-05-04-15-34-48.png and /dev/null differ
app-dat/RC-dat/RC-supplier-dat/betaFPV-dat/betaFPV-dat.md
... ...
@@ -1,4 +0,0 @@
1
-
2
-# betaFPV-dat
3
-
4
-- [[lightradio-dat]]
... ...
\ No newline at end of file
app-dat/RC-dat/RC-supplier-dat/betaFPV-dat/lightradio-dat.md
... ...
@@ -1,94 +0,0 @@
1
-
2
-# lightradio-dat
3
-
4
-## Lightradio 3 Pro
5
-
6
-- professional version
7
-- build-in OLED display
8
-
9
-![](2025-05-04-15-34-48.png)
10
-
11
-Choice of two protocols:
12
-
13
-* **Built-in ELRS 2.4G:** Maximum output power up to 250mW, built-in omnidirectional antenna, enables long-range flight.
14
-* **Built-in CC2500 version:** Supports Frsky D / Frsky X / SFHSS and other protocols, maximum 100mW transmission power.
15
-
16
-
17
-
18
-## lightradio 3
19
-
20
-- does NOT support original [[ELRS-dat]] system
21
-
22
-### info
23
-
24
-![](2025-05-04-14-49-45.png)
25
-
26
-
27
-### Flight Controller
28
-
29
-The application supports flight controller that can run LiteSilver firmeware.
30
-
31
-- Lite Brushed FC V3
32
-- Cetus FPV Kit
33
-- Cetus Pro FPV Kit
34
-- Cetus X FPV KIT
35
-- Cetus Lite FPV Kit
36
-- Aquila 16 FPV kit
37
-
38
-Configurator for FC board is active.Follow the steps to enter FC Setup page.
39
-
40
-1. Connect the FC board to the computer via USB data cable.
41
-2. Select the virtual COM port and click the *Connect" button on the top right.
42
-
43
-Note: If enter FC Setup page fail, please update the FC firmware first.
44
-
45
-Click the "Firmware Flasher" tab on the left for firmware update.
46
-
47
-### Radio Transmitter
48
-
49
-Support the radio controller come with BETAFPV LiteRadio Firmware 2.0 Version.
50
-
51
-- LiteRadio 1
52
-- LiteRadio 2 SEV2
53
-- LiteRadio 3
54
-- LiteRadio 4 SE
55
-
56
-The LiteRadio 2 SE Frsky or Bayang version is not supported. LiteRadio 2 and LiteRadio 3 Pro is powered by OpenTX system, please use the OpenTX Companion.
57
-
58
-Click the yellow button below to active configurator for radio controller.
59
-
60
-### Remote control parameters
61
-
62
-- Model == LiteRadio3 remote control
63
-- Remote control distance == 500-600 meters
64
-- Frequency range == 2.4G (2403MHz-2447MHz)
65
-- Support protocol == ELRS 2.4G/Frsky (CC2500)
66
-- Channel == 8
67
-- Support protocol == ELRS 2.4G
68
-- Power == 25mW/50mW/100mW
69
-- Adaptive drone type supports
70
- - Multi-rotor/support USB firmware update
71
- - BETAFPV Configurator connection
72
- - Custom LiteRadio system joystick calibration
73
-- LED light == red light on/red warning/blue normal
74
-- Battery built-in == 2000mAh1S battery
75
-- Charging connector == Type-C
76
-
77
-## BetaFPV Configurator
78
-
79
-[github release ](https://github.com/BETAFPV/BETAFPV_Configurator/releases)
80
-
81
-[BETAFPV Configurator User Manual](https://support.betafpv.com/hc/en-us/articles/40712112687769-BETAFPV-Configurator-User-Manual)
82
-
83
-[github BETAFPV_Configurator](https://github.com/BETAFPV/BETAFPV_Configurator)
84
-
85
-
86
-### Connection
87
-
88
-- via serial port (USB)
89
-
90
-
91
-
92
-## ref
93
-
94
-- [[betaFPV]] - [[FPV]]
... ...
\ No newline at end of file
app-dat/RC-dat/RC-supplier-dat/frsky-dat/frsky-dat.md
... ...
@@ -1,9 +0,0 @@
1
-
2
-# frsky-dat
3
-
4
-- [Taranis Series](https://www.frsky-rc.com/product-category/transmitters/taranis-series/)
5
-
6
-
7
-## ref
8
-
9
-- [[RC-supplier-dat]]
... ...
\ No newline at end of file
app-dat/RC-dat/RC-supplier-dat/radiomaster-dat/2025-05-16-12-45-54.png
... ...
Binary files a/app-dat/RC-dat/RC-supplier-dat/radiomaster-dat/2025-05-16-12-45-54.png and /dev/null differ
app-dat/RC-dat/RC-supplier-dat/radiomaster-dat/2025-05-16-12-47-56.png
... ...
Binary files a/app-dat/RC-dat/RC-supplier-dat/radiomaster-dat/2025-05-16-12-47-56.png and /dev/null differ
app-dat/RC-dat/RC-supplier-dat/radiomaster-dat/2025-05-16-12-48-22.png
... ...
Binary files a/app-dat/RC-dat/RC-supplier-dat/radiomaster-dat/2025-05-16-12-48-22.png and /dev/null differ
app-dat/RC-dat/RC-supplier-dat/radiomaster-dat/radiomaster-dat.md
... ...
@@ -1,79 +0,0 @@
1
-
2
-# radiomaster-dat
3
-
4
-
5
-## binding
6
-
7
-## Pocket Radio Controller (M2)
8
-
9
-
10
-https://www.radiomasterrc.com/products/pocket-radio-controller-m2
11
-
12
-https://cdn.shopify.com/s/files/1/0609/8324/7079/files/Pocket_1.pdf?v=1736839330
13
-
14
-firmwares - https://www.radiomasterrc.com/pages/firmware-updates
15
-
16
-
17
-![](2025-05-16-12-45-54.png)
18
-
19
-## wifi
20
-
21
-better use this wifi option to connect your devices to your local network:
22
-
23
- One-time connect to network, retain Home network setting
24
-
25
- http://elrs_tx.local
26
-
27
-
28
-find firmware version
29
-
30
- ExpressLRS
31
- RadioMaster Pocket Internal 2.4GHz TX
32
- Firmware Rev. 3.5.4 (a6f9a2) ISM2G4
33
-
34
-
35
-## flash
36
-
37
- You must choose regulatory domain for your device in 2.4 GHz band
38
-
39
- Custom binding phrase must be longer than 6 characters
40
-
41
-
42
-## build firmware first
43
-
44
-![](2025-05-16-12-47-56.png)
45
-
46
-![](2025-05-16-12-48-22.png)
47
-
48
-
49
-## flash log
50
-
51
- % Total % Received % Xferd Average Speed Time Time Time Current
52
- Dload Upload Total Spent
53
- Left Speed
54
-
55
- 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
56
- 12 1534k 0 0 12 192k 0 153k 0:00:09 0:00:01 0:00:08 154k
57
- 20 1534k 0 0 20 320k 0 137k 0:00:11 0:00:02 0:00:09 137k
58
- 25 1534k 0 0 25 384k 0 119k 0:00:12 0:00:03 0:00:09 119k
59
- 33 1534k 0 0 33 512k 0 113k 0:00:13 0:00:04 0:00:09 113k
60
- 37 1534k 0 0 37 576k 0 110k 0:00:13 0:00:05 0:00:08 110k
61
- 45 1534k 0 0 45 704k 0 105k 0:00:14 0:00:06 0:00:08 96234
62
- 50 1534k 0 0 50 768k 0 103k 0:00:14 0:00:07 0:00:07 90181
63
- 54 1534k 0 0 54 832k 0 102k 0:00:15 0:00:08 0:00:07 92902
64
- 62 1534k 0 0 62 960k 0 100k 0:00:15 0:00:09 0:00:06 91603
65
- 66 1534k 0 0 66 1024k 0 100k 0:00:15 0:00:10 0:00:05 91548
66
- 75 1534k 0 0 75 1152k 0 99k 0:00:15 0:00:11 0:00:04 93775
67
- 79 1534k 0 0 79 1216k 0 98k 0:00:15 0:00:12 0:00:03 94064
68
- 83 1534k 0 0 83 1280k 0 98k 0:00:15 0:00:13 0:00:02 93852
69
- 91 1534k 0 0 91 1408k 0 99813 0:00:15 0:00:14 0:00:01 92958
70
- 95 1534k 0 0 95 1472k 0 99416 0:00:15 0:00:15 --:--:-- 92639
71
- 100 1534k 0 0 100 1534k 0 92904 0:00:16 0:00:16 --:--:-- 73560
72
- 100 1534k 0 0 100 1534k 0 87667 0:00:17 0:00:17 --:--:-- 57992
73
- 100 1535k 100 99 100 1534k 5 84899 0:00:19 0:00:18 0:00:01 47599
74
- 100 1535k 100 99 100 1534k 5 84899 0:00:19 0:00:18 0:00:01 31982
75
-
76
- ** UPLOADING TO: http://192.168.72.9/update
77
-
78
- UPLOAD SUCCESS
79
- Update complete. Please wait for a few seconds while the device reboots.
... ...
\ No newline at end of file
app-dat/RC-dat/RC-supplier-dat/speedybee-dat/speedybee-dat.md
... ...
@@ -1,7 +0,0 @@
1
-
2
-# speedybee-dat
3
-
4
-[SpeedyBee 4pcs FPV Soldering Practice Board for FPV Drone Beginners, Tools for Flight controller ESC Soldering Practice](https://www.amazon.com/SpeedyBee-Soldering-Practice-Beginners-controller/dp/B0C5X26JWQ/ref=sr_1_32?dib=eyJ2IjoiMSJ9.85xi15ftM4OWw33_siXrDRGNOKuf3CgQct4cVlBOFqI1ZAAZD4Gz_S4U_wqEKgjxWcsGOZPlWkdGdEASaTJntO1H_pFgsXO61wuEgveKAmLTLHR-cjsa5SOhaKUXU0vVHE7oijzqLoIPsx-H55gYNPr_F8aMX98OqPfwk64Ma12qrNSidLDVokmdegWL621v3U-5PDEaMNTjdACgOTHEBxAGhtxksaYVouWcSkxMCTI-jr0FkvxyQeZmO6S-UjXJcEcChxa4sPMjVyiK7070XhJlH2EnXqgnv0KScl80Jqc.AzbbGJAa2ls6bQWRCrudB-jGcm6vKV7pRItsIyBMpdA&dib_tag=se&keywords=FPV&qid=1744201259&sr=8-32)
5
-
6
-
7
-
app-dat/RC-dat/Tank-dat/2025-05-22-00-49-44.png
... ...
Binary files a/app-dat/RC-dat/Tank-dat/2025-05-22-00-49-44.png and /dev/null differ
app-dat/RC-dat/Tank-dat/2025-05-22-00-50-12.png
... ...
Binary files a/app-dat/RC-dat/Tank-dat/2025-05-22-00-50-12.png and /dev/null differ
app-dat/RC-dat/Tank-dat/Tank-dat.md
... ...
@@ -1,28 +0,0 @@
1
-
2
-# Tank-dat
3
-
4
-
5
-- [[dc-gear-motor-dat]] - [[MG513-dat]]
6
-
7
-- [[tank-track-dat]]
8
-
9
-## tank platform 1
10
-
11
-- Each wheel has an independent suspension spring
12
-- six rogs each side
13
-
14
-![](2025-05-22-00-49-44.png)
15
-
16
-![](2025-05-22-00-50-12.png)
17
-
18
-
19
-
20
-## 3D
21
-
22
-- tank track and [[robot-arm-dat]] - [3D model](https://cad.onshape.com/documents/74b490fd20a2a4c684736444/w/df7ed99939a49695aecaa97f/e/90154fe41bafe724913e360f?renderMode=0&uiState=68301af9be87bf505c7ca7d0)
23
-
24
-
25
-
26
-## ref
27
-
28
-- [[RC]] - [[tank]]
... ...
\ No newline at end of file
app-dat/RC-dat/Tank-dat/markus-tank-dat/markus-tank-dat.md
... ...
@@ -1,36 +0,0 @@
1
-
2
-# markus-rover-dat
3
-
4
-- [FPV-Rover V2.0 (RC Tank)](https://www.thingiverse.com/thing:2952852)
5
-- [youtube](https://www.youtube.com/watch?v=dpUSdjNppN0)
6
-- https://www.instructables.com/FPV-Rover-V20/
7
-
8
-## printed parts
9
-
10
-- 2x main cog front
11
-- 2x main cog rear (needs support)
12
-- 16x small cog
13
-- 1x body (needs support)
14
-- 2x outer frame
15
-- 2x big bevel gear (use 4:1 for less heat and more torque)
16
-- 2x small bevel gear (I recommend strong filament like Nylon) (use 4:1 for less heat and more torque)
17
-- 2x motor mounting bracket
18
-- 2x ESC mount
19
-- 1x inner frame left (or inner frame left high)
20
-- 1x inner frame right (or inner frame right high)
21
-- 1x front cover (needs support)
22
-- 1x rear cover
23
-- 64x tank track
24
-- 64x rubber track for tank track
25
-
26
-## ordered parts
27
-
28
-
29
-
30
-## knowledge
31
-
32
-- [[3d-printer-dat]]
33
-
34
-- [[dc-motor-dat]] - [[tank-track-dat]] - [[ESC-dat]]
35
-
36
-- cog == gear
app-dat/RC-dat/Tank-dat/tank-track-dat/2025-05-22-14-09-36.png
... ...
Binary files a/app-dat/RC-dat/Tank-dat/tank-track-dat/2025-05-22-14-09-36.png and /dev/null differ
app-dat/RC-dat/Tank-dat/tank-track-dat/2025-05-22-14-10-22.png
... ...
Binary files a/app-dat/RC-dat/Tank-dat/tank-track-dat/2025-05-22-14-10-22.png and /dev/null differ
app-dat/RC-dat/Tank-dat/tank-track-dat/2025-05-22-14-11-57.png
... ...
Binary files a/app-dat/RC-dat/Tank-dat/tank-track-dat/2025-05-22-14-11-57.png and /dev/null differ
app-dat/RC-dat/Tank-dat/tank-track-dat/tank-track-dat.md
... ...
@@ -1,54 +0,0 @@
1
-
2
-# tank-track-dat
3
-
4
-
5
-## โœ… When Tank Tracks Are Better
6
-- **Soft Terrain** (sand, mud, snow):
7
- - Tracks distribute weight over a larger surface, preventing sinking.
8
-- **Uneven Terrain** (rocks, slopes, obstacles):
9
- - Tracks provide better grip and stability.
10
-- **Heavy Loads**:
11
- - Tracks can support and move heavier equipment with more traction.
12
-
13
-## โœ… When Wheels Are Better
14
-- **Hard, Flat Terrain** (pavement, concrete):
15
- - Wheels are faster and more energy-efficient.
16
-- **Speed & Efficiency**:
17
- - Wheeled systems are usually lighter and less power-hungry.
18
-- **Maintenance & Cost**:
19
- - Wheels are simpler, cheaper, and easier to repair.
20
-
21
-
22
-## ๐Ÿ” Summary Table
23
-
24
-| Feature | Tank Tracks | Wheels |
25
-|------------------|----------------------------------|----------------------------------|
26
-| Traction | Excellent on rough terrain | Good on hard surfaces |
27
-| Speed | Slower | Faster |
28
-| Efficiency | Lower (more friction) | Higher |
29
-| Terrain Handling | Superior on soft/uneven ground | Best on smooth/hard ground |
30
-| Weight Support | High | Moderate |
31
-| Maintenance | More complex and expensive | Easier and cheaper |
32
-
33
-
34
-## BOMS
35
-
36
-Cogs
37
-
38
-![](2025-05-22-14-09-36.png)
39
-
40
-![](2025-05-22-14-11-57.png)
41
-
42
-Chains
43
-
44
-![](2025-05-22-14-10-22.png)
45
-
46
-
47
-## guide
48
-
49
-- [tank #track disassemble and re-assemble](https://t.me/electrodragon3/371)
50
-
51
-
52
-## ref
53
-
54
-- [[robot-dat]] - [[tank-dat]]
... ...
\ No newline at end of file
app-dat/RC-dat/UAV-dat/UAV-dat.md
... ...
@@ -1,46 +0,0 @@
1
-
2
-# UAV-dat
3
-
4
-A UAV stands for Unmanned Aerial Vehicle. It's an aircraft without a human pilot on board, controlled remotely or autonomously. They are also commonly known as drones.
5
-
6
-- [[betaflight-dat]] - [[ArduPilot-dat]]
7
-
8
-- [[FPV-dat]]
9
-
10
-
11
-
12
-## fixed-wing UAV
13
-
14
-### Talon 1400 Overview
15
-
16
-#### What is the Talon 1400?
17
-The **Talon 1400** is a high-performance, **3D-printed unmanned aerial vehicle (UAV)** developed by Flightory. It is optimized for long-range and efficient flight.
18
-
19
-##### Specifications:
20
-- **Wingspan:** 1,305 mm
21
-- **Length:** 830 mm
22
-- **Flight Time:** Up to 4 hours (with large Li-Ion 4S6P battery)
23
-- **Materials:** LW-PLA and PETG
24
-- **Airfoil:** Eppler E205
25
-- **Optimal Cruise Speed:** 55-65 km/h
26
-
27
-#### Is It Betaflight-Based?
28
-
29
-**No**, the Talon 1400 is **not** based on Betaflight. Since it is a **fixed-wing UAV**, it is more suited for **autonomous flight controllers** rather than Betaflight, which is designed for FPV racing drones.
30
-
31
-##### Recommended Flight Controllers:
32
-
33
-- **Mateksys F405-Wing / F765-Wing**
34
-- **Pixhawk (PX4 or ArduPilot firmware)**
35
-- **Holybro Kakute F7 / H743-Wing**
36
-
37
-These controllers support **GPS navigation, waypoint missions, and return-to-home (RTH)**, making them better suited for long-range operations.
38
-
39
-#### Resources:
40
-
41
-- [Flying a 3D Printed Fixed Wing Drone | Talon 1400 V2](https://www.youtube.com/watch?v=2ngGgtw1sUw)
42
-
43
-- [Flightory Talon 1400 Official Page](https://flightory.com/product/talon-1400/)
44
-- [Talon 1400 Assembly Tutorial (YouTube)](https://www.youtube.com/watch?v=LGt_8F4e5r8)
45
-
46
-
app-dat/RC-dat/UAV-dat/betaflight-dat.md
... ...
@@ -1,31 +0,0 @@
1
-
2
-
3
-# betaflight-dat.md
4
-
5
-Betaflight is an open-source firmware for drones and other unmanned aerial vehicles (UAVs). It is designed to provide advanced flight control capabilities, making it popular among hobbyists and enthusiasts in the drone community. Betaflight is known for its flexibility, configurability, and support for a wide range of hardware platforms.
6
-
7
-- [[FPV-dat]]
8
-
9
-
10
-
11
-
12
-
13
-## commerlized projects
14
-
15
-- **speedybee** == https://www.speedybee.com/ == SpeedyBee is a company that specializes in providing high-quality drone components and accessories, including flight controllers, ESCs, and other related products. They are known for their innovative designs and user-friendly interfaces, making them a popular choice among drone enthusiasts.
16
-- **betafpv** == https://www.betafpv.com/ == BETAFPV is a company that focuses on producing small and lightweight drones, particularly for FPV (First Person View) racing and freestyle flying. They offer a range of products, including flight controllers, cameras, and other accessories tailored for FPV enthusiasts.
17
-- happymodel
18
-- iFlight
19
-- Holybro
20
-- TBS
21
-- Flywoo
22
-- HGLRC
23
-- Diatone
24
-- GepRC
25
-- Racerstar
26
-- Emax
27
-- Eachine
28
-- HGLRC
29
-- Racerstar
30
-
31
-
app-dat/RC-dat/airplane-dat/airplane-dat.md
... ...
@@ -1,38 +0,0 @@
1
-
2
-# airplane-dat
3
-
4
-## Channel 1: Aileron Action
5
-
6
-Control theright-and-left lean of the aircraft.To level the slantwise aircraft,youmust make
7
-thecontrol rod act inreverse direction.Otherwise,it will makethe aircraftoverturn.
8
-
9
-## Channel 2: Elevator Action
10
-
11
-Control the aerocraft to descend orascend.Pulling the control rod down will driveup the head,
12
-and the aeroplane will ascend.Boosting it upwill make thehead downhill,and the aeroplane
13
-willdescend.
14
-
15
-## Channel 3: Throttle Operation
16
-
17
-Control the power. Pulling the control rod down will minish down the power group, and boosting
18
-the control rod up will increase thepower group.
19
-
20
-## Channel 4: Rudder Action
21
-
22
-Control the swerve of the aerocraft. Turning the control rod to left will make the head of the
23
-aircraft turn left, and turning it to right will make the head turn right.
24
-
25
-## Channel 5: LandingGear/GyroAction
26
-
27
-This channel is for switch variable. It is a switch to control landing gear when used for airplane
28
-state, but it will be a switch for gyroscope when used for helicopter.
29
-
30
-## Channel 6: Screw-pitch/Flaperon Action
31
-
32
-The angle adjustingof the flaperon isfor the airplane state,and the adjustingof themain
33
-screw-pitch is forhelicopter state.
34
-
35
-
36
-## ref
37
-
38
-- [[RC-dat]] - [[airplane]] - [[RC]]
... ...
\ No newline at end of file
app-dat/RC-dat/flight-controller-dat/flight-controller-dat.md
... ...
@@ -1,3 +0,0 @@
1
-
2
-# flight-controller-dat
3
-
app-dat/RC-dat/quadcopter-dat/2025-01-29-17-12-32.png
... ...
Binary files a/app-dat/RC-dat/quadcopter-dat/2025-01-29-17-12-32.png and /dev/null differ
app-dat/RC-dat/quadcopter-dat/FPV-dat/2025-04-02-12-45-53.png
... ...
Binary files a/app-dat/RC-dat/quadcopter-dat/FPV-dat/2025-04-02-12-45-53.png and /dev/null differ
app-dat/RC-dat/quadcopter-dat/FPV-dat/2025-04-02-13-14-05.png
... ...
Binary files a/app-dat/RC-dat/quadcopter-dat/FPV-dat/2025-04-02-13-14-05.png and /dev/null differ
app-dat/RC-dat/quadcopter-dat/FPV-dat/FPV-controller-dat/FPV-controller-dat.md
... ...
@@ -1,13 +0,0 @@
1
-
2
-# FPV-receiver-dat
3
-
4
-- [[ELRS-dat]] - [[TBS-dat]]
5
-
6
-
7
-## DJI
8
-
9
-- [DJI FPV Remote Controller 3](https://www.amazon.com/DJI-FPV-Remote-Controller-Compatibility/dp/B0CS6JCX2W/ref=sr_1_3?dib=eyJ2IjoiMSJ9.85xi15ftM4OWw33_siXrDRGNOKuf3CgQct4cVlBOFqI1ZAAZD4Gz_S4U_wqEKgjxWcsGOZPlWkdGdEASaTJntO1H_pFgsXO61wuEgveKAmLTLHR-cjsa5SOhaKUXU0vVHE7oijzqLoIPsx-H55gYNPr_F8aMX98OqPfwk64Ma12qrNSidLDVokmdegWL621v3U-5PDEaMNTjdACgOTHEBxAGhtxksaYVouWcSkxMCTI-jr0FkvxyQeZmO6S-UjXJcEcChxa4sPMjVyiK7070XhJlH2EnXqgnv0KScl80Jqc.AzbbGJAa2ls6bQWRCrudB-jGcm6vKV7pRItsIyBMpdA&dib_tag=se&keywords=FPV&qid=1744201259&sr=8-3)
10
-
11
-- [DJI RC Motion 3, FPV Smart Controller with Immersive Motion Control, Compact and Portable, One-Click Emergency Brake, AR Cursor, Intuitive Drone Controller, Multi-Model Compatibility](https://www.amazon.com/DJI-Controller-Immersive-Multi-Model-Compatibility/dp/B0CS6LDCKC/ref=sr_1_11?dib=eyJ2IjoiMSJ9.85xi15ftM4OWw33_siXrDRGNOKuf3CgQct4cVlBOFqI1ZAAZD4Gz_S4U_wqEKgjxWcsGOZPlWkdGdEASaTJntO1H_pFgsXO61wuEgveKAmLTLHR-cjsa5SOhaKUXU0vVHE7oijzqLoIPsx-H55gYNPr_F8aMX98OqPfwk64Ma12qrNSidLDVokmdegWL621v3U-5PDEaMNTjdACgOTHEBxAGhtxksaYVouWcSkxMCTI-jr0FkvxyQeZmO6S-UjXJcEcChxa4sPMjVyiK7070XhJlH2EnXqgnv0KScl80Jqc.AzbbGJAa2ls6bQWRCrudB-jGcm6vKV7pRItsIyBMpdA&dib_tag=se&keywords=FPV&qid=1744201259&sr=8-11)
12
-
13
-
app-dat/RC-dat/quadcopter-dat/FPV-dat/FPV-dat.md
... ...
@@ -1,208 +0,0 @@
1
-
2
-# FPV-dat
3
-
4
-- [[quadcopter-dat]]
5
-
6
-- [[FPV-controller-dat]] - [[Goggles-dat]]
7
-
8
-- [[ELRS-dat]] - [[FrSky-dat]] - [[ArduPilot-dat]] - [[CRSF-dat]]
9
-
10
-- [[BMS-dat]]
11
-
12
-
13
-
14
-## parts of the FPV drones
15
-
16
-- **Flight Controller**: The brain of the drone, responsible for stabilizing and controlling the flight. It processes data from sensors and executes commands from the pilot or autopilot system.
17
-
18
-- **Electronic Speed Controller (ESC)**: Controls the speed of the motors by adjusting the power supplied to them. ESCs are essential for smooth and responsive flight.
19
-
20
-- **Motors**: Provide the thrust needed for flight. Brushless motors are commonly used in FPV drones due to their efficiency and power.
21
-
22
-- **Propellers**: Generate lift by spinning rapidly. The size and pitch of the propellers can significantly affect the drone's performance and flight characteristics.
23
-
24
- - [[SCU1059-dat]]
25
-
26
-- **Camera**: Captures real-time video for FPV flying. FPV cameras are designed to provide low-latency video transmission to the pilot's goggles or screen.
27
-
28
-- [[VTX-dat]]: Video Transmitters are commonly referred to as VTX units. They are responsible for transmitting the video signal from the camera to the pilot's goggles or screen. VTX units come in various power levels and frequencies, allowing pilots to choose the best option for their flying environment.
29
-- **Antenna**: Enhances the signal strength and range of the VTX. Different antenna types (e.g., dipole, patch, circular polarized) can be used to optimize performance.
30
-
31
-- **ExpressLRS**: A long-range radio control link for FPV drones, known for its low latency and high refresh rates. It is an open-source project that competes with other systems like Crossfire and ELRS.
32
-
33
- - [[ELRS-dat]]
34
-
35
-- **Goggles**: Wearable displays that allow pilots to see the live video feed from the drone's camera. They often include features like head tracking and DVR (Digital Video Recorder) capabilities.
36
-
37
-
38
-
39
-
40
-
41
-## Bee35
42
-
43
-
44
-![](2025-04-02-13-14-05.png)
45
-
46
-![](2025-04-02-12-45-53.png)
47
-
48
-| version | price | description |
49
-| -------------------------- | ----- | ------------------------------------- |
50
-| Bee35 Pro O3 Air Unit TBS | 480 | O3 Air Unit, TBS radio |
51
-| Bee35 Pro O3 Air Unit ELRS | 470 | O3 Air Unit, ELRS radio |
52
-| Bee35 Pro O3 Air Unit PNP | 460 | O3 Air Unit, no receiver |
53
-| Bee35 Pro | 270 | Standard analog version |
54
-| Bee35 Pro LINK WASP TBS | 430 | LINK WASP digital system, TBS radio |
55
-| Bee35 Pro LINK WASP ELRS | 420 | LINK WASP digital system, ELRS radio |
56
-| Bee35 Pro LINK WASP PNP | 400 | LINK WASP digital system, no receiver |
57
-| Bee35 Analog TBS | 306 | Analog FPV system, TBS radio |
58
-| Bee35 Analog ELRS | 296 | Analog FPV system, ELRS radio |
59
-
60
-
61
-
62
-## commerialized FPV
63
-
64
-- [[speedybee-dat]]
65
-
66
-### 1. [SpeedyBee Flight Controllers & Stacks](https://speedybee.com/)
67
-- **Brand:** SpeedyBee
68
-- **Description:** Budget-friendly, Betaflight-supported flight controllers with easy app-based tuning.
69
-- **Example Products:**
70
- - **SpeedyBee F405 V4 Stack** (F4-based, affordable)
71
- - **SpeedyBee F7 V3 Stack** (F7-based, powerful & feature-rich)
72
-- **Commercial Features:**
73
- - Wireless **Bluetooth & Wi-Fi tuning** via SpeedyBee app.
74
- - Fully compatible with Betaflight Configurator.
75
-- **Website:** [speedybee.com](https://speedybee.com/)
76
-
77
----
78
-
79
-### 2. [TBS Tango 2 (Crossfire-Integrated Radio Controller)](https://www.team-blacksheep.com/)
80
-- **Brand:** Team BlackSheep (TBS)
81
-- **Description:** A high-performance FPV radio transmitter designed for **Betaflight-based drones** with **built-in Crossfire**.
82
-- **Commercial Features:**
83
- - Fully optimized for **Betaflight & Crossfire**.
84
- - Compact, ergonomic design for FPV pilots.
85
-- **Website:** [team-blacksheep.com](https://www.team-blacksheep.com/)
86
-
87
-
88
-## opensource control projects
89
-
90
-# Most Famous Open-Source FPV GitHub Projects
91
-
92
-If you're looking for **open-source FPV (First-Person View) projects** on GitHub, here are some of the **most famous** ones:
93
-
94
-## 1. [Betaflight](https://github.com/betaflight/betaflight)
95
-- **Description:** One of the most widely used open-source flight control firmware for FPV drones.
96
-- **Features:**
97
- - Highly optimized for **acrobatic** and **racing drones**.
98
- - Supports a wide range of flight controllers.
99
- - Advanced **tuning options** for PID, filters, and motor control.
100
-- **GitHub:** [github.com/betaflight/betaflight](https://github.com/betaflight/betaflight)
101
-
102
----
103
-
104
-## 2. [iNavFlight](https://github.com/iNavFlight/inav)
105
-- **Description:** A fork of Betaflight, but optimized for **GPS and long-range FPV**.
106
-- **Features:**
107
- - Supports **GPS waypoint navigation, return-to-home (RTH), and mission planning**.
108
- - Designed for **freestyle and long-range cruising** rather than racing.
109
-- **GitHub:** [github.com/iNavFlight/inav](https://github.com/iNavFlight/inav)
110
-
111
----
112
-
113
-## 3. [ArduPilot](https://github.com/ArduPilot/ardupilot)
114
-- **Description:** A professional-grade open-source autopilot for drones, including **FPV quadcopters, planes, and rovers**.
115
-- **Features:**
116
- - **Highly autonomous** with advanced mission planning.
117
- - Works with multiple types of vehicles (planes, multirotors, helicopters).
118
- - Compatible with **Mission Planner** and **QGroundControl**.
119
-- **GitHub:** [github.com/ArduPilot/ardupilot](https://github.com/ArduPilot/ardupilot)
120
-
121
----
122
-
123
-## 4. [PX4](https://github.com/PX4/PX4-Autopilot)
124
-- **Description:** A powerful open-source **flight control software** used in drones and FPV systems.
125
-- **Features:**
126
- - Supports both **FPV racing drones** and **autonomous UAVs**.
127
- - Works with Pixhawk flight controllers and supports **ROS (Robot Operating System)**.
128
-- **GitHub:** [github.com/PX4/PX4-Autopilot](https://github.com/PX4/PX4-Autopilot)
129
-
130
----
131
-
132
-## 5. [FalcoX](https://github.com/FlightOne/FalcoX)
133
-- **Description:** An alternative FPV flight control firmware focusing on **ease of use and smooth flight performance**.
134
-- **Features:**
135
- - Intuitive configuration interface.
136
- - Aimed at both **freestyle pilots** and **racers**.
137
-- **GitHub:** [github.com/FlightOne/FalcoX](https://github.com/FlightOne/FalcoX)
138
-
139
----
140
-
141
-## 6. [ExpressLRS](https://github.com/ExpressLRS/ExpressLRS)
142
-- **Description:** Open-source long-range **radio control link** for FPV drones, competing with Crossfire and ELRS.
143
-- **Features:**
144
- - **Low latency and high refresh rates** (great for FPV racing).
145
- - Compatible with many radio transmitters (TBS, Jumper, Radiomaster).
146
-- **GitHub:** [github.com/ExpressLRS/ExpressLRS](https://github.com/ExpressLRS/ExpressLRS)
147
-
148
----
149
-
150
-## 7. [OpenHD](https://github.com/OpenHD/OpenHD)
151
-- **Description:** Open-source **HD video transmission** for FPV drones (alternative to DJI HD systems).
152
-- **Features:**
153
- - Uses **Raspberry Pi + WiFi** for HD FPV video streaming.
154
- - Supports OSD (On-Screen Display) and telemetry data.
155
-- **GitHub:** [github.com/OpenHD/OpenHD](https://github.com/OpenHD/OpenHD)
156
-
157
----
158
-
159
-## ๐Ÿ”ฅ Which One Should You Choose?
160
-| Purpose | Best Open-Source Project |
161
-| ------------------------------------------- | ------------------------------------------------------ |
162
-| **Racing/Freestyle FPV** | [Betaflight](https://github.com/betaflight/betaflight) |
163
-| **GPS & Long-Range FPV** | [iNav](https://github.com/iNavFlight/inav) |
164
-| **Full Autopilot (Drones, Planes, Rovers)** | [ArduPilot](https://github.com/ArduPilot/ardupilot) |
165
-| **Professional UAVs & Research** | [PX4](https://github.com/PX4/PX4-Autopilot) |
166
-| **HD FPV Video Streaming** | [OpenHD](https://github.com/OpenHD/OpenHD) |
167
-| **Long-Range Radio Links** | [ExpressLRS](https://github.com/ExpressLRS/ExpressLRS) |
168
-
169
-
170
-
171
-## standards
172
-
173
-### PNP stands for "Plug and Play."
174
-
175
-In the context of FPV drones, a PNP version means that the drone comes mostly assembled but does not include a radio receiver.
176
-
177
-Here's why it doesn't include a receiver:
178
-
179
-Flexibility: PNP versions cater to experienced FPV pilots who already have their preferred radio transmitter and receiver. This allows them to use their existing equipment and avoid paying for redundant components.
180
-Customization: Pilots might have specific receiver requirements based on their radio system (e.g., TBS Crossfire, ELRS, FrSky). Offering a PNP version lets them choose the exact receiver that's compatible with their setup.
181
-Cost Savings: By excluding the receiver, the manufacturer can offer the PNP version at a lower price point, making it attractive to those who don't need the included receiver.
182
-In short, PNP versions are designed for users who want to use their own radio gear and prefer to avoid unnecessary costs or compatibility issues.
183
-
184
-
185
-
186
-## popular products
187
-
188
-DJI
189
-
190
-- [DJI Avata 2 (Drone Only), FPV Drone with Camera 4K, Immersive Flight Experience, Built-in Propeller Guard, Easy Flip/Roll, Super-Wide 155ยฐ FOV, Compatible with RC Motion 3, FAA Remote ID Compliant](https://www.amazon.com/DJI-Immersive-Experience-Super-Wide-Compatible/dp/B0CS6KY96F/ref=sr_1_45?dib=eyJ2IjoiMSJ9.85xi15ftM4OWw33_siXrDRGNOKuf3CgQct4cVlBOFqI1ZAAZD4Gz_S4U_wqEKgjxWcsGOZPlWkdGdEASaTJntO1H_pFgsXO61wuEgveKAmLTLHR-cjsa5SOhaKUXU0vVHE7oijzqLoIPsx-H55gYNPr_F8aMX98OqPfwk64Ma12qrNSidLDVokmdegWL621v3U-5PDEaMNTjdACgOTHEBxAGhtxksaYVouWcSkxMCTI-jr0FkvxyQeZmO6S-UjXJcEcChxa4sPMjVyiK7070XhJlH2EnXqgnv0KScl80Jqc.AzbbGJAa2ls6bQWRCrudB-jGcm6vKV7pRItsIyBMpdA&dib_tag=se&keywords=FPV&qid=1744201259&sr=8-45)
191
-
192
-BetaFPV
193
-
194
-- [BETAFPV Betaflight ELRS V3 Cetus X FPV Kit with LiteRadio 3 Transmitter C04 Camera VR03 Goggles with DVR Recording Function, Supported 2S Power Advanced RTF Kit for FPV Beginners to Fly Faster Further](https://www.amazon.com/BETAFPV-LiteRadio-Transmitter-Recording-Betaflight/dp/B0BJVP3XW7/ref=sr_1_48?dib=eyJ2IjoiMSJ9.85xi15ftM4OWw33_siXrDRGNOKuf3CgQct4cVlBOFqI1ZAAZD4Gz_S4U_wqEKgjxWcsGOZPlWkdGdEASaTJntO1H_pFgsXO61wuEgveKAmLTLHR-cjsa5SOhaKUXU0vVHE7oijzqLoIPsx-H55gYNPr_F8aMX98OqPfwk64Ma12qrNSidLDVokmdegWL621v3U-5PDEaMNTjdACgOTHEBxAGhtxksaYVouWcSkxMCTI-jr0FkvxyQeZmO6S-UjXJcEcChxa4sPMjVyiK7070XhJlH2EnXqgnv0KScl80Jqc.AzbbGJAa2ls6bQWRCrudB-jGcm6vKV7pRItsIyBMpdA&dib_tag=se&keywords=FPV&qid=1744201259&sr=8-48) == rating == 3.5
195
-
196
-- [BETAFPV Pavo20 Brushless Whoop Quadcopter with HD Digital Bracket for O3 Air Unit, F4 2-3S 20A FC, 1103 8500KV Motor, COB LED Strip, Compatible for FPV Racing Indoor and Outdoor](https://www.amazon.com/BETAFPV-Brushless-Quadcopter-Material-Compatible/dp/B0CKT5G6C1/ref=sr_1_11?crid=1KCLBGZLCPWMM&dib=eyJ2IjoiMSJ9.u8zpDMqhQLF9cnPbc5r76LO9SVPJiVyPzTq0xdtVa2u4UYSXdyYl9H-Z3gMzqguhRBkKgkoRZWaxBHDFD6BRFsCQJKVb4iWibNm9DVSzo8jjnyx10jKEMfQICYMtZJab4CpDzmZXALE0VqfYmsl2b2z6zA536zmhj3MbQfvXxqOrlO8RzQiYLdFv-lIZbHe3VqkD5N2AuBL25TgOETuGrMPmYt7Yhvu1G4lry067nFXe06m0NOi7YGC9HehoblQsTDd1-4IPkuJfZGdR6OljCFD_F9mIqaJ-dIPMlULs8kg.m1NOD5DB1dn9oAtRj6kjXh5UkWTCRb94gNjUZ8Owz8Y&dib_tag=se&keywords=betafpv&qid=1744202445&sprefix=beta%2Caps%2C676&sr=8-11) == rating == 4.1
197
-
198
-
199
-SpeedyBee Frame
200
-
201
-- [Speedy Bee Bee35 3.5inch Cinewhoop FPV Drone Frame- Pro Version 4S 6S Frame Kit Compatible with DJI O3 Air Unit FPV VTX,Different Flight Controller Stack](https://www.amazon.com/3-5inch-Cinewhoop-Compatible-Different-Controller/dp/B086X5M24H/ref=sr_1_1?dib=eyJ2IjoiMSJ9.flOlB5a6W8Z4mxOLR-K_BDlWDFVnqHJ69LrRLHzsG3Vt1_EuF1CQCJw-erVA1bWn.aK6G-MxmMYmSkACuczQuR4yI0PIn2BzHbY4-bbiXRLo&dib_tag=se&keywords=bee35&qid=1744202041&sr=8-1)
202
-
203
-
204
-
205
-
206
-## ref
207
-
208
-- [[FPV]]
... ...
\ No newline at end of file
app-dat/RC-dat/quadcopter-dat/FPV-dat/FPV-simulation-dat/FPV-simulation-dat.md
... ...
@@ -1,88 +0,0 @@
1
-
2
-# FPV-simulation-dat
3
-
4
-## Popular FPV Simulators for PC
5
-
6
-| Simulator | Highlights | Price |
7
-| ------------- | ---------------------------------------------------------- | ----- |
8
-| Liftoff | Realistic physics, good for racing & freestyle | ~$20 |
9
-| VelociDrone | Excellent feel, popular for competition practice | ~$20 |
10
-| DRL Simulator | Based on the Drone Racing League, includes tracks & events | ~$10 |
11
-| Uncrashed | Stunning graphics, smooth flying | ~$15 |
12
-| FPV Freerider | Lightweight, good for low-end PCs | ~$5 |
13
-
14
-
15
-
16
-## Compatible Controllers
17
-
18
-- RadioMaster TX16S
19
-- FrSky Taranis QX7 / X9D
20
-- BetaFPV LiteRadio
21
-- DJI FPV controller (works with some sims)
22
-- Most transmitters that support USB or simulator mode
23
-
24
-
25
-
26
-## ๐Ÿ†“ Free or Open Source FPV Simulators for PC
27
-
28
-### ๐Ÿ›  FPV.Skydive (from ORQA)
29
-- โœ… Free on Steam
30
-- ๐Ÿง  Beginner-friendly with training modules
31
-- ๐ŸŽฎ Supports many controllers (via USB)
32
-- ๐Ÿ“ฆ Good for freestyle and basic racing
33
-- โ— Not open-source, but completely free
34
-- ๐Ÿ”— [Steam Link](https://store.steampowered.com/app/1645840/FPV_Skydive/)
35
-
36
-https://store.steampowered.com/app/1278060/FPV_SkyDive__FPV_Drone_Simulator/
37
-
38
----
39
-
40
-### ๐Ÿ›  RotorHazard Simulator
41
-- โš™๏ธ Community-developed simulator inspired by RotorHazard timing system
42
-- ๐Ÿ–ฅ Lightweight, browser-based or local
43
-- ๐Ÿ’ป Not super polished, but interesting for DIY folks
44
-- ๐ŸŒ Open-source (GitHub available)
45
-- ๐Ÿ”— [GitHub Repository](https://github.com/RotorHazard)
46
-
47
----
48
-
49
-### ๐Ÿ›  OpenFPV Simulator (dead?)
50
-- ๐ŸŒ Browser-based prototype sim
51
-- ๐Ÿ‘ถ Very basic physics and controls
52
-- ๐Ÿง‘โ€๐Ÿ’ป Open-source, you can fork or contribute
53
-- ๐Ÿ”ง Good for devs/hackers/experimenters
54
-- ๐Ÿ”— [GitHub Link](https://github.com/OpenFPV/openfpv-simulator)
55
-
56
----
57
-
58
-### ๐Ÿ›  Multirotor Sim (Unity-based) (dead?)
59
-- ๐Ÿงช Community project with editable Unity source
60
-- ๐ŸŽฎ Supports USB controllers
61
-- ๐Ÿ”ง Needs a bit of setup, but can be modified freely
62
-- ๐Ÿ”— [GitHub Link](https://github.com/ArduPilot/multirotor_sim)
63
-
64
----
65
-
66
-### ๐Ÿ“Œ Honorable Mentions (Free Trials or Demos)
67
-
68
-#### **FPV Freerider (Demo version)**
69
-- Limited map, but physics work well
70
-- ๐Ÿ”— [freeriderfpv.com](https://fpv-freerider.itch.io/fpv-freerider-recharged-demo)
71
-
72
----
73
-
74
-### ๐Ÿงญ Recommendation
75
-
76
-- **If you're new and want a polished free experience:**
77
- โžก๏ธ Try **[FPV.Skydive](https://store.steampowered.com/app/1645840/FPV_Skydive/)**
78
-
79
-- **If you're into tinkering or want to code your own sim:**
80
- โžก๏ธ Check out **OpenFPV** or **Multirotor Sim** on GitHub
81
-
82
-
83
-
84
-
85
-## ref
86
-
87
-
88
-- [[FPV-dat]]
... ...
\ No newline at end of file
app-dat/RC-dat/quadcopter-dat/FPV-dat/Goggles-dat/Goggles-dat.md
... ...
@@ -1,7 +0,0 @@
1
-
2
-# Goggles-dat
3
-
4
-[DJI Goggles 3, FPV Goggles with Stunning Micro-OLED Screens, Immersive Flight Experience, O4 HD Video Transmission, Adjustable Diopters, Wireless Streaming, Drone Goggles with Real View PiP](https://www.amazon.com/DJI-Micro-OLED-Experience-Transmission-Adjustable/dp/B0CS6L6D6J/ref=sr_1_17?dib=eyJ2IjoiMSJ9.85xi15ftM4OWw33_siXrDRGNOKuf3CgQct4cVlBOFqI1ZAAZD4Gz_S4U_wqEKgjxWcsGOZPlWkdGdEASaTJntO1H_pFgsXO61wuEgveKAmLTLHR-cjsa5SOhaKUXU0vVHE7oijzqLoIPsx-H55gYNPr_F8aMX98OqPfwk64Ma12qrNSidLDVokmdegWL621v3U-5PDEaMNTjdACgOTHEBxAGhtxksaYVouWcSkxMCTI-jr0FkvxyQeZmO6S-UjXJcEcChxa4sPMjVyiK7070XhJlH2EnXqgnv0KScl80Jqc.AzbbGJAa2ls6bQWRCrudB-jGcm6vKV7pRItsIyBMpdA&dib_tag=se&keywords=FPV&qid=1744201259&sr=8-17)
5
-
6
-
7
-[Fat Shark Recon Echo FPV Goggles](https://www.amazon.com/Fat-Shark-Recon-Echo-Goggles/dp/B0CTB8VLYQ/ref=sr_1_41?dib=eyJ2IjoiMSJ9.85xi15ftM4OWw33_siXrDRGNOKuf3CgQct4cVlBOFqI1ZAAZD4Gz_S4U_wqEKgjxWcsGOZPlWkdGdEASaTJntO1H_pFgsXO61wuEgveKAmLTLHR-cjsa5SOhaKUXU0vVHE7oijzqLoIPsx-H55gYNPr_F8aMX98OqPfwk64Ma12qrNSidLDVokmdegWL621v3U-5PDEaMNTjdACgOTHEBxAGhtxksaYVouWcSkxMCTI-jr0FkvxyQeZmO6S-UjXJcEcChxa4sPMjVyiK7070XhJlH2EnXqgnv0KScl80Jqc.AzbbGJAa2ls6bQWRCrudB-jGcm6vKV7pRItsIyBMpdA&dib_tag=se&keywords=FPV&qid=1744201259&sr=8-41)
... ...
\ No newline at end of file
app-dat/RC-dat/quadcopter-dat/quadcopter-dat.md
... ...
@@ -1,65 +0,0 @@
1
-
2
-# quadcopter-dat
3
-
4
-
5
-## opensource
6
-
7
-### cleanfight
8
-
9
-https://github.com/cleanflight/cleanflight
10
-
11
-https://github.com/cleanflight/cleanflight/tree/master/docs
12
-
13
-https://cleanflight.com/
14
-
15
-
16
-### Openpilot
17
-
18
-## Commerial
19
-
20
-### CJMCU
21
-
22
-![](2025-01-29-17-12-32.png)
23
-
24
-- https://www.rcgroups.com/forums/showthread.php?2456739-Openpilot-port-to-CJMCU-stm32-quadcopter
25
-
26
-- https://oscarliang.com/build-fpv-micro-quadcopter-smallest-quad/
27
-
28
-#### new version from https://aeracoop.net/cjmcu2-open-source-brushed-quadcopter/
29
-
30
-https://github.com/Edragon/cjmcu2
31
-
32
-
33
-
34
-## BOM
35
-
36
-### receiver
37
-
38
-- [DT 2.4GHz Receivers](https://www.deltang.co.uk/)
39
-
40
-
41
-
42
-### props
43
-
44
-
45
-### motors
46
-
47
-
48
-### motor drive
49
-
50
-- [[mosfet-dat]]
51
-
52
-## forum
53
-
54
-- http://www.multiwii.com/forum
55
-- https://www.rcgroups.com/forums
56
-
57
-
58
-
59
-## hexquadcopter
60
-
61
-- http://www.multiwii.com/forum/viewtopic.php?f=12&t=4893&p=53317#p53317
62
-
63
-## ref
64
-
65
-- [[quadcopter]]
... ...
\ No newline at end of file
app-dat/RC-dat/rover-dat/2025-05-23-15-11-02.png
... ...
Binary files a/app-dat/RC-dat/rover-dat/2025-05-23-15-11-02.png and /dev/null differ
app-dat/RC-dat/rover-dat/rc-car-dat/2025-03-25-15-00-18.png
... ...
Binary files a/app-dat/RC-dat/rover-dat/rc-car-dat/2025-03-25-15-00-18.png and /dev/null differ
app-dat/RC-dat/rover-dat/rc-car-dat/2025-03-25-15-00-49.png
... ...
Binary files a/app-dat/RC-dat/rover-dat/rc-car-dat/2025-03-25-15-00-49.png and /dev/null differ
app-dat/RC-dat/rover-dat/rc-car-dat/2025-03-25-15-01-11.png
... ...
Binary files a/app-dat/RC-dat/rover-dat/rc-car-dat/2025-03-25-15-01-11.png and /dev/null differ
app-dat/RC-dat/rover-dat/rc-car-dat/2025-03-25-15-02-19.png
... ...
Binary files a/app-dat/RC-dat/rover-dat/rc-car-dat/2025-03-25-15-02-19.png and /dev/null differ
app-dat/RC-dat/rover-dat/rc-car-dat/2025-03-28-18-44-53.png
... ...
Binary files a/app-dat/RC-dat/rover-dat/rc-car-dat/2025-03-28-18-44-53.png and /dev/null differ
app-dat/RC-dat/rover-dat/rc-car-dat/RC-car-dat.md
... ...
@@ -1,49 +0,0 @@
1
-
2
-# RC-car-dat
3
-
4
-- [[video-RC-car-dat]]
5
-
6
-basic [[tech-dat]] - [[robot-dat]]
7
-
8
-
9
-
10
-## Tracked robot platform
11
-
12
-![](2025-03-25-15-02-19.png)
13
-
14
-![](2025-03-25-15-01-11.png)
15
-
16
-
17
-![](2025-03-25-15-00-49.png)
18
-
19
-![](2025-03-25-15-00-18.png)
20
-
21
-## tricycle / four-wheels platform
22
-
23
-![](2025-03-28-18-44-53.png)
24
-
25
-tricycle
26
-
27
-Four-wheel two-drive car
28
-
29
-Four-wheel drive car
30
-
31
-Omnidirectional four-wheel two-wheel drive car
32
-
33
-
34
-## other
35
-
36
-### robot tank with camera
37
-
38
-- https://github.com/YahboomTechnology/Raspberry-pi-G1-Tank
39
-
40
-
41
-## read
42
-
43
-- [Tear down and Learn a good-build $20 RC Toy Car](https://www.electrodragon.com/disassemble-and-learn-a-good-build-20-rc-toy-car/)
44
-
45
-## ref
46
-
47
-- [[motor-dat]]
48
-
49
-- [[RC-car]]
... ...
\ No newline at end of file
app-dat/RC-dat/rover-dat/rc-car-dat/rc-car-hack-dat/2025-05-12-18-37-13.png
... ...
Binary files a/app-dat/RC-dat/rover-dat/rc-car-dat/rc-car-hack-dat/2025-05-12-18-37-13.png and /dev/null differ
app-dat/RC-dat/rover-dat/rc-car-dat/rc-car-hack-dat/rc-car-hack-dat.md
... ...
@@ -1,44 +0,0 @@
1
-
2
-# rc-car-hack-dat
3
-
4
-
5
-## 1. battery Enlargement
6
-
7
-- [[lithium-battery-dat]] - [[battery-pack-dat]]
8
-
9
-
10
-## 2. RC Signal Extension
11
-
12
-- improve up to 10KM by [[FPV-dat]] system [[ELRS-dat]], or [[PPM-dat]] == [[Wfly-dat]]
13
-
14
-- [[antenna-dat]]
15
-
16
-- control system - try to hack by [[arduino-dat]]
17
-
18
-## 3. Imaging System
19
-
20
-- [[video-transmission-dat]] == pickup option == [[LTE-dat]]
21
-
22
-
23
-## 4. GNSS location system
24
-
25
-- [[location-dat]]
26
-
27
-
28
-## other fancy functions
29
-
30
-- [[WS2812-dat]]
31
-
32
-
33
-
34
-
35
-## Accessories
36
-
37
-- [[Velcro-dat]]
38
-
39
-
40
-## Get Inpsired
41
-
42
-The battery can be put in your top luggage rack
43
-
44
-![](2025-05-12-18-37-13.png)
app-dat/RC-dat/rover-dat/rc-car-dat/video-rc-car-dat/2025-03-25-14-43-46.png
... ...
Binary files a/app-dat/RC-dat/rover-dat/rc-car-dat/video-rc-car-dat/2025-03-25-14-43-46.png and /dev/null differ
app-dat/RC-dat/rover-dat/rc-car-dat/video-rc-car-dat/2025-03-25-14-48-15.png
... ...
Binary files a/app-dat/RC-dat/rover-dat/rc-car-dat/video-rc-car-dat/2025-03-25-14-48-15.png and /dev/null differ
app-dat/RC-dat/rover-dat/rc-car-dat/video-rc-car-dat/2025-03-25-14-48-28.png
... ...
Binary files a/app-dat/RC-dat/rover-dat/rc-car-dat/video-rc-car-dat/2025-03-25-14-48-28.png and /dev/null differ
app-dat/RC-dat/rover-dat/rc-car-dat/video-rc-car-dat/video-RC-car-dat.md
... ...
@@ -1,36 +0,0 @@
1
-
2
-# video-RC-car-dat
3
-
4
-
5
-[[tech-dat]] - [[Camera-dat]] - [[rc-car-dat]] - [[video-transmission-dat]] - [[robot-dat]]
6
-
7
-- [[rc-car-hack-dat]]
8
-
9
-## Demos
10
-
11
-### based on cable [[fiber-optic-dat]]
12
-
13
-#### demos 1
14
-
15
-up to 100 meters
16
-
17
-![](2025-03-25-14-43-46.png)
18
-
19
-![](2025-03-25-14-48-15.png)
20
-
21
-![](2025-03-25-14-48-28.png)
22
-
23
-
24
-#### demo video 2
25
-
26
-- https://t.me/electrodragon3/334
27
-
28
-### Wireless
29
-
30
-- [[video-transmission-dat]]
31
-
32
-## ref
33
-
34
-- [[video-RC-car]] - [[RC-car]] - [[video-transmission]]
35
-
36
-- [[camera]]
... ...
\ No newline at end of file
app-dat/RC-dat/rover-dat/rover-dat.md
... ...
@@ -1,44 +0,0 @@
1
-
2
-# rover-dat
3
-
4
-- [[ardupilot-dat]] - [[rc-dat]]
5
-
6
-https://ardupilot.org/rover/index.html
7
-
8
-- [[RC-car-dat]] - [[rover-dat]] - [[RC-car-hack-dat]]
9
-
10
-- [[rc-signal-dat]]
11
-
12
-- ARKV6X Flight Controller Overview
13
-- ARK FPV Flight Controller Overview == STM32H743IIK6 MCU
14
-- CUAV V5 Plus Overview == STM32F765
15
-
16
-
17
-
18
-## 3D printed
19
-
20
-- [[markus-rover-dat]]
21
-
22
-
23
-## 3D files
24
-
25
-![](2025-05-23-15-11-02.png)
26
-
27
-[differential drive robot](https://cad.onshape.com/documents/78baf3d450629341539223b8/w/67b1d15167c8efd1d8242192/e/0e64a58d61cf14a49375d9c6?renderMode=0&uiState=68301fdbbe87bf505c7cb858)
28
-
29
-[TT Motor 4WD Car Mecanum wheel](https://cad.onshape.com/documents/ffe6ad9ac868a2e0b125a547/w/06961ea3665cb10f47c1f6fe/e/c6b6790270216188fea6ddec?renderMode=0&uiState=6830205c37d051363fada807)
30
-
31
-[Another TT Motor 4WD Car Mecanum wheel](https://cad.onshape.com/documents/3fc9a68709b7b211c126b7b0/w/fd59e3cfbe0cf012d3264ef8/e/f35859a1e063a8642be26811?renderMode=0&uiState=68302088624d574aaab00cc0)
32
-
33
-
34
-## board
35
-
36
-- [[SDR1064-dat]]
37
-
38
-Parts - [[TT-motor-dat]] - [[mecanum-wheel-dat]]
39
-
40
-## ref
41
-
42
-- [[dc-motor-dat]]
43
-
44
-- [[rc-car]] - [[maker]]
... ...
\ No newline at end of file