Pi Microcontroller Still Runs A Webserver

At first glance, the Raspberry Pi Pico might seem like a bit of a black sheep when compared to the other offerings from the Raspberry Pi Foundation. While most of the rest of their lineup can run Linux environments with full desktops, the Pico is largely limited to microcontroller duties in exchange for much smaller price tags and footprints. But that doesn’t mean it can’t be coerced into doing some of the things we might want a mainline Pi to do, like run a web server.

The project can run a static web page simply by providing the Pico with the project code available on the GitHub page and the HTML that you’d like the Pico to serve. It can be more than a static web page though, as it is also capable of running Python commands through the web interface as well. The server can pass commands from the web server and back as well, allowing for control of various projects though a browser interface. In theory this could be much simpler than building a physical user interface for a project instead by offloading all of this control onto the web server instead.

The project not only supports the RP2040-based Raspberry Pi Pico but can also be implemented on other WiFi-enabled microcontroller boards like the ESP8266 and ESP32. Having something like this on hand could greatly streamline smaller projects without having to reach for a more powerful (and more expensive) single-board computer like a Pi 3 or 4. We’ve seen some other builds on these boards capable of not only running HTML and CSS renderers, but supporting some image formats as well.

Continue reading “Pi Microcontroller Still Runs A Webserver”

Riding The Rails By Ebike

As most developed countries around the world continue to modernize their transportation infrastructure with passenger rail, countries in North America have been abandoning railroads for over a century now, assuming that just one more lane will finally solve their traffic problems. Essentially the only upside to the abandonment of railroads has been that it’s possible to build some unique vehicles to explore these tracks and the beautiful yet desolate areas they reach, and [Cam Engineering] is using an ebike to do that along the coast of central California.

Continue reading “Riding The Rails By Ebike”

Arbitrary Code Execution Over Radio

Computers connected to networks are constantly threatened by attackers who seek to exploit vulnerabilities wherever they can find them. This risk is particularly high for machines connected to the Internet, but any network connection can be susceptible to attacks. As highlighted by security researcher and consultant [Rick Osgood], even computers connected to nothing more than a radio can be vulnerable to attacks if they’re using certain digital modes of communication.

The vulnerability that [Rick] found involves exploiting a flaw in a piece of software called WinAPRS. APRS is a method commonly used in the amateur radio community for sending data over radio, and WinAPRS allows for this functionality on a PC. He specifically sought out this program for vulnerabilities since it is closed-source and hasn’t been updated since 2013. After some analysis, he found a memory bug which was used to manipulate the Extended Instruction Pointer (EIP) register which stores the memory address of the next instruction to be executed by the CPU. This essentially allows for arbitrary code execution on a remote machine via radio.

The exploit was found while using Windows XP because it lacks some of the more modern memory protection features of modern operating systems, but the exploit does still work with Windows 10, just not as reliably and with a bit of extra effort required. It’s a good reminder to use open-source software when possible so issues like these can get resolved, and to regularly install security updates when possible. If you’re looking to delve into the world of APRS in more modern times, take a look at this project which adds APRS to budget transceivers. Just make sure you get your license first.

Tube Amplifier Uses Low Voltage, Sips Battery

Much like vinyl records, tube amplifiers are still prized for their perceived sound qualities, even though both technologies have been largely replaced otherwise. The major drawback to designing around vacuum tubes, if you can find them at all, is often driving them with the large voltages they often require to heat them to the proper temperatures. There are a small handful of old tubes that need an impressively low voltage to work, though, and [J.G.] has put a few of them to work in this battery-powered audio tube amplifier.

The key to the build is the Russian-made 2SH27L battery tubes which are originally designed in Germany for high-frequency applications but can be made to work for audio amplification in a pinch. The power amplifier section also makes use of 2P29L tubes, which have similar characteristics as far as power draw is concerned. Normally, vacuum tubes rely on a resistive heater to eject electrons from a conductive surface, which can involve large amounts of power, but both of these types of tubes are designed to achieve this effect with only 2.2 volts provided to the heaters.

[J.G.] is powering this amplifier with a battery outputting 5V via a USB connection, and driving a fairly standard set of speakers borrowed from a computer. While there aren’t any audio files for us to hear, it certainly looks impressive. And, as it is getting harder and harder to find vacuum tubes nowadays, if you’re determined to build your own amplifier anyway take a look at this one which uses vacuum tubes built from scratch.

