inav-toolkit 2.15.1__tar.gz → 2.16.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (24) hide show
  1. {inav_toolkit-2.15.1 → inav_toolkit-2.16.0}/PKG-INFO +49 -39
  2. {inav_toolkit-2.15.1 → inav_toolkit-2.16.0}/README.md +48 -38
  3. {inav_toolkit-2.15.1 → inav_toolkit-2.16.0}/inav_toolkit.egg-info/PKG-INFO +49 -39
  4. {inav_toolkit-2.15.1 → inav_toolkit-2.16.0}/pyproject.toml +1 -1
  5. {inav_toolkit-2.15.1 → inav_toolkit-2.16.0}/LICENSE +0 -0
  6. {inav_toolkit-2.15.1 → inav_toolkit-2.16.0}/inav_toolkit/__init__.py +0 -0
  7. {inav_toolkit-2.15.1 → inav_toolkit-2.16.0}/inav_toolkit/autotune.py +0 -0
  8. {inav_toolkit-2.15.1 → inav_toolkit-2.16.0}/inav_toolkit/blackbox_analyzer.py +0 -0
  9. {inav_toolkit-2.15.1 → inav_toolkit-2.16.0}/inav_toolkit/flight_db.py +0 -0
  10. {inav_toolkit-2.15.1 → inav_toolkit-2.16.0}/inav_toolkit/i18n.py +0 -0
  11. {inav_toolkit-2.15.1 → inav_toolkit-2.16.0}/inav_toolkit/locales/en.json +0 -0
  12. {inav_toolkit-2.15.1 → inav_toolkit-2.16.0}/inav_toolkit/locales/es.json +0 -0
  13. {inav_toolkit-2.15.1 → inav_toolkit-2.16.0}/inav_toolkit/locales/pt_BR.json +0 -0
  14. {inav_toolkit-2.15.1 → inav_toolkit-2.16.0}/inav_toolkit/msp.py +0 -0
  15. {inav_toolkit-2.15.1 → inav_toolkit-2.16.0}/inav_toolkit/param_analyzer.py +0 -0
  16. {inav_toolkit-2.15.1 → inav_toolkit-2.16.0}/inav_toolkit/vtol_configurator.py +0 -0
  17. {inav_toolkit-2.15.1 → inav_toolkit-2.16.0}/inav_toolkit/wizard.py +0 -0
  18. {inav_toolkit-2.15.1 → inav_toolkit-2.16.0}/inav_toolkit.egg-info/SOURCES.txt +0 -0
  19. {inav_toolkit-2.15.1 → inav_toolkit-2.16.0}/inav_toolkit.egg-info/dependency_links.txt +0 -0
  20. {inav_toolkit-2.15.1 → inav_toolkit-2.16.0}/inav_toolkit.egg-info/entry_points.txt +0 -0
  21. {inav_toolkit-2.15.1 → inav_toolkit-2.16.0}/inav_toolkit.egg-info/requires.txt +0 -0
  22. {inav_toolkit-2.15.1 → inav_toolkit-2.16.0}/inav_toolkit.egg-info/top_level.txt +0 -0
  23. {inav_toolkit-2.15.1 → inav_toolkit-2.16.0}/setup.cfg +0 -0
  24. {inav_toolkit-2.15.1 → inav_toolkit-2.16.0}/tests/test_smoke.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: inav-toolkit
3
- Version: 2.15.1
3
+ Version: 2.16.0
4
4
  Summary: Blackbox analyzer, parameter checker, and tuning wizard for INAV flight controllers
5
5
  License: MIT
6
6
  Project-URL: Homepage, https://github.com/agoliveira/INAV-Toolkit
@@ -32,20 +32,29 @@ Dynamic: license-file
32
32
 
33
33
  # INAV Toolkit
34
34
 
35
- A Python toolkit for analyzing blackbox logs, validating configurations, and tuning INAV flight controllers. Plug in your FC via USB it pulls the config, downloads the blackbox, tells you exactly what to change, and gives you the CLI commands to paste.
35
+ A Python toolkit for analyzing blackbox logs, validating configurations, and tuning INAV flight controllers. Plug in your FC via USB - it pulls the config, downloads the blackbox, tells you exactly what to change, and gives you the CLI commands to paste.
36
36
 
