8个版本
0.4.2 | 2024年4月28日 |
---|---|
0.4.1 | 2023年12月6日 |
0.4.0 | 2023年10月30日 |
0.3.2 | 2023年7月4日 |
0.1.0 | 2022年12月14日 |
#172 in 机器人学
255KB
6K SLoC
blackbox-log
这是Betaflight的& INAV的黑盒工具的Rust版本。请访问GitHub组织获取相关项目。或者,阅读文档以开始。
注意:
blackbox-log
尚未准备好投入生产使用 - 可以将其视为早期-中期测试版本。
为什么?
有两个官方解析器实现,每个都由Betaflight和INAV维护一个副本,那么为什么还需要另一个呢?
它们都不太适合构建其他软件
blackbox_decode
(BF, INAV) 在过去几年中错过了格式的一些变化,因此其输出不再完全正确。此外,它将所有内容解码并写入磁盘,因此你为应用程序可能不需要的数据付费。- 日志查看器的解析器 (BF, INAV) 不适合用于其他任何东西,并且与GUI紧密耦合。它是用JavaScript编写的,这限制了它可以合理嵌入的位置。
该项目旨在填补这一空白。一个舒适、更新且可在任何支持Rust或WebAssembly的地方使用的API。
贡献
欢迎所有贡献。测试和错误报告非常受欢迎。如果可能的话,请包括一个显示错误的日志文件。如果您有任何其他问题或想法,请随时开始讨论。
大多数开发任务使用 just
运行。在项目根目录下运行 just
可获得可用任务的列表。如果修改 types/
中的 yaml 文件,请确保提交 just codegen
的结果。
已设置 2 个包含所有必要开发工具的 devcontainer。 Default
将从头开始构建容器,而 Default (预构建)
将下载预构建容器,启动速度可能更快。
注意:建议至少 4 核心和 4GiB 的 RAM。
参考文献/现有技术
blackbox_decode
(《Betaflight》 Betaflight,《INAV》 INAV)- Blackbox 日志查看器(《Betaflight》 Betaflight,《INAV》 INAV)
- 《Betaflight》和《INAV》的源代码;主要在
src/main/blackbox/
- Blackbox 内部开发文档(《Betaflight》 Betaflight,《INAV》 INAV)
fc-blackbox
由 Ilya Epifanov 编写
非常感谢 Nicholas Sherlock 对其 原始日志实现 的贡献,以及 Cleanflight 项目(Betaflight 和 INAV 是从该项目中派生的)对它的集成(《Cleanflight》 https://github.com/cleanflight/cleanflight/pull/227)。
许可证
根据您的选择许可
- Apache 许可证第 2 版(《LICENSE-APACHE》或 https://apache.ac.cn/licenses/LICENSE-2.0)
- MIT 许可证(《LICENSE-MIT》或 http://opensource.org/licenses/MIT)
。
依赖关系
~6MB
~108K SLoC