ESP8266-Powered Receipt Printer Puts RESTful API On Dead Trees

Taking his digital information into the real-world, [Davide Gironi] has built his own note transcriber from a point-of-sale receipt printer and an ESP8266.

You’ve seen these receipt printers at the order window of restaurants. A server puts in an order from any of the machines throughout the restaurant and a paper summary spits out for the chef line to start in on (and even cuts itself off from the roll).  Why shouldn’t we have this convenience in our own lives?

The printer communicates using a variant of the Epson Standard Code for Printers, for which [Davide] has written a library and thankfully shared the code. Adding an ESP8266 using a couple voltage regulators and some passive components makes this wireless, except for power. It has all the fun bells and whistles to set up the WiFi credentials and once running, just push the button on the base and it’ll spit out your data.

But wait, where is that data coming from? The web-based settings page lets you configure a URI to the RESTful source of your choosing. (XKCD has one, don’t they?) It also lets you configure header, footer, error messages, and of course your company hacker logo.

One of our favorite receipt-printer moments was when Hackaday editor of yore [Eliot Phillips] brought a selfie receipt printer to Supercon. We couldn’t find any pictures of that one, so we’ll leave you with the excellent hack [Sam Zeloof] pulled off by cramming one of these into a Polaroid camera.

Continue reading “ESP8266-Powered Receipt Printer Puts RESTful API On Dead Trees”

RetroArch Open Hardware Aims For Plug-and-Play

At its core, the RetroArch project exists to make it easier to play classic games on more modern hardware. The streamlined front-end with its tailored collection of emulators helps take the confusion out of getting your favorite game from decades past running on whatever gadget you please, from your smartphone to the venerable Raspberry Pi. But there’s always room for improvement.

In a recent blog post, the folks behind RetroArch took the wraps off of an exciting hardware project that’s been in the works for about a year now. Referred to simply as “RetroArch Open Hardware”, the goal is to develop a fully open source cartridge adapter that will integrate seamlessly with the RetroArch software. Just plug in your original cartridge, and the game fires right up like back in the good old days.

Now to be clear, this isn’t exactly a new idea. But the team at RetroArch explain that previous devices that blurred the line between hardware and emulation have been expensive, hard to find, and worst of all, proprietary. By creating an open hardware project, they hope to truly unleash this capability on the community. Instead of having to deal with one vendor, multiple companies will be free to spin up their own clones and potentially even improve the core design. Should none of the ones on the market fit your particular needs, you’d even be free to build your own version,

What’s more, the gadget will also make it easier to create your own ROMs from cartridges you own. By appearing to the operating system as a USB Mass Storage device, users can literally drag and drop a game ROM to their computer’s desktop. No arcane software fired off from the command line; as much as we might enjoy such things, it’s not exactly intuitive for the gaming community at large. The same technique will also allow users to backup their saved progress before it’s inevitably lost to the ravages of time. The device demonstrated by the team currently only works on Nintendo 64 games, but presumably compatibility with be expanded to other cartridges in the future.

Over the years, we’ve seen a number of hombrew devices designed to read and copy game cartridges. We’ve even seen some rather polished examples that were released as open hardware. But those devices never had the public backing of such a well known group in the emulation scene, and we’re excited to see what kind of development and adoption can be spurred on by this level of legitimacy.

[Thanks to Nick for the tip.]

3D-Printed Macro Pad Ditches The PCB With Slick Wiring Guides

Reddit user [duzitbetter] showed off their design for a 3D-printed programmable macro keyboard that offers a different take on what can be thought of as a sort of 3D-printed PCB. The design is called the Bloko 9 and uses the Raspberry Pi PICO and some Cherry MX-style switches, which are popular in DIY keyboards.

The enclosure and keycaps are all 3D printed, and what’s interesting is the way that the enclosure both holds the components in place as well as providing a kind of wire guide for all the electrical connections. The result is such that bare copper wire can be routed and soldered between leads in a layout that closely resembles the way a PCB would be routed. The pictures say it all, so take a look.

Bloko 9 is available as a paid model, and while going PCB-free thanks to 3D printing is a technique others have played with, it is very well demonstrated here and shows there is still plenty of room to innovate on the concept. DIY keyboard and macro pad design is also fertile ground for hackers; we have even seen that it’s possible to 3D print one right down to the switches themselves.

There’s Only One Way To Play A Star Wars Game

Most computer and console games have a variety of different control schemes depending on the controller peripheral the player has to hand. For Star Wars games the fight scenes may be playable with a gamepad, but perhaps that leaves a little to desired in the realism department.  In that case, [Leonardo Moreno] has the solution, in the form of a motion sensing light sabre for gaming via gesture control.

The first part of any light sabre project is the sabre itself, and for this he uses soft transparent PVC tubing. This might seem an insubstantial choice, but makes sense when the possibility of hitting an expensive television or gamers monitor with it is considered. Up the pipe goes a piece of LED strip, and onto it a hilt containing an Arduino and an MPU6050 gyroscope sensor. The physical controls come courtesy of a small analogue joystick and a trigger fashioned from a wooden clothes pin. The result may be a little rough and ready, but it’s undeniably a light sabre. Full instructions and software can be found at the link.