37
37
  Built for the INAV long-range community. Tested on 7" to 15" multirotors with GPS navigation, INAV 9.0.x.
38
38
 
39
- ## Quick Start
40
-
41
- ### Install
39
+ ## Install / Update
42
40
 
43
41
  ```bash
44
- pip install numpy scipy pyserial --break-system-packages
42
+ git clone https://github.com/agoliveira/INAV-Toolkit.git
43
+ cd INAV-Toolkit
44
+ python3 -m venv .venv
45
+ source .venv/bin/activate
46
+ pip install -r requirements.txt
47
+ python3 -m inav_toolkit.blackbox_analyzer --device auto
45
48
  ```
46
49
 
50
+ Or on Debian/Ubuntu, system packages:
51
+ ```bash
52
+ sudo apt install python3-numpy python3-scipy python3-serial
53
+ ```
47
54
  Python 3.8+. `pyserial` only needed for direct FC connection.
48
55
 
56
+ > **Note:** If using a venv, activate it (`source .venv/bin/activate`) before running any commands below.
57
+
49
58
  ### Connect and Analyze
50
59
 
51
60
  ```bash
@@ -57,34 +66,34 @@ That's it. The tool will auto-detect your FC, pull the current config, download
57
66
  ### Output
58
67
 
59
68
  ```
60
- INAV Blackbox Analyzer v2.16.0
61
- Connected: NAZGUL 10 INAV 9.0.1
69
+ INAV Blackbox Analyzer v2.16.0
70
+ Connected: NAZGUL 10 - INAV 9.0.1
62
71
  Pulling configuration (diff all)... 89 settings
63
72
  Downloading 2236KB ... 204KB/s
64
- Found 3 flights analyzing best from latest config
73
+ Found 3 flights - analyzing best from latest config
65
74
 
66
75
  TUNE QUALITY: █████████████░░░░░░░ 65/100
67
76
  Noise:95 | PID:N/A | Motors:94
68
77
 
69
78
  CONFIG:
70
- Roll P= 32 I= 82 D= 32 (FC now: P35, I75, D28)
71
- Pitch P= 35 I= 90 D= 35 (FC now: P38, I82, D31)
79
+ Roll P= 32 I= 82 D= 32 (FC now: P->35, I->75, D->28)
80
+ Pitch P= 35 I= 90 D= 35 (FC now: P->38, I->82, D->31)
72
81
 
73
82
  NOISE SOURCES:
74
- 50Hz motor imbalance on Roll/Yaw [medium]
75
- 128Hz motor noise on Pitch/Yaw [low]
76
- 187437Hz (6 peaks) electrical on Pitch/Roll/Yaw [medium]
83
+ 50Hz motor imbalance on Roll/Yaw [medium]
84
+ 128Hz motor noise on Pitch/Yaw [low]
85
+ 187-437Hz (6 peaks) electrical on Pitch/Roll/Yaw [medium]
77
86
 
78
- DO THIS 2 changes:
79
- 1. Lower dynamic_gyro_notch_min_hz: 50 40
87
+ DO THIS - 2 changes:
88
+ 1. Lower dynamic_gyro_notch_min_hz: 50 -> 40
80
89
  2. Consider enabling RPM filter
81
90
 
82
- INAV CLI paste into Configurator CLI tab:
91
+ INAV CLI - paste into Configurator CLI tab:
83
92
  set dynamic_gyro_notch_min_hz = 40
84
93
  save
85
94
 
86
95
  CONFIG REVIEW:
87
- [CRITICAL] Critical beeper warnings disabled BAT_CRIT_LOW, RX_LOST
96
+ [CRITICAL] Critical beeper warnings disabled - BAT_CRIT_LOW, RX_LOST
88
97
  ```
89
98
 
90
99
  ## Tools
@@ -94,7 +103,7 @@ That's it. The tool will auto-detect your FC, pull the current config, download
94
103
  Decodes `.bbl` / `.bfl` blackbox logs natively in Python (no `blackbox_decode` needed) and produces actionable tuning recommendations.
95
104
 
96
105
  ```bash
