Skip to content

Conversation

@hyp0dermik-code
Copy link
Owner

@hyp0dermik-code hyp0dermik-code commented Jul 30, 2024

TODO

  • Initial POC
  • Refactor for unit testing
  • Basic unit tests for bit handling
  • Common error scenarios

Nice to haves/for next release:

  • Bit statistic reporting
  • Outlier alerting

* add gcr lookup table

* refactor, add skeleton state implementation

* add telem variables

* return bool from dshot_cmd decode

* move all code related to dshot_cmd inside the state
add telem state
add switching to telem state

* add telem annotations

* store dshot kbaud
make dshot period lookup dynamic

* add rough received bit handling

no error handling etc, no limit on # of bits (crashes)

* tidyup

* transition back to cmd state after 21 bits

* remove previously remove var

* fix high bit

* use bitwise operators for bit
add skeleton functions

* default to bidir

* add annotation types

* add start/end for telem packets
move debugging to annotation

* add force edt option

* fix gcr table

* update annotations

* initial attempt at xoring and gcr

* checksums match, send it

* tidyup

* tidyup

* add crc handling

* cleanup

* cleanup
* initial - back to motor command bits barely recognized

* motor bits displayed correctly, checksum passing
failing on telem

* tidyup, move telem data

* telem bits rxed again, no reset

* Split modules off into package for unit testing
* initial unit testing

* seperate and test xor and gcr

* add packet test and fix regressions of telem handling

* fix regressions of telem handling

* add custom exception

* fix erpm unit tests

* tidyup

* move add_bit to dshot_common

* reimplement telem data display
fix state handling
add dshot cmd state

* add test for telem zero packet

* raise error on CRC fail

* add .idea to .gitignore
@hyp0dermik-code hyp0dermik-code marked this pull request as ready for review August 1, 2024 04:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants