29 Sep

Collecting environmental data

We were looking to collect some data that then may be the source for the render output of our other projects: vPiP drawing machine, G-code pen plotter and RGB LED Grids.
A few of us have built portable environmental data sensors with GPS tracking that I detail here.
The thought that these units could then be cycled around the local area or left statically for a period to collect the data.

Link to live map https://makebournemouth.com/geo/geo-enviro-2021-09-15.html

The build

RPI-025Raspberry Pi Zero Wshop.pimoroni.com
PIM458Enviro for Raspberry Pi – Enviro + Air Qualityshop.pimoroni.com
COM1707PMS5003 Particulate Matter Sensor with Cablethepihut.com
TEL0138USB GPS Receiver with 2m Extension Cablethepihut.com
102891Ethernet Hub and USB Hub w/ Micro USB OTG Connectorthepihut.com
SD-16GBMicroSD Card (Class 10 A1)thepihut.com
A1263PowerCore 10000uk.anker.com
The separate components

The Links to the software

Python script running on the Raspberry Pi to collect the data https://github.com/MarkJB/enviro_pi_csv

p5.js sketch to draw the GPS track with a render of the data values https://github.com/ch45/geo

Last Updated on 29 September 2021 by Chaz

18 Dec

Pewter casting in high temperature silicone

Every once in a while we like to try our hand at something different, so this time it was casting metal in high temperatue silicone moulds.

We start the process by mixing the two part silicone and pouring that over the object we want to cast. Where the object sits flat, we can make a one piece mould and pour the molten pewter into the mould from the bottom. For objects that do not have a flat side, we need to make the mould two sided. To do that we mount the object in clay (sulphur free as sulphur can react with the silicone and stop it from curing) and pour silicone on to the exposed side. Then when the silicone has cured, we flip the mould over remove the clay, apply mould release to the cured silicone and with the object still in place, we can pour the second side. Don’t forget to add some mating features in the clay to make it easier to align the two halves of the mould.

With the mould fully cured we can remove the source object and where necessary cut in a pour hole and air holes (to avoid trapped air). For a two part mould secure the halves together with elastic bands or a clamp.

Next we melt the Pewter bars. We used a stainless steel kitchen ladel heated with a blow torch.

When there is enough molten Pewter, skim the oxiditation (dross) off the surface with a spoon. Then pour the metal into the mould.

When the mould has cooled down enough you can demold the cast Peweter parts.

Remove any flashing and clean up with files or a dremel and polish with a cotton wheel if you want a shiny finish.

Last Updated on 18 December 2020 by Chaz

20 Nov

8×8 RGB LED Grids – the build