97
- # Connect to FC pull config + download + analyze
106
+ # Connect to FC - pull config + download + analyze
98
107
  python3 -m inav_toolkit.blackbox_analyzer --device auto
99
108
 
100
109
  # Analyze an existing log file
@@ -114,12 +123,12 @@ python3 -m inav_toolkit.blackbox_analyzer flight.bbl --history
114
123
  ```
115
124
 
116
125
  **What it measures:**
117
- - PID step response overshoot %, tracking delay, settling time per axis
118
- - Noise spectrum identifies peak frequencies, classifies sources (propwash, electrical, motor imbalance), groups and ranks by severity
119
- - Hover oscillation RMS and peak-to-peak gyro during centered stick
120
- - Motor balance average load and saturation per motor
121
- - Filter phase lag total delay through the gyro/D-term filter chain
122
- - Config mismatch detects when the FC config has changed since the flight being analyzed
126
+ - PID step response - overshoot %, tracking delay, settling time per axis
127
+ - Noise spectrum - identifies peak frequencies, classifies sources (propwash, electrical, motor imbalance), groups and ranks by severity
128
+ - Hover oscillation - RMS and peak-to-peak gyro during centered stick
129
+ - Motor balance - average load and saturation per motor
130
+ - Filter phase lag - total delay through the gyro/D-term filter chain
131
+ - Config mismatch - detects when the FC config has changed since the flight being analyzed
123
132
 
124
133
  **What it outputs:**
125
134
  - Terminal report with score, noise sources, specific CLI commands to paste
@@ -185,27 +194,28 @@ Handles MSP v2 framing, pipelined dataflash download (4-deep), CLI command/batch
185
194
  ```
186
195
  1. NEW BUILD
187
196
  python3 -m inav_toolkit.param_analyzer --setup 10 --voltage 6S
188
- Conservative starting PIDs and filter settings
189
- Paste CLI commands into INAV Configurator
197
+ -> Conservative starting PIDs and filter settings
198
+ -> Paste CLI commands into INAV Configurator
190
199
 
191
200
  2. SAFETY CHECK
192
201
  python3 -m inav_toolkit.param_analyzer my_diff.txt --frame 10
193
- Catches disabled beepers, failsafe issues, battery limits
194
- Fix before flying
202
+ -> Catches disabled beepers, failsafe issues, battery limits
203
+ -> Fix before flying
195
204
 
196
205
  3. FLY
197
- Enable blackbox logging (GYRO_RAW, MOTORS, RC_COMMAND)
198
- Hover for 10s, then do deliberate roll/pitch/yaw sweeps
199
- The analyzer needs stick inputs to measure PID response
206
+ -> Enable blackbox logging (GYRO_RAW, MOTORS, RC_COMMAND)
207
+ -> Hover for 10s, then do deliberate roll/pitch/yaw sweeps
208
+ -> The analyzer needs stick inputs to measure PID response
200
209
 
201
210
  4. ANALYZE
202
211
  python3 -m inav_toolkit.blackbox_analyzer --device auto
203
- Downloads log, pulls current config, runs full analysis
204
- Shows exactly what to change with CLI commands
212
+ -> Downloads log, pulls current config, runs full analysis
213
+ -> Shows exactly what to change with CLI commands
205
214
 
