Coronavirus screening with the Odroid Go thermal IR camera

Thermal IR (infrared) cameras are obviously exciting gadgets for lots of uses, including looking for heat loss in buildings, studying heat transfer, or even just seeing how hot your cup of tea is. But, with all the worries these days around coronavirus and COVID, they have obvious uses in screening yourself, your family and others for fever. The problem is that they can be expensive, so why not do it on the cheap using the relatively inexpensive Odroid Go open-source thermal camera project? If so, here’s the sort of data you can expect to get from it: in this case I can be pretty sure I don’t have a fever 🙂

A thermal IR scan of a face on the Odroid Go screen

The Odroid Go thermal camera is a simple, yet very useful, IR (infrared) thermal camera project for the inexpensive Odroid Go handheld ESP32 system. It allows saving of data to an SD card as well as having a Bluetooth interface to wirelessly get data off the camera to a computer, tablet or mobile phone. It’s based on the MLX90640 32×24 pixel infrared thermal array modules that you can get relatively inexpensively many places online. Here’s a short list of some of it’s features:

  • Onscreen display of the IR image, with a movable cursor to let you query the temperature for any single pixel (press up, down, left and right on the + control to move the cursor).
  • A range of colour maps, which are easily added to in the Arduino code.
  • A zoom button so you can switch the IR image to/from full-screen mode.
  • Saving of data to the SD card on your ODroid GO in text CSV format for later analysis.
  • A fever screening colour map, which shows temperatures above 36C in red to indicate when checking for a fever may be necessary (not for medical diagnosis).
  • In fever checking mode IR images with temperatures above 36C are indicated by an audible beep, to help with rapid screening of your family and friends.
  • An on-screen battery indicator, so you know when to recharge your GO.
  • A Bluetooth interface that lets you take full control of the IR camera, including transferring the IR data to a PC as ASCII text or binary data.
  • 3D printing STL files to make a forward-facing or rear-facing case to protect your thermal IR module.
The finished thermal camera module on an Odroid Go

It’s also quite simple to construct the camera, with very little soldering. All you need is four pieces of wire, the IR camera module, a small piece of Veroboard (a.k.a. stripboard), plus 10 0.1″ header pins in a strip, and the circuit is done! There’s two different 3D printed case versions in the project that make it easy to protect your IR module: for example below is the IR module fitted into the rear-facing case version (the inside of the photo above).

The IR module fixed inside the 3D printed case

If you feel like having a go at building your own Odroid Go thermal IR camera, whether for virus screening, energy management or other uses just click on the link below to visit the Github page. You’ll find lots of information there including the code and 3D printed case project files 🙂

Click here to view the project on github.
Tagged : / / / / / / /

3D printing door pullers to fight Covid-19

Door handles, and anything you need to pull, are important transmission points for viruses and bacteria. So, with all the concerns about Coronavirus and COVID-19, I obviously wanted to make some handle pullers I could use outside my apartment and to give to relatives and friends to help keep them safe. I didn’t find exactly what I wanted online so this is the result of me designing my own model using LibreCAD and OpenSCAD. Here’s what the finished design looks like:

A 3D printed door puller photo

Most of all, I wanted the puller not to look sterile and medical: there’s enough anxiety around viruses already, so why add to that. For that reason I designed it to have a chunky and colourful look, with rounded corners and extra parts to fit around holes to increase the number of filament colours I could use. Also, I designed the opener to close into a case with a latching action to make sure it didn’t come open when not wanted, so as not to cause unwanted contamination.

A few door pullers printed in different colours

To construct the opener from the STL files you need the opener itself, the case, the hinge inner and outer rings, and two surround rings. There’s two versions of each of the rings (round and cog-like) to give a bit more variety to the look, which can be mixed and matched. The opener simply needs placing inside the case, then insert the outer ring. With a bit of glue inside that you can then insert the inner ring.

If you’re careful with the gluing the rings will then still rotate letting you use the opener as a fidget ring too. The surround rings can then be glued into the smaller finger holes, which are positioned not to conflict with the opener when closing it up. If the latching is a bit stiff, a little light filing at the end of the opener will help. Adding a keyring loop and/or carabiner finishes the job and makes it easy to carry on a bag or belt loop. If you have big hands, making the finger holes too tight, you can just increase the X and Y scales in your slicer (keep them both the same so the holes stay circular).