Printing Antennas On Circuit Boards

Yagi-Uda antennas, or simply “Yagis”, are directional antennas that focus radio waves to increase gain, meaning that the radio waves can travel further in that direction for a given transmitter power. Anyone might recognize an old TV antenna on a roof that uses this type of antenna, but they can be used to increase the gain of an antenna at any frequency. This one is designed to operate within the frequencies allotted to WiFi and as a result is so small that the entire antenna can be printed directly on a PCB.

The antenna consists of what is effectively a dipole antenna, sandwiched in between a reflector and three directors. The reflector and directors are passive elements in that they interact with the radio wave to focus it in a specific direction, but the only thing actually powered is the dipole in the middle. It looks almost like a short circuit at first but thanks to the high frequencies involved in this band, will still function like any other dipole antenna would. [IMSAI Guy], who created the video linked above which goes over these details also analyzed the performance of this antenna and found it to be fairly impressive as a WiFi antenna, but he did make a few changes to the board for some other minor improvements in performance.

The creator of these antennas, [WA5VJB] aka [Kent Britain] is an antenna builder based in Texas who has developed a few unique styles of antennas produced in non-traditional ways. Besides this small Yagi, there are other microwave antennas available for direction-finding, some wide-band antennas, and log-periodic antennas that look similar to Yagi antennas but are fundamentally different designs. But if you’re looking to simply extend your home’s WiFi range you might not need any of these, as Yagi antennas for home routers can be a lot simpler than you ever imagined.

Continue reading “Printing Antennas On Circuit Boards”

Opening Up ASIC Design

The odds are that if you’ve heard about application-specific integrated circuits (ASICs) at all, it’s in the context of cryptocurrency mining. For some currencies, the only way to efficiently mine them anymore is to build computers so single-purposed they can’t do anything else. But an ASIC is a handy tool to develop for plenty of embedded applications where efficiency is a key design goal. Building integrated circuits isn’t particularly straightforward or open, though, so you’ll need some tools to develop them such as OpenRAM.

Designing the working memory of a purpose-built computing system is a surprisingly complex task which OpenRAM seeks to demystify a bit. Built in Python, it can help a designer handle routing models, power modeling, timing, and plenty of other considerations when building static RAM modules within integrated circuits. Other tools for taking care of this step of IC design are proprietary, so this is one step on the way to a completely open toolchain that anyone can use to start building their own ASIC.

This tool is relatively new and while we mentioned it briefly in an article back in February, it’s worth taking a look at for anyone who needs more than something like an FPGA might offer and who also wants to use an open-source tool. Be sure to take a look at the project’s GitHub page for more detailed information as well. There are open-source toolchains if you plan on sticking with your FPGA of choice, though.

Electric Skateboard Becomes Mobile Skate Park

While building a skate park might not appear to have much in common with software development, at they very least, they both suffer from a familiar problem: scalability. Bigger skate parks need more ramps and features, and there’s no real way to scale up a construction project like this efficiently like you could with certain kinds of software other than simply building more features. This was something [Kirk] noticed, but was able to scale up a skate park in a way we’ve never thought of before. He built a mobile skateboard ramp that can turn any place into a skate park.

The mobile and approximately sidewalk-width platform is able to move around thanks to an electric skateboard as its foundation. It adds a NVIDIA Jetson Nano for control with a PS4 controller for input, although steering a skateboard with an actuator took a few prototypes to figure out since skateboards are designed to be steered by shifting the rider’s weight. Since they are already designed to carry a human-amount of weight, though, it was at least able to tote the ramp around with relative ease. Another problem was lowering the ramp into position when it got to the desired area, but with an electrically-controlled jack and a few rounds of debugging was eventually able to do this without much issue.

With all of that project development behind him, [Kirk] can finally realize his dream of having ramps scattered all across his neighborhood like in the classic videogame Paperboy, without needing to build them all individually or ask for permission to place them around his neighbor’s homes. For any future iterations of this build, we might consider adding tank tracks to the electric skateboard for better off-road performance, like facilitating a jump across a patch of grass.