206
- 5. APPLY AND REPEAT
207
- Paste the CLI commands, erase flash, fly again
208
- Flight database tracks your progression across sessions
215
+ 5. APPLY + REPEAT
216
+ -> Paste CLI commands, fly again
217
+ -> Tool auto-detects which flights use the new config
218
+ -> Flight database tracks your progression across sessions
209
219
  ```
210
220
 
211
221
  ## Frame Size Profiles
@@ -246,7 +256,7 @@ INAV-Toolkit/
246
256
 
247
257
  ## INAV Version Support
248
258
 
249
- Developed and tested against **INAV 9.0.x**. The blackbox binary decoder handles the Cleanflight/INAV encoding format natively in Python no external `blackbox_decode` tool needed. Parameter names are INAV-specific; Betaflight is not currently supported.
259
+ Developed and tested against **INAV 9.0.x**. The blackbox binary decoder handles the Cleanflight/INAV encoding format natively in Python - no external `blackbox_decode` tool needed. Parameter names are INAV-specific; Betaflight is not currently supported.
250
260
 
251
261
  ## Contributing
252
262
 
@@ -259,6 +269,6 @@ MIT License. See [LICENSE](LICENSE).
259
269
  ## Acknowledgments
260
270
 
261
271
  - The INAV development team and community
262
- - QuadMeUp (Paweł Spychalski) for filter and RPM analysis research
272
+ - QuadMeUp (Pawel Spychalski) for filter and RPM analysis research
263
273
  - The INAV Fixed Wing Group for modes documentation
264
274
  - UAV Tech for the spark that gave me the idea to create this
@@ -1,19 +1,28 @@
1
1
  # INAV Toolkit
2
2
 
3
- A Python toolkit for analyzing blackbox logs, validating configurations, and tuning INAV flight controllers. Plug in your FC via USB it pulls the config, downloads the blackbox, tells you exactly what to change, and gives you the CLI commands to paste.
3
+ A Python toolkit for analyzing blackbox logs, validating configurations, and tuning INAV flight controllers. Plug in your FC via USB - it pulls the config, downloads the blackbox, tells you exactly what to change, and gives you the CLI commands to paste.
4
4
 
5
5
  Built for the INAV long-range community. Tested on 7" to 15" multirotors with GPS navigation, INAV 9.0.x.
6
6
 
7
- ## Quick Start
8
-
9
- ### Install
7
+ ## Install / Update
10
8
 
11
9
  ```bash
12
- pip install numpy scipy pyserial --break-system-packages
10
+ git clone https://github.com/agoliveira/INAV-Toolkit.git
11
+ cd INAV-Toolkit
12
+ python3 -m venv .venv
13
+ source .venv/bin/activate
14
+ pip install -r requirements.txt
15
+ python3 -m inav_toolkit.blackbox_analyzer --device auto
13
16
  ```
14
17
 
18
+ Or on Debian/Ubuntu, system packages:
19
+ ```bash
20
+ sudo apt install python3-numpy python3-scipy python3-serial
21
+ ```
15
22
  Python 3.8+. `pyserial` only needed for direct FC connection.
16
23
 
24
+ > **Note:** If using a venv, activate it (`source .venv/bin/activate`) before running any commands below.
25
+
17
26
  ### Connect and Analyze
18
27
 
19
28
  ```bash
@@ -25,34 +34,34 @@ That's it. The tool will auto-detect your FC, pull the current config, download
25
34
  ### Output
26
35
 
27
36
  ```
28
- INAV Blackbox Analyzer v2.16.0
29
- Connected: NAZGUL 10 INAV 9.0.1
37
+ INAV Blackbox Analyzer v2.16.0
38
+ Connected: NAZGUL 10 - INAV 9.0.1
30
39
  Pulling configuration (diff all)... 89 settings
31
40
  Downloading 2236KB ... 204KB/s
32
- Found 3 flights analyzing best from latest config
41
+ Found 3 flights - analyzing best from latest config
33
42
 
34
43
  TUNE QUALITY: █████████████░░░░░░░ 65/100
35
44
  Noise:95 | PID:N/A | Motors:94
36
45
 
37
46
  CONFIG:
38
- Roll P= 32 I= 82 D= 32 (FC now: P35, I75, D28)
39
- Pitch P= 35 I= 90 D= 35 (FC now: P38, I82, D31)
47
+ Roll P= 32 I= 82 D= 32 (FC now: P->35, I->75, D->28)
48
+ Pitch P= 35 I= 90 D= 35 (FC now: P->38, I->82, D->31)
40
49
 
41
50
  NOISE SOURCES:
42
- 50Hz motor imbalance on Roll/Yaw [medium]
43
- 128Hz motor noise on Pitch/Yaw [low]
44
- 187437Hz (6 peaks) electrical on Pitch/Roll/Yaw [medium]
51
+ 50Hz motor imbalance on Roll/Yaw [medium]
52
+ 128Hz motor noise on Pitch/Yaw [low]
53
+ 187-437Hz (6 peaks) electrical on Pitch/Roll/Yaw [medium]
45
54
 
46
- DO THIS 2 changes:
47
- 1. Lower dynamic_gyro_notch_min_hz: 50 40
55
+ DO THIS - 2 changes:
56
+ 1. Lower dynamic_gyro_notch_min_hz: 50 -> 40
48
57
  2. Consider enabling RPM filter
49
58
 
50
- INAV CLI paste into Configurator CLI tab:
59
+ INAV CLI - paste into Configurator CLI tab:
51
60
  set dynamic_gyro_notch_min_hz = 40
52
61
  save
53
62
 
54
63
  CONFIG REVIEW:
55
- [CRITICAL] Critical beeper warnings disabled BAT_CRIT_LOW, RX_LOST
64
+ [CRITICAL] Critical beeper warnings disabled - BAT_CRIT_LOW, RX_LOST
56
65
  ```
