This page describes the minimum additional hardware required to enable all functionality of the SnakeEyes board.
⚠️ If you are using the Sample Case Design, be sure to read that page too - it has additional components and requirements above and beyond these minimum requirements.
No. | Description | Quantity | Example Source |
---|---|---|---|
1 | SnakeEyes Pi Hat | 1 | Green or IR |
2 | Compatible Raspberry Pi | 1 | See below |
3 | 20x2 0.1" pitch header | 1 | Included, or Kit from Amazon.com |
4 | 2x2 0.1" pitch header | 1 | Included, or Kit from Amazon.com |
5 | Pi V2 or V1.3 Camera | 1 | Green or IR |
6 | M2x10mm screws | 4 | Set from Amazon.com |
7 | Short Camera Cable | 1 | Set from Amazon.com |
8 | 12v cooling fan | 1 | Set from Amazon.com |
9 | Case | 1 | Sample Case Design, one of the v2 designs, or create your own. |
SnakeEyes is designed to fit the "hat" form-factor of the Raspberry Pi Single Board computer. Specifically, the following variants have been tested:
Others will likely function, but have not been fully tested. Earlier models had limited processing power, so your algorithm's performance may not be as good as with recent models.
SnakeEyes does not come assembled with the headers required to interface with a Raspberry Pi.
Carefully solder all headers onto the SnakeEyes board. Use jigs as needed to ensure the headers are straight and flush with the PCB, as this alignment contributes to the overall camera alignment in the unit.
⚠️ Use particular caution soldering near the small 4-pin header - it is easy to damage nearby surface-mount components.
The 2x2 pin header is used for Power over Ethernet.
If you are using a Raspberry Pi model which does not support power over ethernet (like the 3 Model B), or do not wish to use Power over Ethernet, you may alternatively use the alt power input pins
Additional headers are provided for the fan and alt power input. Be sure to confirm the case design being used has clearance for each header before soldering.
In addition, you will need to purchase a Camera.
SnakeEyes is designed to accept any "Camera Module V2" format Raspberry Pi Camera. This also includes most of the v1.3 Raspberry Pi Cameras as well.
⚠️ Use caution while routing the ribbon cable! Many are sensitive to folds or creases. You will need at least one 90-degree bend to get proper orientation of the camera relative to the case
It is recommended to use a 15cm ribbon cable.If your camera does not come with one, this kit will provide a variety of options for spares and experimentation.
Pi V2 Cameras are designed to be mounted with standard M2 bolts.
⚠️ Aside from providing a mounting location and target illumination, SnakeEyes does not directly interact with the camera. Playing With Fusion can offer very limited support on camera choice or functionality.
For most vision processing tasks (including using green LED's to identify retroreflective tape around targets), any Pi V2 camera should function fine. It is recommended to use the official Pi camera module, though many cheaper models on Amazon have been tested functional.
If you are using the Red IR version of SnakeEyes, it is highly recommended to use a camera which does not contain an IR filter. The official Raspberry Pi NOIR Camera is the current recommendation.
⚠️ While using a camera with an IR filter may function, it will severely reduce the usefulness of the IR-spectrum illumination the SnakeEyes provides.
The SnakeEyes LEDs and the Raspberry Pi itself produce a decent amount of heat while under load. It is highly recommended to use a fan to cool the system while in operation.
Any small 12v fan will work. Ensure the +/- polarity of the connector of your fan aligns with the polarity labels on SnakeEyes - there is no standard for how the connectors get wired.
SnakeEyes must be contained within a case for proper functionality. The case must serve a few purposes:
- Shield the camera from the LED's with opaque material
- Without this, spill light from the LED's will wash out the image, and made target identification very hard.
- Protect the electronics
LED brightness is controlled by the Raspberry Pi pin GPIO 13. Configure the pin as an output, sending a 5kHz-8kHz square wave. Vary the duty cycle from 0% to 100% to change LED brightness.
Control is active-high - the pin must be pulled high in order to turn on the LED's.