> As a hobbyist I found hardware to be quite impenetrable, given the hard mathematics and physics requirements.
IMO there aren't any. It's mostly about reading datasheets, and connecting pins to each other IOC those datasheets.
Maybe the physics and mathematics are more important for analog electronics or designing ASICS?
Do you have any specific projects you'd like to build? Post here and we can talk through it. And/or start by downloading KiCAD and clicking around until you understand the UI.
The programming side is mainly also reading datasheets. Instead of connecting the right pins together, you are writing a certain value to a register, as described in tables.
> It's mostly about reading datasheets, and connecting pins to each other IOC those datasheets .. Maybe the physics and mathematics are more important for analog electronics or designing ASICS?
I agree that electronics is very accessible, and I'll add that in my experience as an EEE the main beginner gotcha is bad PCB layout rather than maths/physics.
For a flight controller say, bad layout would manifest as slightly noisier sensor readings and reduced radio range. But assuming this is 4 layers https://www.anyleaf.org/mercury-g4 then you probably know what you're doing :) - ditto for OP's article.
Simple layout rules will take anyone 99% percent of the way to professional results. Ground planes on inside (or bottom) layers, signals on outside (or top). Don't cut ground planes. Decoupling caps close to ICs. Keep current loops small. Vertical traces on one side, horizontal on the other. A single youtube video could teach you all that.
When I used to do this stuff for a job, math/physics was only needed for analog electronics (interfacing to hardware like specialized/novel sensors), optimizing control systems and signal processing, and general cost/efficiency engineering - but you could go a long way without it.
The truth is I use my phone a lot. I even write code on my phone, touch screen and all. It's limiting but I put up with it because the handheld form factor is too comfortable, I can use it from anywhere, even in bed.
The cyberdeck is meant to replace the phone with a real keyboard and x86_64 Linux computer, plus any useful peripherals I can cram into the thing. I wanted to use the LattePanda Mu, an Intel N100 System on Module.
I've actually downloaded KiCad and just started using it, figuring I just needed to get started and I'd figure it out as I went along. I just opened up the example schematics I downloaded and started connecting dots like a baby. I actually made some progress, even identified some issues with builtin KiCad libraries, like host/card PCIe socket mismatches that would lead to ERC failures, even tried to contribute those. Then I got severely intimidated when I realized I was trying to route PCIe lines, something even literal professional engineers on discord balked at. That killed the project for some time.
My second attempt came after I subscribed to Claude, who made me aware that the PCIe lines I was dealing with were third generation, and therefore "forgiving". Then I made more progress.
I managed to make some mockups and measure the exact comfortable typing range of my thumbs, and from that I derived an awesome keyboard layout. The keyboard prototype, the thing that will make or break the design, is already at the part where I need to spend real cash on it to have manufactured and shipped so I can test the switches. The taxes involved make it very expensive to make mistakes, though. It doubles the costs of everything.
So I switched to trying everything I can to make the entire system correct before I ship it. Finish the system as a whole and pay for a professional review of the entire thing before shipping even a single prototype. Asked Claude to help me design a safe power supply with BQ25792. Chose the screen for the deck, the same screen used by the Asus ROG Ally.
Wanted to design the full PCB too but I'm unsure if I should create a standalone keyboard first in order to test it out as a separate project. I feel like the whole project depends on it, but it doesn't make financial sense to prototype just that component.
Is there a way to ensure correctness before spending money on this hardware? I'd hate to spend money on this stuff, only to find it doesn't work. How can I reduce this risk?
IMO there aren't any. It's mostly about reading datasheets, and connecting pins to each other IOC those datasheets.
Maybe the physics and mathematics are more important for analog electronics or designing ASICS?
Do you have any specific projects you'd like to build? Post here and we can talk through it. And/or start by downloading KiCAD and clicking around until you understand the UI.
The programming side is mainly also reading datasheets. Instead of connecting the right pins together, you are writing a certain value to a register, as described in tables.