57
66
 
58
67
  ## Tools
@@ -62,7 +71,7 @@ That's it. The tool will auto-detect your FC, pull the current config, download
62
71
  Decodes `.bbl` / `.bfl` blackbox logs natively in Python (no `blackbox_decode` needed) and produces actionable tuning recommendations.
63
72
 
64
73
  ```bash
65
- # Connect to FC pull config + download + analyze
74
+ # Connect to FC - pull config + download + analyze
66
75
  python3 -m inav_toolkit.blackbox_analyzer --device auto
67
76
 
68
77
  # Analyze an existing log file
@@ -82,12 +91,12 @@ python3 -m inav_toolkit.blackbox_analyzer flight.bbl --history
82
91
  ```
83
92
 
84
93
  **What it measures:**
85
- - PID step response overshoot %, tracking delay, settling time per axis
86
- - Noise spectrum identifies peak frequencies, classifies sources (propwash, electrical, motor imbalance), groups and ranks by severity
87
- - Hover oscillation RMS and peak-to-peak gyro during centered stick
88
- - Motor balance average load and saturation per motor
89
- - Filter phase lag total delay through the gyro/D-term filter chain
90
- - Config mismatch detects when the FC config has changed since the flight being analyzed
94
+ - PID step response - overshoot %, tracking delay, settling time per axis
95
+ - Noise spectrum - identifies peak frequencies, classifies sources (propwash, electrical, motor imbalance), groups and ranks by severity
96
+ - Hover oscillation - RMS and peak-to-peak gyro during centered stick
97
+ - Motor balance - average load and saturation per motor
98
+ - Filter phase lag - total delay through the gyro/D-term filter chain
99
+ - Config mismatch - detects when the FC config has changed since the flight being analyzed
91
100
 
92
101
  **What it outputs:**
93
102
  - Terminal report with score, noise sources, specific CLI commands to paste
@@ -153,27 +162,28 @@ Handles MSP v2 framing, pipelined dataflash download (4-deep), CLI command/batch
153
162
  ```
154
163
  1. NEW BUILD
155
164
  python3 -m inav_toolkit.param_analyzer --setup 10 --voltage 6S
156
- Conservative starting PIDs and filter settings
157
- Paste CLI commands into INAV Configurator
165
+ -> Conservative starting PIDs and filter settings
166
+ -> Paste CLI commands into INAV Configurator
158
167
 
159
168
  2. SAFETY CHECK
160
169
  python3 -m inav_toolkit.param_analyzer my_diff.txt --frame 10
161
- Catches disabled beepers, failsafe issues, battery limits
162
- Fix before flying
170
+ -> Catches disabled beepers, failsafe issues, battery limits
171
+ -> Fix before flying
163
172
 
164
173
  3. FLY
165
- Enable blackbox logging (GYRO_RAW, MOTORS, RC_COMMAND)
166
- Hover for 10s, then do deliberate roll/pitch/yaw sweeps
167
- The analyzer needs stick inputs to measure PID response
174
+ -> Enable blackbox logging (GYRO_RAW, MOTORS, RC_COMMAND)
175
+ -> Hover for 10s, then do deliberate roll/pitch/yaw sweeps
176
+ -> The analyzer needs stick inputs to measure PID response
168
177
 
169
178
  4. ANALYZE
170
179
  python3 -m inav_toolkit.blackbox_analyzer --device auto
171
- Downloads log, pulls current config, runs full analysis
172
- Shows exactly what to change with CLI commands
180
+ -> Downloads log, pulls current config, runs full analysis
181
+ -> Shows exactly what to change with CLI commands
173
182
 
174
- 5. APPLY AND REPEAT
175
- Paste the CLI commands, erase flash, fly again
176
- Flight database tracks your progression across sessions
183
+ 5. APPLY + REPEAT
184
+ -> Paste CLI commands, fly again
185
+ -> Tool auto-detects which flights use the new config
186
+ -> Flight database tracks your progression across sessions
177
187
  ```
