Jay(son) Bunnell

Computer Engineering B.S.

About Me

If you're reading this, thank you so much for visiting! My name is Jayson, though I typically go by Jay. I am a Computer Engineering B.S. that graduated from Utah Tech University in early May 2026. Bobbi (my spouse), Bosco (our dog), and I live in Washington Utah right now but we would happily relocate as a career move if it would push our life forward. We've been married since December of 2024, and we got our dog May of 2025.
Even though I am an engineer by qualification, I love pretty much everything that I can get my hands on. I am a programmer, musician, novice artist, creative writer, and avid reader; In-industry I am super passionate about high-quality documentation. One of my favorite gifts I've ever received is Volume XI of the Perpetual Troubleshooter's Manual, and you can read through every volume for free online. I strongly believe that good documentation pushes any system to its most reliable, and helps user inuition to thrive. Making documentation is an underappreciated art form.

My favorite things (in no particular order):

  • Pistachio ice cream
  • Indian cuisine
  • Any piano
  • The ESP32-C3
  • The players of Null-A, by A.E. Van Vogt
  • Brother printers
  • Half-whole-wheat bread
  • Hotdogs (no ketchup, extra onions)
  • Cashews
  • My Dog
  • Trying to Juggle
  • Analog Calipers
  • Paperback Books
  • Warbreaker, by Brandon Sanderson
  • Minecraft
  • Enumerate, the LaTeX package
  • Zig, the systems programming language
  • defer, the programming keyword
  • "Awesome", the exclamation
  • My AWESOME spouse, Bobbi
  • Small marbles
  • The Muppets

Projects

These are some of my projects that I'm proud of. Many of these are academic in nature, but all of them are hands-on because of Utah Tech's commitment to polytechnic learning in all of its programs. I have real experience with multimeters, oscilloscopes, practical PCB design, 3D FDM printing, engineering design reviews, programming embedded systems, and so much more.

Click images buttons to scroll to images of that project.

images2026 - Typst Circuit Layout Engine

My current upcoming project is a layout engine for Typst (a Latex alternative) that uses a nodegraph system to resolve the positions of a circuit relative to ground. This enables typsetters to define circuits similar to a Netlist, the common representation of SPICE simulators. The intuition this brings to typsetting provides a pretty clear advantage to someone like me, who often typsets projects for fun.

It uses nodes with fixed definitions (i.e. Ground as (0,0)) and traverses a graph of all of their connections. Because each component has a defined size and orientation, all the nodes can be calculated from here. The minimum size of the circuit gets calculated based on this node graph, giving a reasonable start to a layout. Width, height, and style changes can be done arbtrarily based on input parameters, and because the whole thing is within a block level element and drawn as an SVG, it an be resized for any use-case.

You can view the details of drawing a circuit in the image description on the right.

images2026 - OpenBioPrint

An Open-Source 3D printer based on the Lulzbot TAZ6 capable of extruding biomaterials. We designed it to use the TAZ6's original motor, and did some clever tricks to convince the TAZ that it was interfacing with a regular plastic nozzle. A huge benefit of this is that future updates of Marlin, the TAZ's firmware, are fully compatible with our printer.

This project required writing loads of GCode by hand, and learning a great deal about what REPRAP-style printers do. All of the modifications to typical slicer settings (Cura) are documented along with the printer, and are currently held by Utah Tech University. Contact Dave Christensen for access to the design files.

My major contribution (besides programming and designing our test prints) was the temperature regulation system, which provides a convenient user-interface to a set of 140CFM fans embedded in the table. Air filtered through hepa filters in the side of the central enclosure (see image) gets exchanged in the printing area, allowing the temperature inside to remain stable. All of the formulations designed for this printer so-far are meant to print at room temperature, and the printer being enclosed is a huge source of heat.

images2026 - Cuk Regulator

A KiCad-10-designed regulator that can buck or boost 12V all the way up to 100V and all the way down to 1V, with minimal ripples (under 330mA and 80mV). It uses two LM555 timer chips from Texas Instruments to allow for independent control of frequency and pulse-width, and its updated schematic uses closed-loop voltage control to change the pulse-width to hit a target output voltage.

The components in the schematic are rated for 2 Amps at 25 degrees, which allows the energy transfer capacitor C5 to withstand transients from switching. I would happily build this again, but would likely decide on a larger footprint board with no surface-mount components. The SMD MOSFET used required a heatsink, and still had issues with temperature due to its size. Through-hole MOSFETS in parallel would be satisfactory for a converter like this one, especially running as slow as 50kHz.

images2025 - Aquaholics

The UI/UX, control system, power distribution, and microcontroller brain for a dual BLDC motor modified pedalboat were handled by myself and a Mechatronics engineer, Jacob Galindo. This was my first project using currents above milliamps, and was a huge success due to several late nights and some creative problem solving. I think designing a circuitboard for this project would have saved me a huge amount of time and patience soldering, as all of the components had to be individually soldered to a protoboard embedded in the waterproof controls box.

The system is controlled by feedback from two potentiometers, each controlling the thrust provided by one motor. A Gyroscope chip measures boat heading, relaying that information back to the drivers of the craft. The speed controllers for the motors also measured temperature and spin rate, which were useful to provide backward.

If I were implementing this sort of control now, I would calculate a heading based on the two inputs and correct the thrust of the motors based on the difference from the true heading, measured by our gyroscope chip. This would have provided additional consistency and made the user experience a lot more streamlined for new users of the boat. After competing, several team members drove the boats with their families (mine included) to give them a taste of what hands-on engineering meant for students at Utah Tech.

