BSC(HONS) COMPUTER SCIENCE with First Class Honours
Last update: 05/2025
Portfolio
About
I'm Jack Holdsworth, BSc Computer Science graduate with a flair for integrating software with hardware, showcased in projects like transforming a road bike into an e-bike and turning my van into a smart vehicle. Balancing academia with practical experience, I've developed AR solutions at Atkins and honed leadership skills as President of my university's cycling club. Passionate about smart device technology, I'm driven by the challenge of creating innovative solutions that blend my technical expertise and creative vision.
I am currently looking for a job in embedded systems
A simple circuit of supercapacitor to hold a temporary charge when a relay changes a circuit. A quick charge, UPS!
Computer Systems Architecture - Coursework
My coursework for CSA, completed all tasks, using 4x SN74HC595N bit shift registers to expand the capabilities of the limited number of arduino GPIO pins. Wrote a custom library to run peripherals on 3 connected registers. Marks achieved 150/100 capped at 100.
Raspberry Pi NAS
A 8 terabyte NAS powered by a raspberry pi 4b. Used to store and share MTB GoPro videos. Raid 5 configuration.
USB HUB +5v line splice
A usb hub that splits off the +5v line. Providing devices with a greater source of power. Used in NAS to power hard drives, as the raspberry pi can only deliver 1 Amp
Van toaster!
A toaster in the van for toaster before rides.
Rear View Camera
A rear view mirror powered by a raspberry pi 3b+. Providing the driver with a view into the blind spot.
DC-DC Arduino controller
Arduino powered controller for a DC-DC charger in my van. Powers the solar leisure battery on cloudy days. Detects when alternator is charging and applies some conditionals to unsure minimal stress on the engine.
Solar controller interface.
Arduino powered serial comms with Solar charge controller. Arduino reads and writes to registers using leaks documents. Arduino is BLE enabled and communicates with the raspberry pi's.
Creative Technology Studies - Coursework
Coursework for Creative Technology Studies. A functional piano powered by a raspberry pi using a switch matrix.
Switch Matrix Research
Research on how switch matrix's works for Creative Technology Studies.
My 3D printed E-Bike!
My E-Bike is hands down my longest-running personal project, and probably the one I’ve learned the most from. What started as a simple idea to make my commute easier has evolved into a full-on engineering experiment, complete with trial, error, and lots of broken parts.
It all began during my A-Levels. I had a work experience placement at Atkins, which was an exciting opportunity, but it came with a catch: a one-hour cycle ride each way. I was riding a lightweight road bike, and while it got me there, I’d arrive worn out. This wasn’t sustainable, especially when I wanted to make the most of the experience. Around that time, e-bikes were just starting to hit the mainstream. They were expensive, and I thought, why not build one myself?
That one thought sparked a years-long learning process. I began by teaching myself CAD software so I could start designing the custom parts I needed. It was slow going at first, I'd never designed anything mechanical before. But with each revision, I got closer to a system that worked. Now, after hundreds of iterations, I’ve built a reliable e-bike that’s tailored to my riding style and needs.
But it wasn’t just about slapping a motor on a frame and calling it a day. Some of the hardest parts of the project came from things I didn’t even consider at the start. Cooling, for example, was a major issue. Motors and controllers generate a lot of heat under load, especially on long climbs or hot days. I went through several cooling solutions, from fans to water-cooling systems, even experimenting with different materials to act as heat sinks. Eventually, I landed on something much simpler, and more reliable: an oak insert. Wood isn’t a common choice in electronics, but oak’s natural insulating properties, combined with its ability to absorb vibration, made it surprisingly effective for the job.
Then there was torque. Electric motors deliver a lot more torque than your legs ever could, and my lightweight road bike frame just wasn’t designed for it. The first few versions of the bike literally twisted the frame under load. At one point, I discovered the down tube was subtly bent. After multiple mounting strategies and even reinforcing the frame in places, I settled on a dual bottle mount design that anchors the motor’s torque directly to the bike’s strongest points. It’s solid, and it hasn’t budged since.
I’d be lying if I said the journey was smooth. This bike has had many failures, most of them catastrophic. I’ve had blown controllers, snapped mounts, shredded gears, and more electrical gremlins than I care to count. But each failure was a problem to solve. I didn’t see them as reasons to give up, they were just part of the process.
What’s funny now is that the parts I designed and made myself are lasting longer than many of the off-the-shelf components. Derailleurs snap. Cranks strip. But the mounts, brackets, and custom pieces I created are still going strong. It’s a great feeling to ride something that’s entirely mine, something built through stubbornness, curiosity, and a whole lot of patience.
This e-bike isn’t just a way to get from A to B anymore. It’s a rolling record of my progress as a designer, engineer, and maker. Every bolt, mount, and wire tells a story, and every ride reminds me that persistence, even through failure, leads to something meaningful.
Digital Design Coursework: Calculator
The orignal scope for this project was to develop a calculator using a Raspberry Pi Zero W. After writing the code I decided to take the project further. I created a 3D-Printed case and integrated a battery circuit. Visit the Gitlab
IOT Corsework - Binary tree Morse encoder/decoder
Worksheet 2 part 1 develops a binary tree to encode and decode morse code. Tree can also be used in other projects. Visit the Gitlab
IOT Coursework - Binary Heap and server communication
This coursework builds apon part 1 where I built a binary tree morse decoder. I build a binary heap string used for converting morse and communication between a remote server and my client. Visit the Gitlab
IOT Coursework - UDP packets
This worksheet explored the UDP protocol, decoding, encoding and communicating to a remote server. Visit the Gitlab
Hacked: MTB Head torch BLE remote upgrade
Ive had my head torch I use for mountain biking for many years now. New technology has arisen with many improvements like remote controls. Rather than spending a couple hundred pounds I decided to see if I could upgrade my existing head torch. I had added remote control using a seeed studio xiao nrf52840 which is an versatile piece of kit that I would like to use more in the future. It is smaller than a penny but also has 20 GPIO pins available for use. I have two nrf52840's talking to each other, the other is located on the handlebars where I can use a switch to control the head torch modes. This allows me to change brightnesses while on the move.
Buck Converter for Solar MPPT system
I designed and made this for my final year project. In order to drive the voltage up for down for a MPPT algorithm. Controlled using a pwm signal which nothing easily available on the market can do. Buck converters typically use lm2596-adj which can self regulate power input based on resistance driven input. Capable of measuring currents and voltages to 0.001 accuracy for small scale demo. Denoising was quite the challenge at these levels!
Final Year Project
Developed an optimized photovoltaic system with advanced MPPT technology to enhance solar energy capture for electric vehicles. Improved energy efficiency by up to 22% through the integration of a custom MPPT algorithm, designed for rapid light fluctuations, and created a user-friendly interface for real-time energy monitoring and management
LoRa User Remote
As part of my final year project, I designed and developed a custom user remote interface for managing the solar energy system of electric vehicles. This remote provided real-time monitoring and control of energy usage, utilizing data visualization tools and predictive analytics to help users make informed decisions about their energy consumption and charging patterns. The interface was intuitive and user-friendly, allowing for seamless interaction with the vehicle's power management system, while also incorporating an advanced MPPT algorithm to optimize energy capture during rapid light fluctuations. This project showcased my ability to merge software and hardware systems, creating a solution that improves both usability and efficiency in renewable energy applications.
Docking Station
For my final year project, I designed and 3D-printed a custom docking station and remote control for an electric vehicle's solar energy system. The docking station securely housed the remote, which provided real-time monitoring and control over the vehicle's energy consumption and solar energy capture. The remote was designed to be ergonomic and user-friendly, featuring a clear interface that displayed key data such as battery levels and energy flow. The 3D-printed design allowed for a compact and durable solution, integrating seamlessly with the vehicle's interior while optimizing accessibility. This project highlighted my skills in CAD design, 3D printing, and user-centric product development, merging both aesthetic and functional elements.
Garden Solar Ebike Charger
I recently set up a solar panel system in my garden to power and charge my e-bike, using Victron hardware to ensure efficiency and reliability. Currently, I have installed a Victron Smart Solar 150/45 charge controller, which optimizes energy capture and ensures the system operates at peak efficiency. As I continue to expand the setup, my goal is to create a fully sustainable charging solution for my e-bike. This project has deepened my knowledge of solar energy systems and hardware integration, particularly with Victron components, and reinforces my commitment to renewable energy and practical, hands-on engineering.
UWE CC
As President of my university�s cycling club, I led the organization for three years, during which I organized weekly rides, planned major trips to destinations like the Alps, and managed the club�s finances and logistics. My role involved coordinating events, fostering a sense of community among members, and ensuring the club ran smoothly. This experience honed my leadership, teamwork, and organizational skills, as I balanced the needs of the club with my academic commitments. My time leading the club also strengthened my passion for cycling and outdoor activities, while allowing me to develop strong interpersonal and management abilities. Those 3 years we magical and was a life changing experience. Some good memories were made :)