Two door pullers, one partly open and the other fully open.

To download all the STL files to make your own door puller, just click the link below to MyMiniFactory: don’t worry, the project is completely free to download and use. Also, if you want to customise the models in some other way, the LibreCAD DXF file, and the OpenSCAD file, are included there too. The OpenSCAD file includes variables for opener and case thicknesses as well, making it easy to build a thicker or thinner version with little effort. But, however you build it, take care and avoid the viruses 🙂

View this project on MyMiniFactory.com
Tagged : / / / / /

Adding a power console to a 3D printer

I think my Monoprice Select Mini (MPSM) v2 3D printer is excellent: quite inexpensive but capable of good quality prints using a variety of filament materials. It’s also got a nice big back-lit display that tells me lots of useful information, including things like nozzle and bed temperatures, which is great. However, one aspect I decided could be improved on was the power supply, as the power switch is around the back so a bit awkward to get to.

So I decided to build a small console to sit at the top of the printer column with a power switch that was easy to access. And while doing that I thought why not also add some 5V USB sockets to run cheap lighting and fans off? Of course, that sort of thinking leads to ‘why not add a small power meter too?’ so I added one, plus a small tool holder as well to keep things like bed-levelling hex keys, and small files, organised. Below is a photo of the finished console with a cheap USB light running off it.

A photo of the power console atop the 3D printer with a USB light attached
The power console atop the 3D printer with USB lighting

I find it very useful. For one thing it’s easy to turn the printer on now and another advantage is that I can see how much power is being used and monitor it for changes that might indicate problems or maintenance needs. And while the power circuit I used for the 5V USB sockets is very simple and not recommended for powering anything expensive, it’s very handy to be able to turn on a work-light powered by the printer. It was also very simple to make, using just five parts that need 3D printing, as shown in the exploded diagram below. All of these parts are freely available to download: click here to go to the MyMiniFactory page to get them.

Exploded diagram of the 3D printed console
Exploded diagram of the 3D printed console

Once the parts are printed I found it best to build the circuit inside the shell first, as the sides will get in the way if glued on in advance. I’ve included a circuit diagram of how I built the console below. Although I’m sure it could be improved in many ways it provided a good starting point for me. Basically it comprises a 30V power meter and a few switches, together with power sockets and a simple voltage regulator circuit.

The circuit diagram for the console electrics
The circuit diagram for the console electrics

Obviously a bit of soldering experience was needed, but it wasn’t too onerous. Mostly it was just a case of running wires between things and soldering the ends. In the case of the thicker connections in the diagram I made sure I used the wires built into the meter all the way to the sockets, as they’re made for higher current than normal smaller diameter wires. Also, that’s why I used a number of wires in parallel for the connection between the sockets through the power switch. Similarly, the cables used to go from Vout in the diagram to the 3D printer power socket needed to be thick enough otherwise they get quite hot. And to show how I fitted it all together below is a photo of the inside of the console.

A photo of the inside of the console
A photo of the inside of the console

Having done all that work, and tested the circuit, the side panels were glued onto the shell, as well as the tool holder. The two cutouts in the tool holder were used to glue in a couple of 25x10x3mm rare earth magnets. They’re very strong and can be used to hang small tools on the back of the console where they’re easily accessible. Then the base connector was simply screwed to the top of the printer console, using the two small screws already there. That allowed the console to be slid on using the slots at each side. It held in place quite well, but I included a couple of small screw holes at the ends to make it more secure. Then after wiring up the power cables the project was finished and ready to enjoy 🙂

Tagged : / / / / /

Making vibration dampening CNC feet using flexible TPU 3D printing filament

There’s no getting away from it: routing with a CNC machine can cause lots of vibrations to travel into the work surface below, causing quite a bit of annoying noise too. To combat that I separate the machine from the work surface using 25mm thick firm sponge sheet: the blue non-flammable foam sold for furniture. It does an excellent job of isolating machine vibrations, but is really overkill for a small machine. So I decided to play around designing some flexible feet to fit onto the 2020-section aluminium frame that would do a similar job of preventing machine vibrations being transmitted to the hard work surface.

