Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Kicker Controller + Programmer #21

Merged
merged 13 commits into from
Oct 7, 2024
Merged

Kicker Controller + Programmer #21

merged 13 commits into from
Oct 7, 2024

Conversation

N8BWert
Copy link
Contributor

@N8BWert N8BWert commented Oct 7, 2024

Description

This PR writes the necessary firmware to program and interact with the kickers on our robots. The process for making the kicker programmer was relatively difficult and a software-controlled SPI line was created to address speed differences between the Teensy's LPSPI and the maximum SPI speed for programming the Atmega32a (kicker board). The kicker interaction also uses the same "fake" SPI peripheral.

Associated / Resolved Issue

Kicker Programmer Driver Kicker Controller Driver

Steps to Test

Kick on breakbeam

  1. Run kicker_on_breakbeam.rs example to program the kicker with kick-on-breakbeam
  2. Put something in the robot's mouth to see it kick on breakbeam being tripped

Kick on command

  1. Run kicker_program.rs example to program the kicker with the current binary
  2. Run the kicker_demo.rs example to charge the kicker, kick on command, and then recharge the kicker.

Key Files to Review

Kicker Programmer

  • control/drivers/kicker-programmer/lib.rs

Kicker Controller

  • control/drivers/kicker-controller/lib.rs

Kicker Demos

  • control/examples/kicker_on_breakbeam.rs
  • control/examples/kicker_program.rs
  • control/examples/kicker_demo.rs

Review Checklist

  • Docstrings: All methods and classes should have the file appropriate docstrings which follow the guidelines in the "Contributing"
    page
    of our docs.
  • Remove extra print statements: Any print statements used for debugging should be removed
  • Tag reviewers: Tag some people for review and ping them on Slack

@N8BWert N8BWert requested a review from wadengroff October 7, 2024 00:05
Copy link

@wadengroff wadengroff left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good after those changes are made.

@N8BWert N8BWert merged commit 1e32d43 into main Oct 7, 2024
4 checks passed
@N8BWert N8BWert deleted the kicker-controller branch October 7, 2024 00:20
@N8BWert N8BWert mentioned this pull request Oct 7, 2024
3 tasks
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