What I'm Researching

One of the skills I think everybody should develop is learning how to wonder about things. I wonder all the time; frequently about how things work, or where things go, or what things do. Bobbi and I play a sort of modified twenty questions, where one of us will think of something (most recently a groundhog, on my part) and the other will try to narrow it down and guess. You get the standard questions at first, "Is it a quality, or is it an object", or "Is it a person, a place, or a thing?" but then the questions get more interesting.

"Can I hold it in my hand?"

"Does this animal have hair, or fur?"

And when we get to these sorts of questions, suddenly we're both forced to really stop and think about the answers without the internet (unless under extreme circumstances). This kind of wonder has done nothing but make my life better, and I would recommend it wholeheartedly. This section is for the things I'm currently learning to become passionate about.

Contact

Linkedin: jaysonbunnell

I post here often, especially about whatever's interesting in the moment. My posts are never written by generative AI.

Email: jaysonbunnell@gmail.com

If you're reaching out for a business inquiry, please mention it in the subject. If you're not reaching out for business, I'm happy to be friends!

Codeberg: jbunnell

I have switched to using Codeberg as my main development platform. It is similar to Github or Gitlab, if you're familiar with either of those. This site is hosted on Codeberg.

Image Gallery

(scroll to See More)

image of me, jumping in the air, throwing my graduation cap.
Me, jumping in the air with my grad cap. Taken in 2026 after graduation at Utah Tech University by my lovely sister, Alanah.
Screencapture of my Circuit Layout Engine Output.
Circuits laid out with my Layout Library. A full-bridge rectifier and Cuk converter circuit laid out with my typst circuit layout engine. The source for these figures is this:
    #figure(caption: [_A Full-Bridge Rectifier_],
        Circuit(
            Ground(Dir.SN),
            Diode("B002","GND",Dir.NWSE, label: $D_2$, flip: true),
            Diode("B002","B004", Dir.SWNE, label: $D_4$),
            Diode("B004","N001", Dir.NWSE, label: $D_1$),
            Diode("GND","B001", Dir.SWNE, label: $D_3$, flip: true),
            NetLabel("B004", Dir.SN, label: $V_"ac"$),
            Short("N001","N002", Dir.WE, size: 0.5),
            Capacitor("N002","N003", Dir.NS, label: $C$, flip: true),
            Short("N002","N004", Dir.WE),
            Impedance("N004",":N003", Dir.NS, label: rotate("load",90deg)),
            Short("B002","B00X", Dir.EW, size: 0.25),
            Wire("N003","B00X", flip: true),
        )
    )

    #figure(caption: [_A Cuk Converter_],
        Circuit(
            width: 11cm, height: 4cm,
            Ground(Dir.SN),
            VoltageSource("GND","N001",Dir.SN, label: $V_s$),
            Inductor("N001","N002",Dir.WE, label: $L_1$),
            Capacitor("N002","N003",Dir.WE, label: $C_1$, flip: true),
            Inductor("N003","N004",Dir.WE, label: $L_2$),
            Short("N004","N005",Dir.WE, size: 0.75),
            Switch("N002",":GND",Dir.NS, label: $Q_1$),
            Diode("N003",":GND",Dir.NS, label: $Q_2$),
            Capacitor("N004",":GND", Dir.NS, label: $C_2$, flip: true),
            Impedance("N005",":GND", Dir.NS, label: rotate("load",90deg)),
        )
    )
    
fully assembled DC-DC Cuk Converter
A fully-assembled Cuk converter. Designed by myself and Stephen Harris, manufactured at JLCPCB.
The Cuk Converter Slide Deck. A Slide deck describing our Cuk Converter, its design, its goals, and its drawbacks. Contains screenshots of simulation data.
Jayson Bunnell and Baylee Schumacher presenting OpenBioPrint
Me and Baylee Schumacher at Trailblazer Symposium. Our first public presentation of OpenBioPrint, where we got to discuss our project with students and locals.
OpenBioPrint's Temperature Regulation Board
OpenBioPrint's Temperature Regulation Board. A 3D render from KiCad 10 of the OpenBioPrint V-1 temperature regulation board. A second (better!) version of this board has been designed, but not manufactured.
A Render of OpenBioPrint in Onshape.
A Render of OpenBioPrint in OnShape. A 3D render of OpenBioPrint in Onshape, modeled down to the last fastener. There are three separate enclosures; the upper, containing the modified TAZ6, the center, containing the E-STOP and temperature regulation control board, and the lower incubator compartment to act as a temperature controlled incubator.
The Aquaholics team, posing before competition.
The Aquaholics team, posing before competition. A photo of the aquaholics team. From left-to-right: Myself (yes, my hair was quite long!), Cody Cuenco (Obscured), Braydon Phillips, Blake Ehlers, Jacob Galindo, Joslyn Francis, and Mason Olson. You'll see the dual controls of our boat piloted by mock-lego joysticks. Sensor feedback and motor data are available on the screen in the center, and the power distribution system is in the cooler box on the back. This boat won first place in maneuverability and drag-race time.
Aquaholics Boat Control Block Diagam
The Aquaholics Boat Control Block Diagram. My first block-diagram for a real system. Describes the number of pins and the state lines used to control state on the Aquaholics vessel. For anybody who thinks this is overcomplicated--so do I. But many of these components were required to get a satisfactory grade.