The Inner Prepper Emerges

Now is a great time for the inner doomsday prepper to rise and be acknowledged, along with the opportunity of throwing some techo challenges into the mix. You cannot be a a surviving prepper without having an accurate catalogue of foodstuffs stored away in the downstairs tubs. It takes far too long to use pen and paper to do a stocktake so a laser barcode scanner is the way to go. Sure, mobile phones and apps may be able to do the job but I want complete control over the data and functionality so an app and cloud-based database just does not cut it.

Purchased one of these wireless barcode scanners from eBay and it works a treat. The range with the USB keyboard dongle is huge - easily transmits through 2 floors of an apartment. I am impressed. And for the curious few, here's the guts of the device:

The downside of a hand held scanner is I don't want to have to carry around a computer just to get some feedback on it's operation. I want to fire at 3 barcodes - location, quantity and product and it will adjust the database accordingly. I could use a mobile phone as the interface but nothing annoys me more than putting the phone down for a moment only to have to unlock it a few seconds later. Frustrates me beyond belief! So I need to pimp the scanner with some sort of display. After bit of hunting through my parts database I formalised the plan of an SPI OLED display connected to a nodeMCU ESP8266 dev board to provide WIFI access. Technically simple, but the nodeMCU has several limitations that need working around to make it reliable (read many days of network level tracing and frustration).

The proof of concept was very easy to get up and running - ignoring setting up dev environments etc. but that is another story.

Too lazy to produce a circuit board so a quick hack wiring job sufficed.

Connected up to the scanner and it fired up ok. Prior to that I did try to drive it with the scanner's internal battery as the scanner has a good sleep mode so it lasts for many weeks between charges. Unsurprisingly, my sloppy hacking around destroyed the battery regulation circuit so now it all has to be run from a USB battery pack. I'll revisit the power requirements at a later date.

So while a strip of double sided tape is really all that is needed to mount the board to the scanner, I thought that a little substandard and I am sure that I would eventually rip off the display or kill it in some other manner. Time to customise a 3d-printed case using a process that appears to be a cross between incremental development and repetitive failure. Luckily it is in the privacy of ones home.  

Defining the shape of 3d curves is a real pain - callipers are of little help. I tried taking photos and importing them into a CAD program to enable tracing the curves. It worked in a rough way but in the end it was just quicker to print out a thin template and progressively tune the curves.

Once the curves were dealt with, it's on to a mount for the display. It slides perfectly into the front panel guide grooves.

With the display faceplate was sorted, it was time to get it positioned on the scanner.

Added support for the NodeMCU board only to realise that there was no way to hold down the board, so back to the printer and this time add board guide rails to the base.

While cleaning up the frame, I cursed as I sliced into the front panel. It could have been glued up and was probably not noticeable, but such a fault really galled me and I knew it was going to be hard to ignore. As it happened, I was not at all upset to later realise that I had been trial mounting the case the wrong way around and the cross bars on the bottom were in the wrong place.

This time everything correctly located...

Successfully mounted on the scanner. All good.

I could have left it at that but the only excuse for not making a lid was laziness.

All in all, it worked out OK. Now after an item is scanned, feedback comes back as to what the product is and whether it is known in the database.

The very cubic design niggles at me. It was a practical choice as a square lid is easier to design and print. Unfortunately it reminded me too much of a Star Wars walker...

After sleeping on the problem overnight, I could not live with it any more so some more effort was put into the case lid design.

No longer looks like something out of Star Wars. More like some trendy, uncomfortable couch... Oh well...