If you want to dig deeper, you can modify your Workbench Assistant's CircuitPython code. Code & files may be modified over the USB-C connector or you can put your files on an optional MicroSD card. The internal drive & the optional MicroSD card would appear as a pair of mass storage devices when the bot is connected to a computer.

The bot works by analyzing nearby temperatures & firing events when pre-defined patterns are identified. It will trigger other events -- such as turning on the lights -- when code & config allow it to. It uses a AMG8833 IR Thermal Camera, a Adafruit Itsy Bitsy M4 Express microcontroller featuring the Microchip ATSAMD51, a monaural amplifier & an enclosed speaker. It includes a high-velocity 40mm server fan & numerous bright RGBW light 'pixels'. The prototype is powered by a laptop power supply and a pair of MP1584EN buck converters; the production version will be powered by internal lithium ion batteries or via USB-C PD, which can easily provide the bot all the power it needs.

Key Features

These are features you should expect in production versions of the Workbench Assistant:

  • Rugged construction
  • Compact size
  • Compatible with most tripods & camera mounts
  • Available in various anodized aluminum colors
  • Available in various rugged plastic colors
  • Available with integrated rechargeable batteries & BMS
  • Thermal event based lighting effects
  • Thermal event based fume extractor fan speeds
  • Thermal event based sound effects
  • Auto-recalibration when background thermal readings change significantly
  • Easy behavior changes without needing to mess with the CircuitPython code
  • Able to operate via off-the-shelf USB-C devices, including battery packs
  • Optional matching yolk if overhead mount is desired
  • Optional 3 foot USB-C cable
  • Optional 6 foot USB-C cable
  • Optional USB-C AC power adapter
  • Optional USB-C DC automotive power adapter
  • Optional USB-C battery pack

About the Project

The Prototype

The Workbench Assistant prototype was thought of, designed, built & configured in less than three months in the spring & summer of 2019. It was hand-soldered on proto board with parts from various vendors on Amazon, metal from the local Ace hardware store & features three exceptional parts from Adafruit. The enclosure was quickly designed on some index cards, cut with shears & bent into shape without a metal brake. This was the first project I've worked on requiring a custom metal enclosure & I'm sure it won't be the last.

The Product Vision

The Workbench Assistant will feature all the functionality found in the prototype, but will of course consist of high-quality PCB(s) designed specifically for the device. The metal enclosure will be made of high-quality scratch-resistant laser-cut aluminum. Airflow optimizations are being actively pursued & convenient hardware expansion options will be considered. Variations of the product are expected but all will feature high-quality components & the same API. Suggestions are _more_ than welcome!

What's Next

* Post-prototype build analysis; user testing
* PCB design
* PCB pre-production tests & revisions
* CircuitPython code refactoring & feature additions (YAML support, etc)
* API beta release & related documentation
* CircuitPython code release & related documentation
* Pre-production QA
* First production run
* Deliver the first Workbench Assistant bots to eager pre-order customers
* and more...

The Early Design Process

The need for a fume extractor in this form factor was realized while working on another project I look forward to discussing soon. A few years ago I modified my standard overhead fume extractor to use a 12V PC fan instead of a 120VAC fan, and eventually added strips of 12V LED lights to turn it into a combo lighting & fume extraction fixture. Given how much soldering I do, I decided I wanted to automate the fixture somehow. After learning about the AMG8833, I realized it would be fairly easy to write software capable of detecting a human, a soldering iron or other...

Read more »