Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Rough Notes

Crossfire Communication Protocol

  • Operates on the 900MHz band frequency

  • Allows for better signal penetration through objects

  • Reduces variable latency between CRSF and OpenTx modules

  • Uses openTx

Single wire half duplex communication

Master sends 1 frame every 4ms, slave replies between 2 frames from the master

420000 baud

Not inverted

Big endian

BetaFlight:

  • Has a struct that contains data about the connection status and strength such as RSSI

    • One for uplink RSSI

    • One for downlink RSSI

23.02.14 Note: Formal Doc (Currently just template, will be updated soon)

Principle Engineer

Hailey Doleweerd

Forced to Review

Christopher Chung Anthony Luo

Dragged Along

Uplifted

Objective

Add SD Card read/write Crossfire communication capability to LOS

Due date

27 Feb

Key outcomes

Design and implement an object-oritented structure to log arbitrary messages to a SPI-connect SD carda driver that utilizes Crossfire to replace ppm between RC Link and the Flight Controller.

Status

Status
colourGreen
titleDESIGN

...

\uD83E\uDD14 Problem Statement

  • Stanley TangHas written an SD card driver for communicating with an arbitrary SD card over SPI. This driver now needs to be ‘passed up’ the abstraction layer to an abstract interface with which ZP can call into itDesign and implement a driver that utilizes Crossfire to replace ppm between RC Link and the Flight Controller.

🎯 Scope

SD Card Non-Volitile storage via SPISD Card Non-Volitile storage via SDMMC

Current Must Haves:

Future Expansion:

Not in scope:

Tasks Break Down:

\uD83D\uDDD3 Timeline

Estimated timeline is ~1 month, as a conservative guess. This is Darwin Clark 's first project, so there are many unknowns contingent on how long it takes him to grasp topics and organizational structuresThis will be determined in a future microarch revision, once the general architecture of the driver is further complete.

Roadmap Planner
maplinks
timelinetrue
source%7B%22title%22%3A%22Roadmap%20Planner%22%2C%22timeline%22%3A%7B%22startDate%22%3A%222023-01-30%2000%3A00%3A00%22%2C%22endDate%22%3A%222023-02-28%2000%3A00%3A00%22%2C%22displayOption%22%3A%22WEEK%22%7D%2C%22lanes%22%3A%5B%7B%22title%22%3A%22Design%22%2C%22color%22%3A%7B%22lane%22%3A%22%238eb021%22%2C%22bar%22%3A%22%23aac459%22%2C%22text%22%3A%22%23ffffff%22%2C%22count%22%3A1%7D%2C%22bars%22%3A%5B%7B%22rowIndex%22%3A0%2C%22startDate%22%3A%222023-02-01%2011%3A19%3A36%22%2C%22id%22%3A%225252a106-3a12-43af-b663-829cb5f0485b%22%2C%22title%22%3A%22Design%20Non-Volitile%20Storage%20Arch%22%2C%22description%22%3A%22%22%2C%22duration%22%3A1.2772277227722773%2C%22pageLink%22%3A%7B%7D%7D%2C%7B%22rowIndex%22%3A1%2C%22startDate%22%3A%222023-02-09%2001%3A02%3A58%22%2C%22id%22%3A%2256f370d3-2910-4729-8cd6-11eeb0b26590%22%2C%22title%22%3A%22Review%22%2C%22description%22%3A%22%22%2C%22duration%22%3A1%2C%22pageLink%22%3A%7B%7D%7D%5D%7D%2C%7B%22title%22%3A%22Coding%22%2C%22color%22%3A%7B%22lane%22%3A%22%23f6c342%22%2C%22bar%22%3A%22%23fadb8e%22%2C%22text%22%3A%22%23594300%22%2C%22count%22%3A1%7D%2C%22bars%22%3A%5B%7B%22rowIndex%22%3A0%2C%22startDate%22%3A%222023-02-15%2010%3A04%3A45%22%2C%22id%22%3A%22a7cac00e-c864-4af3-b801-f032fdd2fd74%22%2C%22title%22%3A%22Implement%22%2C%22description%22%3A%22%22%2C%22duration%22%3A1%2C%22pageLink%22%3A%7B%7D%7D%5D%7D%2C%7B%22title%22%3A%22Testing%22%2C%22color%22%3A%7B%22lane%22%3A%22%233b7fc4%22%2C%22bar%22%3A%22%236c9fd3%22%2C%22text%22%3A%22%23ffffff%22%2C%22count%22%3A1%7D%2C%22bars%22%3A%5B%7B%22rowIndex%22%3A0%2C%22startDate%22%3A%222023-02-21%2004%3A08%3A19%22%2C%22id%22%3A%22d6f4d76d-ecfd-4e14-a082-4bd6ad4c17aa%22%2C%22title%22%3A%22Test%20Driver%22%2C%22description%22%3A%22%22%2C%22duration%22%3A1%2C%22pageLink%22%3A%7B%7D%7D%2C%7B%22rowIndex%22%3A1%2C%22startDate%22%3A%222023-02-27%2001%3A31%3A29%22%2C%22id%22%3A%22996862e9-260a-484c-a92d-78074b3fa90e%22%2C%22title%22%3A%22Test%20Interface%22%2C%22description%22%3A%22%22%2C%22duration%22%3A1%2C%22pageLink%22%3A%7B%7D%7D%5D%7D%5D%2C%22markers%22%3A%5B%7B%22title%22%3A%22Marker%201%22%2C%22markerDate%22%3A%222018-10-05%2007%3A07%3A43%22%7D%2C%7B%22markerDate%22%3A%222019-03-15%2000%3A00%3A00%22%2C%22title%22%3A%22Marker%22%7D%2C%7B%22markerDate%22%3A%222022-11-28%2001%3A39%3A48%22%2C%22title%22%3A%22Marker%22%7D%2C%7B%22markerDate%22%3A%222022-12-12%2000%3A00%3A00%22%2C%22title%22%3A%22Marker%22%7D%2C%7B%22markerDate%22%3A%222022-11-11%2010%3A27%3A19%22%2C%22title%22%3A%22Marker%22%7D%5D%7D
pagelinks
titleRoadmap%20Planner
hasha6adfab467e5dae9c6eb0394ed17aa29

...

\uD83D\uDD17 Reference materials

...

STM32 FatFS API / Reference

...

SDMMC vs. SPI command structure and comparison

...

FatFS Reference

...