Workbench Status Updates

Posted 2021-12-23

A few weeks ago I built a ML tool to determine if my workbench was a mess or not (hot tip: it's always a mess), you can read about it here. It worked okay but had a few issues.

  1. Camera access was constantly locking up and I'd have to reboot the board, which directly lead to issue #2
  2. Redis would fail to start because the tmpfs log would get wiped out and it wouldn't be able to create the log
  3. It was absolute overkill honestly for the TPU, and I have some better ideas for it down the road.

So I am now moving my new and improved version called Workbench AI!

The big changes are:

  1. Detection now happens on a cloud server instead of locally on the coral board, this is much more flexible for me to add new stuff to it
  2. Got rid of the coral board and plugged the camera into the Raspberry Pi that I already have on my desk, one less thing running
  3. Cleaned up the code a lot, removed OpenCV and switched from tflite to tensorflow (althought it was not entirely required)
  4. Raspberry Pi now just grabs an image from the camera and pushes it to the detection endpoint, so less work on that
  5. I was manually capturing training data which was kind of annoying, now it happens automatically
  6. Store data in postgres instead of redis so I can have historical data and can generate stupid statistics from.

Overall this should be much cleaner and also let's me remove that awkward route I had to route http requests to the coral board.

Some future things I want to do:

  1. Add some statistics like how often my bench is a messy vs how often it's cleaned
  2. Interaction with some of the toys that usually live on there (is my soldering iron on? if it is just turn it off and WALK AWAY)

You can check out the code on my Sourcehut in all it's brilliance.