Obviously the best way of doing that would be to use a soft material that will wobble around: not enough though to flop down, and not so little that the rigidity transmits vibrations through it. As I’d recently bought some flexible TPU filament for my 3D printer, which is quite elastic, it seemed a good choice for making a squidgy wobbly thing (other flexible filaments may work well too). Designing a dampening system is obviously a rather complicated thing to do, probably best done by professionals using finite-element modelling and things like that. But that’s no reason not to have a go anyway!

For a DIY approach building a damper that flexes with the frequency of the vibrations, and preferably does that inefficiently, can be a good starting point. That way some of the job is also done simply because some vibrations will be cancelled out by others that are out of phase with them. So I went through a few iterations of small dampers so that I could squash them and get an idea of how rigid or squishy each design would be. It turns out that making squishy models at small scale using TPU isn’t as easy as you might expect: even with 10% infill density shells, creases and corners all increase rigidity too much. In the end I came up with the design below in OpenSCAD.

The OpenSCAD 3D model of a prototype vibration dampening foot.
The OpenSCAD 3D model of a prototype vibration dampening foot.

The design includes a flexible adapter at the top to squeeze into the slot in a standard 2020-section aluminium extrusion, as used on many cheap CNC machines. It’s the best design I’ve managed so far for a TPU damper just 20mm wide, and was designed to be printed without support material. It’s not floppy even though it has only 10% infill density, but has enough ‘squidginess’ to flex slightly under the weight of the CNC machine using a damper at each of the back corners and one under the middle front of the frame. If you want to have a go at printing your own, you can get all the files, including the STL file for 3D printing, by visiting the Thingiverse page.

The good thing is that this prototype allows vibrations to set up flexing in a variety of directions that can help prevent them being transmitted straight through to the surface below. Of course, I realise this is a work in progress, but the design does seem a useful starting point for some more experiments: perhaps tweaking the infill density and dimensions to start with so as to fine-tune flexibility while retaining the ability to support the CNC machine without bouncing around. And as a final note the design was easy to fit to a 2020-extrusion even though the slot ends were closed off: I’ve put a photo below to show what a finished and fitted damper looks like 🙂

A 3D printed TPU foot fitted onto the CNC machines frame.
A 3D printed TPU foot fitted onto the CNC machines frame.
Tagged : / / / / / /

3D printing with wood-infused PLA filament

Working with real wood is always exciting, but not everyone has a CNC machine for cutting and carving. And given the limitations of small desktop CNC machines, generally with only three axes, there are many times we can find ourselves wanting to make something with wood that isn’t going to be possible. So, for times just like that, I was excited to go and buy some wood-infused 1.75mm PLA plastic filament to use with my 3D printer. Wood-infused filament promises to allow 3D printing of complicated shapes while ending up with a part that looks and feels like wood.

For anyone who hasn’t heard of it, wood-infused PLA is a mixture of normal PLA combined with finely-ground wood powder. Ratios vary but generally around two-thirds PLA to one-third wood. Colours also vary, but mostly you should be able to get at least light and dark varieties, sometimes even ones limited to a specific species. The version I bought was a light-wood shade no-brand Chinese filament I picked up on eBay for fifteen UK pounds for a kilogram reel, so quite inexpensive. It was described as PLA infused with recycled wood powder, making the material doubly environmentally friendly.

To test the filament I needed a 3D model to print that would be virtually impossible to produce with my 3-axis CNC machine. I decided on a 3D scan I did of an eagle carving I bought in the Philippines in the 1990s, which I scanned with an XYZPrinting hand scanner v1.0A. In case you’d like to try printing it yourself I’ve uploaded the STL file to Thingiverse (click here to go there). The filament instructions stated a temperature of 180-200°C so I was able to slice the model in Cura and produce G-Code using the same settings I use for generic PLA. The results, before and after removing support material, can be seen in the photo below.

The eagle carving 3D printed with and without support material
The eagle carving 3D printed before and after removing support material.

