Skip to content
forked from mjbots/pi3hat

pi3hat library to interface microcontroller to driver hub

License

Notifications You must be signed in to change notification settings

Cionix90/pi3hat

 
 

Repository files navigation

mjbots pi3hat

This contains designs, firmware, and client side libraries for the mjbots pi3hat. It is a daughterboard for Raspberry Pi (tm) boards and similar to provide:

  • 4x 5Mbps CAN-FD ports
  • 1x 125kbps CAN port
  • 1kHz IMU with attitude reference

LICENSE

All files contained in this repository, unless otherwise noted, are available under an Apache 2.0 License https://www.apache.org/licenses/LICENSE-2.0

Directory Structure

  • hw/ - Eagle schematic
  • fw/ - Firmware
  • docs/ - Reference documentation
  • lib/ - Client side libraries
  • tools/ - bazel build configuration

FAQ

How do I get the best timing performance?

A: We recommend using the following configuration:

  • isolcpus and sched_setaffinity used to keep linux from running on the processor interfacing with the pi3hat
  • chrt 99 to run the process at the maximum real time priority
  • mlockall to prevent linux from swapping any part of the process

These are demonstrated in the --realtime option of pi3hat_tool.

Will this work on a Raspberry Pi 4?

A: Despite the name pi3hat, yes it works just fine on a Raspberry Pi 4 too.

Do I need to use the XT 30 input connector?

A: Nope. You can power the Raspberry Pi with through any means. The pi3hat internally only uses the 3.3V output from the Raspberry Pi, and the input connector is just an independent mechanism to power the Pi.

Will this work on insert random board here?

A: Maybe? If it has the same pinout as a Raspberry Pi, can can be powered through the GPIO header with 5V @ 2.5A then there is a chance.

Can I use the Raspberry Pi Camera?

A: If you install a higher GPIO riser then it is possible. Samtec ESW-120-12-G-D works. You can install one yourself, or contact [email protected] to get one fitted at the factory.

About

pi3hat library to interface microcontroller to driver hub

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 81.9%
  • Python 17.7%
  • Other 0.4%