<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title>Electronics on Charlie Howlett</title>
		<link>https://charliehowlett.co.uk/tags/electronics/</link>
		<description>Recent content in Electronics on Charlie Howlett</description>
		<generator>Hugo</generator>
		<language>en-gb</language>
		
		
		
		
			<lastBuildDate>Tue, 28 Jul 2026 00:00:00 +0000</lastBuildDate>
		
			<atom:link href="https://charliehowlett.co.uk/tags/electronics/index.xml" rel="self" type="application/rss+xml" />
			<item>
				<title>Jar Light Display</title>
				<link>https://charliehowlett.co.uk/posts/2026-07-28-old-jar-led-display/</link>
				<pubDate>Tue, 28 Jul 2026 00:00:00 +0000</pubDate>
				<guid>https://charliehowlett.co.uk/posts/2026-07-28-old-jar-led-display/</guid>
				<description>&lt;p&gt;Almost every night I light a candle before going to bed as part of my nighttime routine, so I have heaps of leftover glass jars that seem too nice to throw away. Last weekend my girlfriend and I had the idea to turn one into a nice-looking enclosure for an interactive LED light project.&lt;/p&gt;&#xA;&lt;p&gt;The first step was cleaning out the old wax and wick.&lt;/p&gt;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&lt;picture&gt;&#xA;  &lt;source&#xA;    type=&#34;image/webp&#34;&#xA;    srcset=&#34;https://charliehowlett.co.uk/posts/2026-07-28-old-jar-led-display/1_empty_candle_jar_hu_31707ab996fb18c3.webp 720w, https://charliehowlett.co.uk/posts/2026-07-28-old-jar-led-display/1_empty_candle_jar_hu_8d94c3ca15194886.webp 1440w&#34;&#xA;    sizes=&#34;(max-width: 700px) 90vw, 720px&#34;&gt;&#xA;  &lt;img&#xA;    class=&#34;image-large&#34;&#xA;    src=&#34;https://charliehowlett.co.uk/fallback-images/posts/2026-07-28-old-jar-led-display/1_empty_candle_jar.jpg&#34;&#xA;    alt=&#34;The empty amber candle jar before the electronics were fitted&#34;&#xA;    width=&#34;3083&#34;&#xA;    height=&#34;2467&#34;&#xA;    decoding=&#34;async&#34;&gt;&#xA;&lt;/picture&gt;&#xA;&#xA;&#xA;&lt;p&gt;Next, we made a display that exactly fits the unique shape of the jar. We bought a strip of individually addressable LEDs, cut it into shorter sections, and wired them together into a flexible circular matrix.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Reverse Engineering Roland TM-2</title>
				<link>https://charliehowlett.co.uk/posts/2026-06-19-trigger-module-reader/</link>
				<pubDate>Fri, 19 Jun 2026 00:00:00 +0000</pubDate>
				<guid>https://charliehowlett.co.uk/posts/2026-06-19-trigger-module-reader/</guid>
				<description>&lt;p&gt;While building my &lt;a href=&#34;https://charliehowlett.co.uk/posts/2025-05-03-building-compact-hybrid-drumming/&#34;&gt;compact hybrid drumming rig&lt;/a&gt;, I became very familiar with the Roland TM-2. The module has an enormous number of settings and even lets users save configurations to an SD card as &lt;code&gt;.TM0&lt;/code&gt; files. One day, I opened one of these files on my computer to see what was inside. I found mostly unreadable raw binary data, with a short string of plain English text at the top: the name of my save file. This led me to wonder whether I could reverse engineer the format and display all the information in a web-based user interface.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Building a Raspberry Pi Server Rack</title>
				<link>https://charliehowlett.co.uk/posts/2026-06-12-raspberry-pi-server-rack/</link>
				<pubDate>Fri, 12 Jun 2026 00:00:00 +0000</pubDate>
				<guid>https://charliehowlett.co.uk/posts/2026-06-12-raspberry-pi-server-rack/</guid>
				<description>&lt;p&gt;I had three old Raspberry Pis and an SSD sitting unused in a cupboard, so I decided to turn them into a small cluster of home servers. I wanted the finished setup to be compact and tidy enough to live on a little shelf in my television stand, rather than becoming another loose collection of boards, cables, and power adapters tucked away in some cupboard.&lt;/p&gt;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&lt;picture&gt;&#xA;  &lt;source&#xA;    type=&#34;image/webp&#34;&#xA;    srcset=&#34;https://charliehowlett.co.uk/posts/2026-06-12-raspberry-pi-server-rack/pi-server-rack_hu_5aea18687e9fc9c5.webp 520w, https://charliehowlett.co.uk/posts/2026-06-12-raspberry-pi-server-rack/pi-server-rack_hu_d994c08c850007de.webp 1040w&#34;&#xA;    sizes=&#34;(max-width: 700px) 90vw, 520px&#34;&gt;&#xA;  &lt;img&#xA;    class=&#34;image-medium&#34;&#xA;    src=&#34;https://charliehowlett.co.uk/fallback-images/posts/2026-06-12-raspberry-pi-server-rack/pi-server-rack.jpg&#34;&#xA;    alt=&#34;The completed Raspberry Pi server rack&#34;&#xA;    width=&#34;1800&#34;&#xA;    height=&#34;1350&#34;&#xA;    decoding=&#34;async&#34;&gt;&#xA;&lt;/picture&gt;&#xA;&#xA;&#xA;&lt;p&gt;For the chassis, I joined two 12-inch server rack trays using a pair of small rack-mounting posts. This was cheaper than buying a premade desktop rack and gave me a reusable foundation: if I later expand the cluster or move it into a larger rack, the trays and mounting hardware can become part of the new setup.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Repurposing a Laptop as a Home Server</title>
				<link>https://charliehowlett.co.uk/posts/2026-05-22-repurposing-a-laptop-as-a-home-server/</link>
				<pubDate>Fri, 22 May 2026 00:00:00 +0000</pubDate>
				<guid>https://charliehowlett.co.uk/posts/2026-05-22-repurposing-a-laptop-as-a-home-server/</guid>
				<description>&lt;p&gt;I was recently given an old laptop that had been retired by my company. Despite no longer being needed for work, it still had quite capable hardware, so I decided to repurpose it as a compact, general-purpose home server rather than let it go unused.&lt;/p&gt;&#xA;&lt;p&gt;Because the server will remain plugged in, I removed the battery to reduce unnecessary heat and avoid leaving an ageing battery permanently charging. I also removed the display, which improved airflow, made the machine easier to fit into tight spaces, and left the power button accessible without needing to open and close a lid. I saved the screen so it can be reused in a future project.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Upgrading a Seiko DM-20 Audio Jack</title>
				<link>https://charliehowlett.co.uk/posts/2026-04-12-seiko-dm-20-headphone-jack/</link>
				<pubDate>Sun, 12 Apr 2026 00:00:00 +0000</pubDate>
				<guid>https://charliehowlett.co.uk/posts/2026-04-12-seiko-dm-20-headphone-jack/</guid>
				<description>&lt;div class=&#34;video-frame teletext-box&#34;&gt;&#xA;  &lt;iframe&#xA;    class=&#34;video-frame__iframe&#34;&#xA;    src=&#34;https://www.youtube-nocookie.com/embed/9ncaJx5Rk2E&#34;&#xA;    title=&#34;Seiko DM-20 headphone jack modification timelapse&#34;&#xA;    loading=&#34;lazy&#34;&#xA;    allow=&#34;accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share&#34;&#xA;    referrerpolicy=&#34;strict-origin-when-cross-origin&#34;&#xA;    allowfullscreen&gt;&#xA;  &lt;/iframe&gt;&#xA;&lt;/div&gt;&#xA;&#xA;&lt;p&gt;Recently, I found a Seiko DM-20 digital metronome in a nearby second-hand electronics shop. I really like its compact, thin design and retro appearance, and thought it would be useful during band rehearsals where I often have to bring a much larger metronome.&lt;/p&gt;&#xA;&lt;p&gt;The only problem was its 2.5mm headphone socket. Most modern headphones and audio cables use a 3.5mm connector, and although an adapter would have worked, it would also have added another small component that could be lost or fail during a rehearsal. I decided to replace the socket so the metronome could connect directly to the equipment I already use.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Building an Arduino Robot Car in a Day</title>
				<link>https://charliehowlett.co.uk/posts/2024-06-12-arduino-robot-car-in-a-day/</link>
				<pubDate>Wed, 12 Jun 2024 00:00:00 +0000</pubDate>
				<guid>https://charliehowlett.co.uk/posts/2024-06-12-arduino-robot-car-in-a-day/</guid>
				<description>&lt;p&gt;I set myself a small challenge: build a working Arduino robot car in a single day, using only electronics parts I already had around the flat.&lt;/p&gt;&#xA;&#xA;&#xA;&#xA;&lt;div class=&#34;video-frame teletext-box&#34;&gt;&#xA;  &lt;iframe&#xA;    class=&#34;video-frame__iframe&#34;&#xA;    src=&#34;https://www.youtube-nocookie.com/embed/JiTKMaDml5Y&#34;&#xA;    title=&#34;Arduino robot car one-day build timelapse&#34;&#xA;    loading=&#34;lazy&#34;&#xA;    allow=&#34;accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share&#34;&#xA;    referrerpolicy=&#34;strict-origin-when-cross-origin&#34;&#xA;    allowfullscreen&gt;&#xA;  &lt;/iframe&gt;&#xA;&lt;/div&gt;&#xA;&#xA;&lt;p&gt;I decided to build it because I had found a TB6612FNG motor driver lying around, along with an Arduino Mini, a battery pack, and a couple of small wheels with DC motors. For the body, I used a little wooden board I had spare and fixed the motors and other parts to it with some metal joinery pieces.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Arduino LoRa Monitoring System</title>
				<link>https://charliehowlett.co.uk/posts/2022-01-11-arduino-monitoring/</link>
				<pubDate>Tue, 11 Jan 2022 00:00:00 +0000</pubDate>
				<guid>https://charliehowlett.co.uk/posts/2022-01-11-arduino-monitoring/</guid>
				<description>&lt;p&gt;I rent a small drumming practice space that I share with several other musicians on a timetable basis. I built this monitoring system to understand how often people were using their booked time slots and how the room&amp;rsquo;s environmental conditions changed over time. Since the space has no Wi-Fi and unreliable mains power, the project became an interesting challenge involving low-power hardware, long-range radio communication, and remote data collection.&lt;/p&gt;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&lt;picture&gt;&#xA;  &lt;source&#xA;    type=&#34;image/webp&#34;&#xA;    srcset=&#34;https://charliehowlett.co.uk/posts/2022-01-11-arduino-monitoring/ArduinoMonitoring_hu_febdf34626a4b6ed.webp 520w, https://charliehowlett.co.uk/posts/2022-01-11-arduino-monitoring/ArduinoMonitoring_hu_2626646897062a3e.webp 1040w&#34;&#xA;    sizes=&#34;(max-width: 700px) 90vw, 520px&#34;&gt;&#xA;  &lt;img&#xA;    class=&#34;image-medium&#34;&#xA;    src=&#34;https://charliehowlett.co.uk/fallback-images/posts/2022-01-11-arduino-monitoring/ArduinoMonitoring.jpg&#34;&#xA;    alt=&#34;The Arduino monitoring hardware with sensors and radio module&#34;&#xA;    width=&#34;1500&#34;&#xA;    height=&#34;1500&#34;&#xA;    decoding=&#34;async&#34;&gt;&#xA;&lt;/picture&gt;&#xA;&#xA;&#xA;&lt;h2 id=&#34;sensor-node&#34;&gt;Sensor node&lt;/h2&gt;&#xA;&lt;p&gt;The sensing node is built around a 3.3V Arduino Pro Mini with sensors for PIR motion, humidity, temperature, and ambient light. Every ten minutes, it wakes up, collects readings, packs them into a small JSON payload, transmits the result by radio, and returns to sleep. I spent a significant amount of time reducing its power consumption so the device could run for roughly six months from three AA batteries. For this project, reliable long-term monitoring mattered more than collecting readings more frequently.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Llama Bot</title>
				<link>https://charliehowlett.co.uk/posts/2022-01-01-llama-bot/</link>
				<pubDate>Sat, 01 Jan 2022 00:00:00 +0000</pubDate>
				<guid>https://charliehowlett.co.uk/posts/2022-01-01-llama-bot/</guid>
				<description>&lt;p&gt;This project started with a burst stress toy llama that seemed too good to throw away. I decided to give it a second life as a singing, dancing robot, which turned a cute toy into a compact embedded engineering project involving electronics, power, motion, and control logic.&lt;/p&gt;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&lt;div class=&#34;image-pair&#34;&gt;&#xA;  &lt;figure class=&#34;image-pair__item&#34;&gt;&#xA;    &#xA;      &lt;picture&gt;&#xA;  &lt;source&#xA;    type=&#34;image/webp&#34;&#xA;    srcset=&#34;https://charliehowlett.co.uk/posts/2022-01-01-llama-bot/profile_hu_bb229bcdbc1415ae.webp 360w, https://charliehowlett.co.uk/posts/2022-01-01-llama-bot/profile_hu_42e164e8b5cf5700.webp 720w&#34;&#xA;    sizes=&#34;(max-width: 700px) 90vw, 360px&#34;&gt;&#xA;  &lt;img&#xA;    class=&#34;image-large&#34;&#xA;    src=&#34;https://charliehowlett.co.uk/fallback-images/posts/2022-01-01-llama-bot/profile.jpg&#34;&#xA;    alt=&#34;The finished llama bot from the side&#34;&#xA;    width=&#34;3648&#34;&#xA;    height=&#34;2736&#34;&#xA;    decoding=&#34;async&#34;&gt;&#xA;&lt;/picture&gt;&#xA;&#xA;    &#xA;  &lt;/figure&gt;&#xA;  &lt;figure class=&#34;image-pair__item&#34;&gt;&#xA;    &#xA;      &lt;picture&gt;&#xA;  &lt;source&#xA;    type=&#34;image/webp&#34;&#xA;    srcset=&#34;https://charliehowlett.co.uk/posts/2022-01-01-llama-bot/innards_hu_4c71458ebf06693e.webp 360w, https://charliehowlett.co.uk/posts/2022-01-01-llama-bot/innards_hu_f77a78b3f52ae29c.webp 720w&#34;&#xA;    sizes=&#34;(max-width: 700px) 90vw, 360px&#34;&gt;&#xA;  &lt;img&#xA;    class=&#34;image-large&#34;&#xA;    src=&#34;https://charliehowlett.co.uk/fallback-images/posts/2022-01-01-llama-bot/innards.jpg&#34;&#xA;    alt=&#34;The llama bot opened up to show the internal electronics and structure&#34;&#xA;    width=&#34;1280&#34;&#xA;    height=&#34;960&#34;&#xA;    decoding=&#34;async&#34;&gt;&#xA;&lt;/picture&gt;&#xA;&#xA;    &#xA;  &lt;/figure&gt;&#xA;&lt;/div&gt;&#xA;&#xA;&lt;h2 id=&#34;implementation&#34;&gt;Implementation&lt;/h2&gt;&#xA;&lt;p&gt;The electronics were built around an Adafruit Feather HUZZAH ESP8266, with a servo for movement, a buzzer for playing songs, and a rechargeable LiPo battery connected to the board&amp;rsquo;s micro-USB charging port. I also added an on/off switch by grounding the ESP8266 enable pin, allowing the toy to draw effectively no current while switched off instead of slowly draining the battery. Inside the llama, a structure made from cardboard, copper wire, and hot glue held the components in place and made the damaged toy sturdy enough to survive repeated movement.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Automating Lights with a Raspberry Pi</title>
				<link>https://charliehowlett.co.uk/posts/2021-09-02-pi-lights/</link>
				<pubDate>Thu, 02 Sep 2021 00:00:00 +0000</pubDate>
				<guid>https://charliehowlett.co.uk/posts/2021-09-02-pi-lights/</guid>
				<description>&lt;p&gt;Pi Lights was a fairly simple idea and my first exploration into DIY home automation: measure the ambient light level throughout the day using a Raspberry Pi, then switch Wi-Fi lights on or off automatically.&lt;/p&gt;&#xA;&#xA;&#xA;&#xA;&lt;div class=&#34;video-frame teletext-box&#34;&gt;&#xA;  &lt;iframe&#xA;    class=&#34;video-frame__iframe&#34;&#xA;    src=&#34;https://www.youtube-nocookie.com/embed/ZpO6WK41Bb8&#34;&#xA;    title=&#34;Pi lights demo video&#34;&#xA;    loading=&#34;lazy&#34;&#xA;    allow=&#34;accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share&#34;&#xA;    referrerpolicy=&#34;strict-origin-when-cross-origin&#34;&#xA;    allowfullscreen&gt;&#xA;  &lt;/iframe&gt;&#xA;&lt;/div&gt;&#xA;&#xA;&lt;h2 id=&#34;implementation&#34;&gt;Implementation&lt;/h2&gt;&#xA;&lt;p&gt;The system polls several light-dependent resistors and averages their readings before deciding whether to switch the lights. Using multiple sensors and rate-limiting changes made the automation less sensitive to brief shadows or sudden changes in brightness. A dedicated light-sensing Raspberry Pi HAT would have been more accurate, but I wanted to see if I could build a first pass using components I already had lying around. I ran the software as a Linux service so it would start automatically and continue working in the background without needing any attention.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Raspberry Pi Digital Lock</title>
				<link>https://charliehowlett.co.uk/posts/2018-11-02-prom-keypad/</link>
				<pubDate>Fri, 02 Nov 2018 00:00:00 +0000</pubDate>
				<guid>https://charliehowlett.co.uk/posts/2018-11-02-prom-keypad/</guid>
				<description>&lt;picture&gt;&#xA;  &lt;source&#xA;    type=&#34;image/webp&#34;&#xA;    srcset=&#34;https://charliehowlett.co.uk/posts/2018-11-02-prom-keypad/clean_wiring_hu_9dcf58a94585cfa6.webp 720w, https://charliehowlett.co.uk/posts/2018-11-02-prom-keypad/clean_wiring_hu_ef0052c3d807e7e.webp 1440w&#34;&#xA;    sizes=&#34;(max-width: 700px) 90vw, 720px&#34;&gt;&#xA;  &lt;img&#xA;    class=&#34;image-large&#34;&#xA;    src=&#34;https://charliehowlett.co.uk/fallback-images/posts/2018-11-02-prom-keypad/clean_wiring.jpg&#34;&#xA;    alt=&#34;The final keypad lock wiring after we cleaned up the hardware&#34;&#xA;    width=&#34;1920&#34;&#xA;    height=&#34;1080&#34;&#xA;    decoding=&#34;async&#34;&gt;&#xA;&lt;/picture&gt;&#xA;&#xA;&#xA;&lt;p&gt;This first-year group project started with a simple brief: build a keypad-controlled digital lock using a Raspberry Pi. It was a small project, but a very rewarding one, and it introduced me to some great people. Ultimately, our project was chosen by the lecturer to be demonstrated at subsequent university open days.&lt;/p&gt;&#xA;&lt;p&gt;The main constraint was that we were not allowed to rely on interrupt-driven input for the membrane keypad. Instead, we had to detect key presses by polling the Pi&amp;rsquo;s pins and working through the keypad matrix ourselves. On top of the basic four-digit passcode entry, we added status LEDs for correct and incorrect codes, a short delay after failed attempts to make brute forcing less practical, and a text-based interface for changing settings after the user had gained access. We also wrote software to attack our own system by generating electrical signals that mimicked key presses.&lt;/p&gt;</description>
			</item>
	</channel>
</rss>