Probably the first thing you’ll have noticed is that the print is quite ‘stringy’ where the nozzle hops between different areas. Probably that means I should tweak the retraction settings when slicing, but actually (compared to generic PLA and especially TPU anyway) it was very easy to clean off using just a small metal nail file. In fact, this was the thing that struck me most when cleaning up the print: the wood-infused plastic is very easy to sand and file to a nice finish. If you’re used to hours of effort filing, sanding and priming PLA prints to get them smooth you’ll likely be overjoyed to sand wood-infused filament! However, I should caveat that by mentioning that this filament was also more brittle than ‘normal’ PLA: in fact one of the prints cracked across the legs (where infill, set at 25%, was probably too low to give enough strength) during sanding, so care in slicing and finishing is required.

As for the print being faux-wood, well it does have the look of a very fine-grained wood. And, after sanding the surface does feel a lot like you’re holding a soft wood. The layer-lines in the print do add a little of the look of wood, but for the eagle carving I think lots of parallel lines throughout the whole height is a giveaway that this isn’t ‘normal’ wood. But if you’re not inspecting it closely the print could blend in with other wooden items on a shelf. So I wondered, would using a wood-infused filament with an oiled or stained surface add to the effect. To find out I tried oiling an eagle using natural-colour Danish Oil and another with a Brown Mahogany water-based stain, as you can see in the photo below.

An eagle carving after finishing with Danish Oil (left) and water-based stain (right).
An eagle carving after finishing with Danish Oil (left) and after applying water-based wood stain (right).

Compared to my other tests using Danish Oil, I think the results were a little subdued. Because the wood particles are suspended in a larger amount of plastic I suppose I shouldn’t expect the oil to soak in very much or have much effect on colour. And the oil did seal the surface and give a little of the effect of an oiled wood. It even felt a little like handling wood afterwards too. The stain was also quite effective and looks quite good from a distance, but close up you can see the layer-lines where the stain has soaked in more. And the stain was difficult to apply evenly as it just runs off the surface, so some time in the future I’ll try this with an oil based stain too for comparison.

So, after the above do I think wood-infused PLA is a useful alternative to using real wood? Well, in retrospect I was a little disappointed, but only because the prints lack the look of wood grain and, because of that, lack the ability to be finished using normal woodworking techniques intended to bring out the grain. That’s more a reflection on my expectations though, rather than on the material itself. In fact, for making complex objects the filament did a good job of making the best of a very difficult job I wouldn’t be able to do any other way. It was very easy to clean-up and sand the surface to a smooth finish, and without looking closely it gives a nice ‘wood-esque’ effect. So, yes, I think wood-infused PLA is a very useful tool for some interesting projects, either on its own or as a part of larger wood-plastic composite objects 🙂

Tagged : / / / / / / /

Tidying up 2020 CNC frame extrusions with a 3D printed end cap

Aluminium extrusions are common on low-end mini CNC machines, particularly the 20mm square 2020 variety. In some cases, such as my cheap Chinese 1610 CNC machine, they’re used to create the whole framework for mounting stepper-motors, spindle motors, LASERs, controller boards, and all manner of other things. Yet, they’re often left open, basically as cut, at the ends. So, I decided I’d design some simple end caps in OpenSCAD to 3D print: you can see the result in the photo below.

A photo of an unpainted 3D printed end cap inserted into the end of a 2020 extrusion on a CNC frame

The design is very simple but that makes it easy to print without any supports. Once printed simply push it into the end of the 2020 extrusion to seal and tidy the frame end. And, adding a little paint can make it blend in with the extruded aluminium finish, as in the photo below. So, as I found this design useful I thought I’d post about it so you can make your own: click here to head over to Thingiverse to download the files for 3D printing, as well as the OpenSCAD file for customisation.

A painted end cap in a 2020 frame
Tagged : / / / /

3D printing a CNC control box for switches and a voltage/current meter

Recently I realised that my CNC setup was getting a bit complicated. For one thing, I was using three separate power adaptors: one each for the CNC itself, my 5W LASER module and the extractor fan I previously wrote about. The CNC machine has a 24V supply, whereas the other two use 12V. Also, I had separate switch locations for the CNC and fan, while the LASER had no control switch: basically power supply on and off was simply plugging or unplugging the mains plug. While still perfectly usable, I decided it was time to change that setup for something better: the 3D printed control box shown in the photo below.

The front view of the 3D printed CNC control box