178
188
 
179
189
  ## Frame Size Profiles
@@ -214,7 +224,7 @@ INAV-Toolkit/
214
224
 
215
225
  ## INAV Version Support
216
226
 
217
- Developed and tested against **INAV 9.0.x**. The blackbox binary decoder handles the Cleanflight/INAV encoding format natively in Python no external `blackbox_decode` tool needed. Parameter names are INAV-specific; Betaflight is not currently supported.
227
+ Developed and tested against **INAV 9.0.x**. The blackbox binary decoder handles the Cleanflight/INAV encoding format natively in Python - no external `blackbox_decode` tool needed. Parameter names are INAV-specific; Betaflight is not currently supported.
218
228
 
219
229
  ## Contributing
220
230
 
@@ -227,6 +237,6 @@ MIT License. See [LICENSE](LICENSE).
227
237
  ## Acknowledgments
228
238
 
229
239
  - The INAV development team and community
230
- - QuadMeUp (Paweł Spychalski) for filter and RPM analysis research
240
+ - QuadMeUp (Pawel Spychalski) for filter and RPM analysis research
231
241
  - The INAV Fixed Wing Group for modes documentation
232
242
  - UAV Tech for the spark that gave me the idea to create this
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: inav-toolkit
3
- Version: 2.15.1
3
+ Version: 2.16.0
4
4
  Summary: Blackbox analyzer, parameter checker, and tuning wizard for INAV flight controllers
5
5
  License: MIT
6
6
  Project-URL: Homepage, https://github.com/agoliveira/INAV-Toolkit
@@ -32,20 +32,29 @@ Dynamic: license-file
32
32
 
33
33
  # INAV Toolkit
34
34
 
35
- A Python toolkit for analyzing blackbox logs, validating configurations, and tuning INAV flight controllers. Plug in your FC via USB it pulls the config, downloads the blackbox, tells you exactly what to change, and gives you the CLI commands to paste.
35
+ A Python toolkit for analyzing blackbox logs, validating configurations, and tuning INAV flight controllers. Plug in your FC via USB - it pulls the config, downloads the blackbox, tells you exactly what to change, and gives you the CLI commands to paste.
36
36
 
37
37
  Built for the INAV long-range community. Tested on 7" to 15" multirotors with GPS navigation, INAV 9.0.x.
38
38
 
39
- ## Quick Start
40
-
41
- ### Install
39
+ ## Install / Update
42
40
 
43
41
  ```bash
44
- pip install numpy scipy pyserial --break-system-packages
42
+ git clone https://github.com/agoliveira/INAV-Toolkit.git
43
+ cd INAV-Toolkit
44
+ python3 -m venv .venv
45
+ source .venv/bin/activate
46
+ pip install -r requirements.txt
47
+ python3 -m inav_toolkit.blackbox_analyzer --device auto
45
48
  ```
46
49
 
50
+ Or on Debian/Ubuntu, system packages:
51
+ ```bash
52
+ sudo apt install python3-numpy python3-scipy python3-serial
53
+ ```
47
54
  Python 3.8+. `pyserial` only needed for direct FC connection.
48
55
 
56
+ > **Note:** If using a venv, activate it (`source .venv/bin/activate`) before running any commands below.
57
+
49
58
  ### Connect and Analyze
50
59
 
51
60
  ```bash
@@ -57,34 +66,34 @@ That's it. The tool will auto-detect your FC, pull the current config, download
57
66
  ### Output
58
67
 
59
68
  ```
60
- INAV Blackbox Analyzer v2.16.0
61
- Connected: NAZGUL 10 INAV 9.0.1
69
+ INAV Blackbox Analyzer v2.16.0
70
+ Connected: NAZGUL 10 - INAV 9.0.1
62
71
  Pulling configuration (diff all)... 89 settings
63
72
  Downloading 2236KB ... 204KB/s
64
- Found 3 flights analyzing best from latest config
73
+ Found 3 flights - analyzing best from latest config
65
74
 
66
75
  TUNE QUALITY: █████████████░░░░░░░ 65/100
67
76
  Noise:95 | PID:N/A | Motors:94
68
77
 
69
78
  CONFIG:
70
- Roll P= 32 I= 82 D= 32 (FC now: P35, I75, D28)
71
- Pitch P= 35 I= 90 D= 35 (FC now: P38, I82, D31)
79
+ Roll P= 32 I= 82 D= 32 (FC now: P->35, I->75, D->28)
80
+ Pitch P= 35 I= 90 D= 35 (FC now: P->38, I->82, D->31)
72
81
 
73
82
  NOISE SOURCES:
74
- 50Hz motor imbalance on Roll/Yaw [medium]
75
- 128Hz motor noise on Pitch/Yaw [low]
76
- 187437Hz (6 peaks) electrical on Pitch/Roll/Yaw [medium]
83
+ 50Hz motor imbalance on Roll/Yaw [medium]
84
+ 128Hz motor noise on Pitch/Yaw [low]
85
+ 187-437Hz (6 peaks) electrical on Pitch/Roll/Yaw [medium]
77
86
 
78
- DO THIS 2 changes:
79
- 1. Lower dynamic_gyro_notch_min_hz: 50 40
87
+ DO THIS - 2 changes:
88
+ 1. Lower dynamic_gyro_notch_min_hz: 50 -> 40
80
89
  2. Consider enabling RPM filter
81
90
 
82
- INAV CLI paste into Configurator CLI tab:
91
+ INAV CLI - paste into Configurator CLI tab:
83
92
  set dynamic_gyro_notch_min_hz = 40
84
93
  save
85
94
 
86
95
  CONFIG REVIEW:
87
- [CRITICAL] Critical beeper warnings disabled BAT_CRIT_LOW, RX_LOST
96
+ [CRITICAL] Critical beeper warnings disabled - BAT_CRIT_LOW, RX_LOST
88
97
  ```
89
98
 
90
99
  ## Tools
@@ -94,7 +103,7 @@ That's it. The tool will auto-detect your FC, pull the current config, download
94
103
  Decodes `.bbl` / `.bfl` blackbox logs natively in Python (no `blackbox_decode` needed) and produces actionable tuning recommendations.
95
104
 
96
105
  ```bash
97
- # Connect to FC pull config + download + analyze
106
+ # Connect to FC - pull config + download + analyze
98
107
  python3 -m inav_toolkit.blackbox_analyzer --device auto
99
108
 
100
109
  # Analyze an existing log file
@@ -114,12 +123,12 @@ python3 -m inav_toolkit.blackbox_analyzer flight.bbl --history
114
123
  ```
115
124
 
116
125
  **What it measures:**
117
- - PID step response overshoot %, tracking delay, settling time per axis
118
- - Noise spectrum identifies peak frequencies, classifies sources (propwash, electrical, motor imbalance), groups and ranks by severity
119
- - Hover oscillation RMS and peak-to-peak gyro during centered stick
120
- - Motor balance average load and saturation per motor
121
- - Filter phase lag total delay through the gyro/D-term filter chain
122
- - Config mismatch detects when the FC config has changed since the flight being analyzed
126
+ - PID step response - overshoot %, tracking delay, settling time per axis
127
+ - Noise spectrum - identifies peak frequencies, classifies sources (propwash, electrical, motor imbalance), groups and ranks by severity
128
+ - Hover oscillation - RMS and peak-to-peak gyro during centered stick
129
+ - Motor balance - average load and saturation per motor
130
+ - Filter phase lag - total delay through the gyro/D-term filter chain
131
+ - Config mismatch - detects when the FC config has changed since the flight being analyzed
123
132
 
124
133
  **What it outputs:**
125
134
  - Terminal report with score, noise sources, specific CLI commands to paste
@@ -185,27 +194,28 @@ Handles MSP v2 framing, pipelined dataflash download (4-deep), CLI command/batch
185
194
  ```
