In a world where standards come and go with alarming speed, there’s something comforting about VGA. It’s the least common denominator of video standards, and seeing that chunky DB15 connector on the back of a computer means that no matter what, you’ll be able to get something from it, if you can just find a VGA cable in your junk bin.
But that’s the PC world; what about microcontrollers? Can you coax VGA video from them? Yes, you can, with an ESP32, a handful of resistors, and a little bit of clever programming. At least that’s what [bitluni] has managed to do in his continuing quest to push the ESP32 to output all the signals. For this project, [bitluni] needed to generate three separate signals – red, green, and blue – but with only two DACs on board, he had to try something else. He built external DACs the old way using R/2R voltage divider networks and addressed them with the I2S bus in LCD mode. He needed to make some compromises to fit the three color signals and the horizontal and vertical sync pulses into the 24 available bits, and there were a few false starts, but the video below shows that he was able to produce a 320×240 signal, and eventually goosed that up to a non-native 460×480.
It’s a pretty impressive hack, and we learned a lot about both the ESP32 and the VGA standard by watching the video. He’s previously used the ESP32 to build an AM radio station and to output composite PAL video, and even turned his oscilloscope into a vector display with it. They’re all great learning projects too.
Continue reading “Back to Video Basics with an ESP32 VGA Display”
[Kerry Wong] comes across the coolest hardware, and always manages to do something interesting with it. His widget du jour is an old demo board for a digital RF attenuator chip, which can pad a signal in discrete steps according to the settings of some DIP switches. [Kerry]’s goal: forget the finger switch-flipping and bring the attenuator under Arduino control.
As usual with his videos, [Kerry] gives us a great rundown on the theory behind the hardware he’s working with. The chip in question is an interesting beast, an HMC624LP4E from Hittite, a company that was rolled into Analog Devices in 2014. The now-obsolete device is a monolithic microwave integrated circuit (MMIC) built on a gallium arsenide substrate rather than silicon, and attenuates DC to 6-GHz signals in 64 steps down to -31.5 dBm. After a functional check of the board using the DIP switches, he whipped up a quick Arduino project to control the chip with its built-in serial interface. It’s just a prototype for now, but spinning the encoder is a lot handier than flipping switches, and once this is boxed up it’ll make a great addition to [Kerry]’s RF bench.
If this video puts you in an RF state of mind, check out some of [Kerry]’s other videos, like this one about temperature-compensated crystal oscillators, or the mysteries of microwave electronics.
Continue reading “Digital Attenuator Goes from Manual to Arduino Control”
If the computer you have isn’t particularly fast, there’s a well-documented way to get more out of it. You just need more of the same computer, and you can run your tasks on them all at the same time. Building computer clusters is an effective way of decreasing the time it takes for computers to solve certain problems, even if the computers themselves aren’t top-of-the-line hardware. Of course, with cheap enough hardware, people will build clusters out of just about anything, including the ESP32.
For this project, [Wei Lin] admits that this isn’t really a serious attempt at building speedy hardware, but rather an interesting exercise in creating a cluster as a sort of learning experience. ESP32 boards can be found for around $10 so building an experimental cluster with these is even more feasible than using the Raspberry Pi. [Wei Lin] goes into a great amount of detail on his GitHub page about all of his goals with the project, most of which involve exploring the functionality of the new cluster and its underpinnings.
While this might seem like little more than a thought experiment, it does have the advantage of being a great solution for problems that involve gathering data from points that are physically very far from one another. If you’ve ever been interested in parallel computing or computing clusters, this is a great project to check out. If you have more Raspberry Pis on hand than ESP32s and still want to build a cluster, check out this project that used a mere 750 of them for one.
Long ago, when mainframes ruled the earth, computers were mute. In this era before MP3s and MMUs, most home computers could only manage a simple beep or two. Unless you had an add-on device like the Covox Speech Thing, that is. This 1986 device plugged into your parallel port and allowed you to play sound. Glorious 8-bit, mono sound. [Yeo Kheng Meng] had heard of this device, and wondered what it would take to get it running again on a modern Linux computer. So he found out in the best possible way: by doing it.
Continue reading “Making A Covox Speech Thing Work On A Modern PC”
Gravity can be a difficult thing to simulate effectively on a traditional CPU. The amount of calculation required increases exponentially with the number of particles in the simulation. This is an application perfect for parallel processing.
For their final project in ECE5760 at Cornell, [Mark Eiding] and [Brian Curless] decided to use an FPGA to rapidly process gravitational calculations. This allows them to simulate a thousand particles at up to 10 frames per second. With every particle having an attraction to every other, this works out to an astonishing 1 million inverse-square calculations per frame!
The team used an Altera DE2-115 development board to build the project. General operation is run by a Nios II processor, which handles the VGA display, loads initial conditions and controls memory. The FPGA is used as an accelerator for the gravity calculations, and lends the additional benefit of requiring less memory access operations as it runs all operations in parallel.
This project is a great example of how FPGAs can be used to create serious processing muscle for massively parallel tasks. Check out this great article on sorting with FPGAs that delves deeper into the subject. Video after the break.
Continue reading “Gravity Simulations With An FPGA”
[Henryk] just sent us his latest episode of simple LED circuit puzzles. In front of the camera he solders one pin of each of the 3 LEDs to a different switch. He then puts the three assemblies in his hand and flips each switch to make the corresponding LED come on. We look forward to your explanations in the comments.
You may remember two other videos that [Henryk] made (also embedded after the break). The first video was a simple circuit with a resistor, three switches, and three LEDs in series. When a battery was connected, the LEDs were somehow switched on one at a time.The second video featured the same resistor/switches/LEDs, this time in a parallel circuit. Turning on the first switch made the first LED light up, and the second switch made the second LED light up.
Here are the few other troll physics projects we featured: the original LED circuits post, the super deluxe edition and the amazing solution to the trickery.
Continue reading “Troll physics: 3 LEDs powered by hand”
The accuracy which [Mario] achieved in his pen plotter dot matrix printer is very remarkable. He tore through a pile of floppy drives to get the parts he wanted, and chose to go with a fine-point Sharpie marker as a print head. In the video after the break he flatters us with a printout of the Hackaday logo, but you also get a look at one problem with the build. The ink doesn’t always flow from the felt tip and he has to coax it (almost like priming a pump) with a piece of scrap paper.
He was inspired by the pen printer we featured back in June. This rendition features a printing area of 1.5×1.5 inches that can accommodate 120×120 black and white pixels. He’s not a microcontroller type of guy and is driving the printer from the parallel port of his computer.
The best printing technique puts the pen down and moves it around just a bit (helps prevent the ink flow problem we mentioned earlier) and produces images like one in the lower right. We love the 8-bit nature of the result and would use this all the time to make our own greeting cards.
Continue reading “Tearing through floppy drives to build a small-format dot matrix printer”