01 / START WITH A QUESTION
How do you get from following instructions to making your own decisions?
You get a project working. Then you want to change one thing: use a different sensor, send the result somewhere else, make it run unattended. Suddenly the instructions stop answering your questions.
That is a useful place to start learning. Which part do you understand? Which part are you guessing about? What small experiment would help you tell the difference?
Rutherford Tech is starting a series built around those questions. We will use one inexpensive, reusable development board across different projects. Each project should leave you with something useful, a clearer explanation of how it works, and a sensible place to go next.
Predict what will happen. Change one thing. Observe the result. Explain what you can, and write down the next question.
You can begin with no electronics experience. You can also know a great deal about software and still be new to voltage, timing, or what happens on a wire. Start with the part you want to understand.
02 / KNOW WHAT YOU ARE HOLDING
A small computer for a particular job.
The ESP32-S3 is a microcontroller: a processor designed to run embedded programs that interact with other hardware. A development board puts it alongside the power circuitry, connectors, and accessible pins that make experimentation practical.
You write a program on a laptop or desktop and send it to the board. The board runs that program. It can read an input, make a decision, and produce an output, whether that means recording a measurement, sending a message, or changing an electrical signal.
The chip includes 2.4 GHz Wi-Fi, Bluetooth Low Energy, and USB capabilities. Those give us several directions to explore. A particular project still needs suitable software, connections, and sometimes additional components. Espressif describes the chip and its capabilities.
Three terms that will keep coming up
- Firmware
- The software stored on the device that starts when it powers up. Our initial experiments will use MicroPython, a Python runtime for microcontrollers.
- Flash
- Storage that keeps its contents when power is removed. Firmware and saved files occupy some of this space.
- RAM
- Working memory used while a program runs. The PSRAM included in our target board adds working memory, but software and runtime overhead affect how much is available to your program.
Our target configuration is called N16R8: 16 MB flash and 8 MB additional PSRAM. We have ordered boards for testing. We will verify the delivered hardware and document compatibility before giving readers a definitive buying list.
MicroPython provides an ESP32-S3 build and a separate variant for octal PSRAM, the memory arrangement in the target configuration. Choosing matching firmware is one of the details we will make explicit in the hands-on guide. See the official firmware options.
03 / TURN A GAP INTO A NEXT STEP
What would you like to be able to explain?
A broad subject becomes manageable when you have a concrete question. Use these examples to choose a direction. You do not need to learn the whole list before starting.
Why does pressing a button change a number?
Start with voltage, inputs, and a known circuit. Then explore how a program sees changes and why real switches can look noisy.
How can I tell whether my program is still working?
Start with a status message. Then learn about timing, missing messages, errors, and recovery.
How do two devices agree on what a message means?
Start by sending a few bytes between your own devices. Then explore message boundaries, formats, and what happens when data is incomplete.
What does this result actually prove?
Start by separating what you expected from what you observed. Then design a test that could show your explanation is wrong.
Spend your time on the next gap that blocks something you want to do. Keep a short note of the symptom, your prediction, the change you made, and the outcome. That note makes your own troubleshooting easier and gives someone else a useful starting point when you ask for help.
04 / TRY IT BEFORE THE HARDWARE ARRIVES
How long could you keep a measurement?
Imagine a program stores 100 readings every second, with four bytes for each reading. Give it a hypothetical one-MiB buffer, an area of working memory reserved for those readings. How long until that buffer is full?
Make a prediction first. Then run this with ordinary Python 3 on your computer, or work through the arithmetic on paper. The values describe an invented storage model, not a measurement from our boards.
sample_bytes = 4
samples_per_second = 100
buffer_bytes = 1024 * 1024
bytes_per_second = (
sample_bytes * samples_per_second
)
seconds = buffer_bytes / bytes_per_second
print(seconds / 60, "minutes")Check your prediction
The readings use 400 bytes each second. A buffer of 1,048,576 bytes lasts about 2,621 seconds, or 43.7 minutes. Double the sampling rate and it fills in half the time.
Now make the model more honest
Change the sampling rate to 1,000 readings per second. Predict the answer before running it. Then ask what the model leaves out: timestamps, message formatting, other program data, and the memory needed to keep the program itself running.
This calculation assumes the program can produce and store readings at the chosen rate. Real code must test that assumption. A Python list of numbers also uses more memory than a tightly packed four-byte-per-reading buffer. The calculation is a planning tool, not a promise of actual capacity or speed.
The same question applies to a temperature logger, audio recorder, network capture, or camera buffer. Understanding the units and assumptions helps you make a useful decision before buying a larger memory chip or rewriting a program.
05 / ONE FOUNDATION, SEVERAL DIRECTIONS
Join the projects that interest you.
The board is the common starting point. The projects can branch. You might want a USB control panel, a sensor logger, a networked display, or a way to understand communication between devices you own.
Each hands-on article will explain its result, list the exact parts and prerequisites, show an experiment, and make the expected observations clear. It will also cover likely failures and explain which conclusions the results support. If it depends on an earlier skill, it will link directly to that starting point.
You will need your own laptop or desktop to follow the hardware work. Start with a board and data cable when the tested setup guide is available. Additional parts and their costs will be listed per project, so there is no need to buy a large kit in advance.
This is the foundation article. The boards are ordered, and real-device validation is pending. The memory exercise above is a model. We will label simulations and measured results separately.
06 / BACK TO THE WORKBENCH
First, learn to ask the board.
The first hands-on guide in preparation is about connecting to a board and reading what it reports. A power light, a detected USB device, and a successful program exchange establish different things. We will work through those differences, including what to check when a step fails.
The full guides will live here on the website. Short summaries and links will appear on the Rutherford Tech Facebook Page. Rutherford Technology, our private Facebook Group, is the place to compare attempts, share your own directions, and ask questions.
The Group is new and membership is reviewed by an administrator. You can read the website without a Facebook account.