We put on a short fireworks display using our LED grids (see 8×8 RGB LED Grids project for more details. This is how we did it:

Here’s the list of the major items for the build

  • WS2812B RGB LEDs strips
  • Fadecandy module
  • 3mm MDF board (laser cut)
  • Frosted Perspex

Here’s the project outcome.., 8 x 8 LED grids connected up as a 2 down 2 across. All LEDs are illumined with the full brightness test pattern from the Fadecandy server web page. You’ll notice that there is a slight impurity in the ‘white’ because of the different performance of the red green and blue LEDs within the WS2812B. In practice multicoloured patterns are shown so this is not noticeable. Frosted Perspex is used to diffuse the light. A future design may secure the Perspex in a channel within the MDF as no amount of hot glue secured these well enough.

Multiple 8 x 8 grid with a ‘white’ RGB LED signal

This is the rear view showing the LEDs zig zagging across the LED mount panel. The MDF panel is on the shoulders of a narrow piece of MDF around the inside of the frame. LEDs in strips of 50 were purchased so an extra strip had groups of 14 unsoldered to make these up. The 64 were then rolled without twists onto an old ribbon cable spool so that is was easy to unroll flat onto the LED panel. Heavier hook up wire was taken to every 16th LED to cure any dimming of the LEDs at the end of the strip.

64 LEDs zig zag and glued to an MDF board

To make the cubes in to which the LEDs shine 3mm MDF was laser cut into narrow slotted strips, 7 horizontal and 7 vertical. The cube size is about 52mm. MDF ‘staples’ were also cut and within the mount panel you can see 10mm diameter holes for the LED and the staple arms to be accepted. Each LED and staple were hot glued.

Laser cut MDF sections to make cubes

A custom loom was made with heavier gauge (16AWG) hook up wire for the ground and +5V – 64 LEDs take about 2 Amps at full brightness. When soldered onto the pins and the crimp folded over this just fits the JST connector. For mobile use power was taken from a 12V car battery with a 5 Amp DC to DC step down buck converter module adjusted for 5V output. One per 8 x 8 grid and again part of a loom – à la spaghetti junction – manageable with only 4.

Using the Fadecandy module and the Processing.org IDE the project was quite code light.

  • Code to write patterns to the LEDs was just a few lines
  • Libraries for images, video and audio are easily available
  • Processing code and Fadecandy’s fcserver could be a computer that we could leave at an installation (e.g. Raspberry Pi)

Sample Processing.org code for this project is available on Github…

Last Updated on 18 December 2020 by Mark

12 Nov

8×8 RGB LED Grids

One of our long running projects was to design and build large form factor RGB LED grids for a Processing day involving algorithmic soundscapes with reactive displays.

Unfortunately due to lockdown that didn’t happen, but the development and construction of the grids continued and during a break in lockdown, we did a guerilla art installation displaying ‘8 bit’ style fireworks and fire displays between Halloween and Bonfire night.

This video is the result

Last Updated on 18 November 2020 by Mark

08 Jan


A while back hackaday posted about Trammel Husdons Charliewatch (An analog watch that uses 72 tiny ‘charlieplexed‘ leds.

We liked the project so thought we’d have a go at building some, plus it was a good excuse to try our hand at small component (0603) SMT solder paste assembly and pizza oven reflow.

Case printed on an Anycubic Photon in FunToDo Industrial Black.

With a few cosmetic tweaks to the PCB (the original used numbers but Roman Numerals seemed a bit more appropriate for an analog watch) and a bunch of PCBs ordered from JLCPCB, we assembled a couple to test and to design a new case around.

Checking the PCB alignment…
Reflow soldering in a Pizza Oven!
Post reflow.
And a shaky video showing one of the hourly animations.

Future updates will include updates on final case designs and materials.

More details on github

Last Updated on 8 January 2020 by Mark

20 Nov

UnitSeven is no more :(

The local maker space ‘UnitSeven’ is now closed.

MakeBmth are still meeting and working on projects.

Join the slack channel, mailing list or drop us an email to find out more about what we are working on.

Last Updated on 8 January 2020 by Mark

08 Jun

UnitSeven Maker Space

Thanks to Daizy.io there is now a fledgling Maker Space in Poole and MakeBmth will be meeting there every Thursday and helping fit-out the space and working on projects.

The space needs your help and support, so if this is something you think could be useful for the community, please come along and lend your support!

UnitSeven Maker Space is located at Unit 7 Birch Copse, Technology Road, Poole, BH17 7FH

Last Updated on 8 June 2019 by Mark

04 Mar

Coffee Machine Water Filter Monitor

Recently we have been working on a Water Monitor for Coffee Machine filters.

The problem: Coffee Machine water filters stop working after x number of liters of water have been filtered. That varies depending on the hardness of the water which can vary over time. It takes time for an engineer to visit each site and test the water quality and assess the effectiveness of the water filter, so filters may be replaced days or weeks after they are no longer effective or could be replaced prematurely if based on usage estimates.

The solution? Measure the difference between the input and output of the water filter and the volume of water that has passed through the water filter. In addition, we can measure the water temperature to try and calculate the Total Dissolved Solids (TDS). We need the water temperature as it is required in the TDS calculations. Send that data to a backend system for processing and presentation allowing proactive management of all deployed water filters.

We based our prototype solution on off the shelf modules and components. At its heart is an ESP32 devkitc with two DFRobot TDS modules, a (modified) flow meter and a DS18B20 temperature sensor. A custom PCB & 3D printed case.


The firmware waits for data from the flow meter and then records input & output TDS values in turn and sends that data via MQTT over TLS for back-end processing and presentation.

Node-RED example dashboard presenting water quality information.

The firmware presents a password protected hotspot for configuring the device wifi connection credentials & ssl certificates as well as presenting current water quality readings.

Last Updated on 4 March 2019 by Mark

22 Apr

Drawing machine (vPiP)

We’ve decided to take a break from the Wireless RGB Pixels project and revisit the hanging v plotter.

We are looking at making the various parts of the system independent services that talk over MQTT. This allows us to change the various bits of the system in a modular fashion.

Starting with the communication between the current Python vPiP scripts and the hardware. This will be a c/c++ binary that subscribes to the MQTT broker and listens for messages that it should pass to the hardware. The existing Python scripts will publish the relevant plotter data to the MQTT broker. This allows us to potentially control many drawing machines at the same time. It should also make the task of adding a GUI or app a bit easier. The GUI or app will publish messages to the machines and subscribe to messages that they can act on.

As a side note, if you have been following this project, you may have seen (or experienced) the glitchy stepper motor problem recently. This was due to the duplication of python processes and has been fixed in the existing version. Get the latest code from github.

Last Updated on 10 June 2017 by Mark