BOM
I've been putting together a bill of materials:
- STEMMA QT / Qwiic JST SH 4-pin Cable - 100mm Long x2 (extra one is optional)
- Adafruit CYBERDECK Bonnet for Raspberry Pi 400 (since probably not enough room for Stemma QT SHIM for Raspberry Pi + Blinkt! (below) on a Pi T-Cobbler Plus - GPIO Breakout)
- Raspberry Pi 400 Desktop - Full Computer Kit (longterm would probably be Pi Zero 2 W when it's back in stock)
- Adafruit AS7341 10-Channel Light / Color Sensor Breakout - STEMMA QT / Qwiic (spectrometer)
- Pimoroni Blinkt! for Raspberry Pi (LEDs)
- GPIO Ribbon Cable for Raspberry Pi Model A+/B+/Pi 2/Pi 3/Pi 4 - (40 pins)
- Clear Adhesive Squares - 6 pack - UGlu Dashes
- Motor Mount for TT Gearbox DC Motors - L-Bracket Type (or could be from somewhere else)
- Nylon Mounting Block(digikey)
I've had some basic experience setting up a Raspberry Pi 4B using a headless connection (IIRC), getting it connected to WiFi, etc. but I no longer have access to it (hence the Pi 400 above). I'm well-versed in Python and have a basic working knowledge of hardware connections. I like the idea of being able to install Ubuntu onto a Pi 4B and the large available RAM (up to 8 GB), such that running memory-intensive ML algorithms isn't an issue. I'm open to suggestions for other microcontrollers/processors.
Hardware Setup
Here's what I'm thinking for the hardware connections:
- connect the CYBERDECK Bonnet to the Pi 400
- connect the spectrometer to the Stemma-QT cable to the Bonnet Stemma-QT port
- Connect the Blinkt! to the Ribbon Cable to the Bonnet GPIO pinouts
- Attach the spectrometer to a 90 degree angle bracket to a flat surface using adhesives
- Position the Blinkt! to be perpendicular to and some distance away from the spectrometer using adhesives and a spacer (mounting block)
- https://github.com/pimoroni/blinkt
- https://learn.adafruit.com/adafruit-as7 ... t/overview
- https://docs.circuitpython.org/projects ... en/latest/
I'd like to avoid receiving the first order and realizing I'm missing something critical for getting initial tests set up. Related to that, I have three questions:
- Does the hardware seem sufficient to the task?
- Are there any software incompatibilities/difficulties that stand out? (aside from the ML algorithm, I'm mostly concerned about being able to send commands to the LEDs and read the spectrometer values)
- Any other general feedback or noticed "gotcha"-s?
https://github.com/sgbaird