One of our favorite scenes from the [James Bond] franchise is the classic exchange between [Goldfinger] and [Bond]. [Connery] (the One True Bond) says, “You expect me to talk?” And the reply is, “No Mr. Bond, I expect you to die!” When it comes to the ESP32, though, apparently [XTronical] expects it to talk. He posted a library to simplify playing WAV files on the ESP32. There is also a video worth watching, below.
Actually, you might want to back up to his previous post where he connects a speaker via one of the digital to analog converters on the board. In that post, he just pushes out a few simple waveforms, but the hardware is the same setup he uses for playing the WAV files.
There is some dispute as to which company invented the microprocessor, and we’ll talk about that further down. But who invented the first commercially available microprocessor? That honor goes to Intel for the 4004.
Path To The 4004
We pick up the tale with Robert Noyce, who had co-invented the IC while at Fairchild Semiconductor. In July 1968 he left Fairchild to co-found Intel for the purpose of manufacturing semiconductor memory chips.
While Intel was still a new startup living off of their initial $3 million in financing, and before they had a semiconductor memory product, as many start-ups do to survive they took on custom work. In April 1969, Japanese company Busicom hired them to do LSI (Large-Scale Integration) work for a family of calculators.
Busicom’s design, consisting of twelve interlinked chips, was considered a complicated one. For example, it included shift-register memory, a serial type of memory which complicates the control logic. It also used Binary Coded Decimal (BCD) arithmetic. Marcian Edward Hoff Jr — known as “Ted”, head of the Intel’s Application Research Department, felt that the design was even more complicated than a general purpose computer like the PDP-8, which had a fairly simple architecture. He felt they may not be able to meet the cost targets and so Noyce gave Hoff the go-ahead to look for ways to simplify it.
We can say one thing for [bitluni]: the BOMs for his projects, like this ESP32 AM radio transmitter, are always on the low side. That’s because he leverages software to do jobs traditionally accomplished with hardware, always with instructive results.
If you’re looking for a little more range for your low power transmitter and you’re a licensed amateur operator, you might want to explore the world of QRP radio.
Prolific maker [Sean Hodgins] has taken the wraps off of his latest one-day build, and as usual, it takes the kind of spare parts most people reading Hackaday will have in their parts bins and turns it into something fun and useful. This time around, he takes a bunch of spare arcade-style buttons he had from a previous project and combines them with an Adafruit Trinket (SAMD21 flavor) to make a USB input device for his computer.
[Sean] uses 1/4 inch acrylic to make the case, though he does mention that it could just as easily be 3D printed. But using the acrylic is easy and gives a nice glossy look to the final hardware. With a saw and a drill press you can make some very professional cases out of acrylic, which goes to show that you don’t necessarily need to have a high end 3D printer to create great looking enclosures.
As explained in the video, the Adafruit Trinket is not strictly necessary for this build, it’s just what [Sean] had lying around. Any microcontroller that can present itself to the operating system as a USB Human Interface Device (HID) will work fine for a project like this.
Software wise, a modified Arduino demo program is used to equate the states of the digital pins to pre-defined key combinations to be sent to the computer. In this simple example the key combinations are hard-coded into the Trinket’s source code, but a future enhancement could be adding a method of setting up new key combinations with a configuration tool.
It is sort of an electronics rule 34 that if something occurs, someone needs to sense it. [Bblorgggg], for reasons that aren’t immediately obvious, needs to sense ants moving over trees. No kidding. How are you going to do that? His answer was to use graphene.
Actually, his super sensitive sensors mix graphene in Silly Putty, an unlikely combination that he tried after reading (on Hackaday, no less) about similar experiments at Trinity College resulting in Gputty. The Gputty was highly sensitive to pressure, and so it appears is his DIY version called Goophene. At Trinity they claimed to be able to record the footsteps of a spider, so detecting ant stomping didn’t seem too far-fetched. You can see a video of the result, below.
As hackers, we occasionally forget that not everyone is enamored with the same nerdy minutia that we are. Configuring hardware by changing some lines in the code and compiling a new firmware doesn’t sound like that big of a deal to those of us who’ve been around the block a few times, but might as well be ancient Sanskrit to the average person. As long as your projects are for personal use this isn’t really a concern, but what if you plan on distributing the code for a project or perhaps even selling finished products? Shipping it out with hard-coded variables simply isn’t an option.
With the setup demonstrated in the video below by [Proto G], you don’t need anything more exotic than a web browser to configure the device. The end user simply searches for the device’s WiFi network, connects to it, and is presented with an easy to understand dialog which has them select a WiFi network to configure against along with some fields to enter in custom variables. All this information is then stored to a file on the SPI flash. When the ESP32 reboots, it reads the configuration from the saved file and applies the requested settings.
This is very similar to how many consumer devices are now configured, and even the less technically-inclined recipients of such a device should be able to work through the setup with a bit of hand-holding. If you plan on handing one of your ESP32 projects to John Q. Public, this is the kind of configuration you should be aiming for.
[Syonyk] read that you could solder a few wires to a TEC-06 battery capacity tester, connect it to a TTL serial adapter, and it would interface with some Windows software via a serial port. You can buy it already enabled for serial, but since he had the non-connected version, he was interested in trying it. Not only did it work, but he took the time to reverse engineer the protocol and made a detailed write up about his findings and how he attacked the problem.
Around here, we never need an excuse to reverse engineer anything. But [Synonyk] mentions that he didn’t like using Windows-only software from China. If he wants it on Linux, or if Windows compatibility breaks with a new version, or if the software has spyware in it, he wants to be able to continue using the device. Of course, he also admits — and we get it — that he just enjoys doing it, too.