Skip to content

Hardware

yesrod edited this page Jul 25, 2021 · 7 revisions

HARDWARE V1

I've ordered PCBs using the following KiCAD projects and they work well in my setup. In the future I may work up some 3D printable enclosures.

Current schematics:

Breakout board (Schematic)

Weight module (Schematic)

Platform module (Schematic)

HARDWARE V0

Currently Hoplite supports:

  • One Raspberry Pi (tested with a Pi Zero W and a Pi 3 Model B), running latest Raspbian
  • One LCD based on an ST7735 controller, resolution 160x128
  • One or more HX711 load cell amplifier modules, using channels A and/or B, for measuring keg weight
  • One HX711 load cell amplifier module, using only channel A, for measuring CO2 weight
  • One full Wheatstone bridge per HX711 channel in use, using either one 4-wire load cell, two 3-wire load cells, or four 3-wire load cells (what I used)
  • A platform to attach the load cells to create a scale (I used plywood and a load cell bracket from Thingiverse)
  • One 1-wire DS18B20 temperature sensor, for measuring kegerator temperature

LCD

The ST7735 LCD is connected as described in the luma.lcd docs. I used this LCD module from Amazon. It's similar to a module made by Adafruit, but with a different pinout (and cheaper).

I used RJ45 jacks to connect the LCD to a Pi breakout board described below. The LCD is mounted in a custom 3D printed enclosure that will eventually be posted on Thingiverse.

Load cells and amplifiers

The HX711s can be connected to any two free GPIO pins. The pd_sck and dout values in the config should then be updated to reference the GPIO pin numbers (Broadcom-style logical numbers, not physical pin numbers) you chose.

The HX711s MUST be powered from the 3.3v bus of the RasPi, or another 3.3v source. 5v power will cause jittery unreliable readings in the short term, and damage to the Pi over time (the Pi GPIO is only rated for 3.3v).

I used four half-bridge load cells for each channel of the HX711s. Info on hooking those up to create a full Wheatstone bridge can be found at http://www.instructables.com/id/Arduino-Bathroom-Scale-With-50-Kg-Load-Cells-and-H/

I used this bracket to mount the load cells to the plywood scraps I used for bases. I had to run the provided STL file through https://service.netfabb.com/login.php to fix an issue with the mesh and get the brackets to print correctly (holes were being filled in).

Temperature sensor

The DS18B20 is a 1-wire bus sensor. Some info on connecting that can be found here.

Connections and breakout boards

I used proto-board and screw terminals to create intermediate modules for the HX711s and temp sensor that let me minimize cables coming out of the kegerator. For signal cable from the modules to the Pi, I used 5-conductor sprinkler wire from Lowes.

The signal cables from each module connect to a Pi breakout board I created with proto-board, a salvaged IDE connector, an old 40-pin IDE cable and screw terminals. This breakout board combines connections from both HX711 modules, the temp sensor and the LCD and connects to the Pi via the 40-pin ribbon cable.

All the proto-boards were installed into customized enclosures based on this customizable project box model. I used a roll of adhesive fridge magnet strips from Lowe's to stick each box to the back of the kegerator, and the LCD is hot-glued to the top of the keg tower (I ran out of double-stick tape...)