186
195
  1. NEW BUILD
187
196
  python3 -m inav_toolkit.param_analyzer --setup 10 --voltage 6S
188
- Conservative starting PIDs and filter settings
189
- Paste CLI commands into INAV Configurator
197
+ -> Conservative starting PIDs and filter settings
198
+ -> Paste CLI commands into INAV Configurator
190
199
 
191
200
  2. SAFETY CHECK
192
201
  python3 -m inav_toolkit.param_analyzer my_diff.txt --frame 10
193
- Catches disabled beepers, failsafe issues, battery limits
194
- Fix before flying
202
+ -> Catches disabled beepers, failsafe issues, battery limits
203
+ -> Fix before flying
195
204
 
196
205
  3. FLY
197
- Enable blackbox logging (GYRO_RAW, MOTORS, RC_COMMAND)
198
- Hover for 10s, then do deliberate roll/pitch/yaw sweeps
199
- The analyzer needs stick inputs to measure PID response
206
+ -> Enable blackbox logging (GYRO_RAW, MOTORS, RC_COMMAND)
207
+ -> Hover for 10s, then do deliberate roll/pitch/yaw sweeps
208
+ -> The analyzer needs stick inputs to measure PID response
200
209
 
201
210
  4. ANALYZE
202
211
  python3 -m inav_toolkit.blackbox_analyzer --device auto
203
- Downloads log, pulls current config, runs full analysis
204
- Shows exactly what to change with CLI commands
212
+ -> Downloads log, pulls current config, runs full analysis
213
+ -> Shows exactly what to change with CLI commands
205
214
 
206
- 5. APPLY AND REPEAT
207
- Paste the CLI commands, erase flash, fly again
208
- Flight database tracks your progression across sessions
215
+ 5. APPLY + REPEAT
216
+ -> Paste CLI commands, fly again
217
+ -> Tool auto-detects which flights use the new config
218
+ -> Flight database tracks your progression across sessions
209
219
  ```
210
220
 
211
221
  ## Frame Size Profiles
@@ -246,7 +256,7 @@ INAV-Toolkit/
246
256
 
247
257
  ## INAV Version Support
248
258
 
249
- Developed and tested against **INAV 9.0.x**. The blackbox binary decoder handles the Cleanflight/INAV encoding format natively in Python no external `blackbox_decode` tool needed. Parameter names are INAV-specific; Betaflight is not currently supported.
259
+ Developed and tested against **INAV 9.0.x**. The blackbox binary decoder handles the Cleanflight/INAV encoding format natively in Python - no external `blackbox_decode` tool needed. Parameter names are INAV-specific; Betaflight is not currently supported.
250
260
 
251
261
  ## Contributing
252
262
 
@@ -259,6 +269,6 @@ MIT License. See [LICENSE](LICENSE).
259
269
  ## Acknowledgments
260
270
 
261
271
  - The INAV development team and community
262
- - QuadMeUp (Paweł Spychalski) for filter and RPM analysis research
272
+ - QuadMeUp (Pawel Spychalski) for filter and RPM analysis research
263
273
  - The INAV Fixed Wing Group for modes documentation
264
274
  - UAV Tech for the spark that gave me the idea to create this
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "inav-toolkit"
7
- version = "2.15.1"
7
+ version = "2.16.0"
8
8
  description = "Blackbox analyzer, parameter checker, and tuning wizard for INAV flight controllers"
9
9
  readme = "README.md"
10
10
  license = {text = "MIT"}
File without changes
File without changes