As you can see, I decided to make it not just functional, but also visually in-line with a more professional look than you might expect for a cheap CNC machine. So I decided to paint it, add some inkjet-printed water-slide transfers, then clear coat it. The bumpers I gave a few coats of brass-look paint and clear coat. To finish them off I LASER-cut inserts from 1.5mm Mahogany sheet which I finished with Danish oil and some clear coat, lightly sanded to give an old-style effect. It’s not perfect, but I’m quite pleased with how it turned out.

Electrically the box contains a 24V input from my CNC power supply, which goes through an automotive voltage/current meter straight to the CNC control board. Then I connected an automotive 24V to 12V regulator to the 24V output and ran the 12V through the white switches to the LASER module and fan, together with a 12V supply for adding lights later. The spindle motor simply connects through the switch, so it can be used to isolate the motor power, as a replacement for my previous spindle switch project. And to give an idea of how I connected the box to those parts I’ve put a photo of the rear of the box below.

A view of the rear of the box showing the DC sockets

So, finally, if you’d like to make your own version why not click here to go to the Thingivers.com page, where you can download the 3D printing files, the OpenSCAD code for adapting if necessary, the water-slide transfer images and a file for LASER-cutting the end inserts too.

Tagged : / / / / / /

3D printed bed risers for a quick and inexpensive increase in cutting area

Size isn’t always the most important thing when selecting a CNC machine. For example, I have a small and inexpensive Chinese 1610 machine, which has a bed 160mm wide and 100mm deep. For the kind of Maker things I do the small size isn’t a problem: in fact it works quite well in my equally small work zone. However, for LASER-cutting I wanted a little more distance along the Y-axis so I looked into how to simply modify the machine.

Obviously I could just replace some side frame parts, along with a couple of guide rods and a lead-screw, making the plan area whatever I’d like. However, that seemed like overkill for my needs so I thought a little more and came up with a very inexpensive way to up my cutting size to 160mm by 140mm. An extra 40mm doesn’t sound much, but for a lot of projects it makes a big difference. And, all it took was a bit of 3D printing filament and ten new hold-down bolts. You can see the results in the photo below.

A view of the bed risers from the front of the bed

The risers just raise the bed up a few millimeters but, together with moving the guide rod slider blocks in by one slot, they allow the bed to ride over the guide rod mounts. That riding over is what gives the extra 40mm. I decided that 20mm of overhang front and back during cutting wouldn’t be a problem, which saves the cost of buying a new 160x100mm 2020-section aluminium bed. The original bolts used to mount the bed were 10mm long, so I replaced them with 16mm ones which fitted perfectly. I also took the opportunity to replace the drop-in T-nuts with slide in ones, which gives me more confidence that the bed is properly fixed down. You can see how I fitted the risers, and moved the blocks, in the photo below.

A view of the risers and block adjustments underneath the CNC bed

If you’d like to make your own risers you can get the 3D printing files, and the OpenSCAD design in case you want to make adjustments, by clicking here to go to the Thingiverse.com page.

Tagged : / / / /

Make a GRBL CNC pendant with a Bluetooth data link

If, like me, you like to spend time surfing the internet looking at photos of CNC accessories, you’ve probably thought how nice it would be to have a pendant (i.e. a controller on a cable) for cheap Chinese CNC machines using GRBL controller boards. In fact, I wanted one so much I decided to build one to allow me to jog and zero axes, as well as to let me turn the LASER on for focusing and accurate jogging. I decided to do it using an ESP32 microcontroller as it allows the pendant to act as a Bluetooth link for G-Code sending/receiving as well. I thought my finished design might be useful for others to base their pendant designs on too, so I made it open source, and you can see what it looks like in the photo below.

A photo showing the finished pendant as well as the inside and a view of the circuit board.

It’s important to note that this could probably be described as an advanced maker project, as it requires skills with 3D printing, circuit making, soldering and Arduino coding. But if you’re up for the challenge you can get all of the files and details needed on Github and Thingiverse. The links are below and good luck making one as they can be an invaluable CNC accessory 🙂

3D files on Thingiverse:

https://www.thingiverse.com/thing:3521653

All files, including code, on Github:

https://github.com/drandrewthomas/ESP32_GRBL_CNC_Wireless_Pendant

Tagged : / / / / /