Light sabres have been a perennial build, but few have captured the original better than this laser based one.

DIY USB-C Touch Monitor Is All Polished Brass

We’ve known for a while that you can buy interface boards to turn old laptop screens into standalone monitors, but complete sets with 4K panels and control boards are also now becoming widely available on sites like eBay and AliExpress, and prices are dropping. These sets are also available with low-profile connectors like micro HDMI and USB-C, which allow for some very compact builds.

[Matt] from [DIY Perks] used one of these sets to build a slimline USB-C monitor with a brass enclosure. Video after the break. The enclosure consists of brass sheets and U-channel pieces soldered and screwed together. There is quite a bit of residue and discoloration after soldering, but this was removed with a bit of sanding and polishing. A pair of adjustable legs were added to allow it to stand on its own, and an additional chamber on the back holds the control board, an old smartphone battery, and a battery protection circuit. [Matt] also added a pair of removable speakers, which are sealed speaker units covered in brass mesh and plate.

We’ve covered several DIY monitor builds over the years, and they are perfect as an additional monitor for a laptop, or for pairing with the Raspberry Pi 400 with its integrated keyboard. We really [Matt]’s builds, which include a smartphone-based 4K projector, and a very effective cooling system for an expensive DSLR camera. Continue reading “DIY USB-C Touch Monitor Is All Polished Brass”

Audio Out Over A UART With An FTDI USB-To-TRS Cable

What is the easiest way to get audio from a WAV file into a line-level format, ready to be plugged into the amplifier of a HiFi audio set (or portable speaker)? As [Konrad Beckmann] demonstrated on Twitter, all you really need is a UART, a cable and a TRS phono plug. In this case a USB-TTL adapter based around the FTDI FT232R IC: the TTL-232R-3V3-AJ adapter with 12 Mbps USB on one end, and a 3 Mbps UART on the other end.

[Konrad] has made the C-based code available on GitHub. Essentially what happens underneath the hood is that it takes in a PCM-encoded file (e.g. WAV). As a demonstration project, it requires the input PCM files to be a specific sample rate, as listed in the README, which matches the samples to the baud rate of the UART. After this it’s a matter of encoding the audio file, and compiling the uart-sound binary.

The output file is the raw audio data, which is encoded in PDM, or Pulse-Density Modulation. Unlike Pulse-Code Modulation (PCM), this encoding method does not encode the absolute sample value, but uses binary pulses, the density of which corresponds to the signal level. By sending PDM data down the UART’s TX line, the other side will receive these bits. If said receiving device happens to be an audio receiver with an ADC, it will happily receive and play back the PDM signal as audio. As one can hear in the video embedded in the tweet, the end result is pretty good.

 

If we look at at the datasheet for the TTL-232R-3V3-AJ adapter cable, we can see how it is wired up:

When we compare this to the wiring of a standard audio TRS jack, we can see that the grounds match in both wirings, and TX (RX on the receiving device) would match up with the left channel, with the right channel unused. A note of caution here is also required: this is the 3.3V adapter version, and it lists its typical output high voltage as 2.8V, which is within tolerances for line-level inputs. Not all inputs will be equally tolerant of higher voltages, however.

Plugging random TRS-equipped devices into one’s HiFi set, phone or boombox is best done only after ascertaining that no damage is likely to result.  Be safe, and enjoy the music.

Launching An Open Source Keyboard; System76 Has Published Their Design Files

System76, a computer manufacturer known for selling machines which run Linux, recently unveiled the complete sources for their forthcoming Launch mechanical keyboard. Made with familiar tools, mass produced, and backed by a stable company it looks like the Launch will be a compelling entrant into the world of mechanical keyboards.

Back in March of 2020 System76 published a blog post about a new project they were embarking on; a mechanical keyboard with an unusual layout. At the time there was scant information available besides a summer 2021 target and little was heard until last week when they opened up access to the Launch repository. Everything should be recognizable if you’ve ever looked at the sources for a customized mechanical keyboard before, which is what gets our attention. Electrical sources are authored with KiCad and should be easy to tweak or fabricate. And mechanical components are provided in STEP files with mechanical drawings, presumably because they intend to actually manufacture these.

launch-chassis.pngFeature wise all the usual hallmarks of a well designed keyboard are here. The Launch uses hostswap sockets to make it easy to install the usual Cherry MX compatible switch options, and includes per-key RGB backlighting courtesy of SK6805 LEDs. The ATmega32U4 runs the popular and extremely capable QMK firmware instead of something bespoke, so it should be easy to customize to the user’s desire.

System76 touts an unusual key layout, but if you’ve seen a 75% keyboard before it shouldn’t be too threatening (though we do wonder about that shrunken right shift). The most unusual feature is that it features a USB hub capable of full speed 10 gigabit USB 3.1 Gen 2 on two USB-C and two USB-A ports. It’s worth checking out the schematic to appreciate how much more complicated the hub design is than the rest of the keyboard, which is practically vestigial in comparison.

The remaining unknown is how the Launch integrates with Pop!_OS, System76’s awkwardly named remix of Ubuntu. They promise deep, compelling integration and we’re excited to see how that manifests.