Linux Fu: The Cheap Macropad Conundrum

You can get cheap no-brand macropads for almost nothing now. Some of them have just a couple of keys. Others have lots of keys, knobs, and LEDs. You can spring for a name brand, and it’ll be a good bet that it runs QMK. But the cheap ones? Get ready to download Windows-only software from suspicious Google Drive accounts. Will they work with Linux? Maybe.

Of course, if you don’t mind the keypad doing whatever it normally does, that’s fine. These are little more than HID devices with USB or Bluetooth. But what do those keys send by default? You will really want a way to remap them, especially since they may just send normal characters. So now you want to reverse engineer it. That’s a lot of work. Luckily, someone already has, at least for many of the common pads based around the CH57x chips.

Continue reading “Linux Fu: The Cheap Macropad Conundrum”

Solar Light? Mains Light? Yes!

So you want a light that runs off solar power. But you don’t want it to go dark if your batteries discharge. The answer? A solar-mains hybrid lamp. You could use solar-charged batteries until they fall below a certain point and then switch to mains, but that’s not nearly cool enough. [Vijay Deshpande] shows how to make a lamp that draws only the power it needs from the mains.

The circuit uses DC operation and does not feed power back into the electric grid. It still works if the mains is down, assuming the solar power supply is still able to power the lamp. In addition, according to [Vijay], it will last up to 15 years with little maintenance.

The circuit was developed in response to an earlier project that utilized solar power to directly drive the light, when possible. If the light was off, the solar power went to waste. Also, if the mains power failed at night, no light.

The answer, of course, is to add a battery to the system and appropriate switching to drive the lights or charge the battery and only draw power from the mains when needed. Since the battery can take up the slack, it becomes easier to load balance. In periods of low sunlight, the battery provides the missing power until it can’t and then the mains supply takes over.

Comparators determine whether there is an under-voltage or over-voltage and use this information to decide whether the battery charges or if the main supply takes over. Some beefy MOSFETs take care of the switching duties. Overall, a good way to save and reuse solar cell output while still drawing from the grid when necessary.

Small solar lights don’t take much, but won’t draw from commercial power. Solar “generators” are all the rage right now, and you could probably adapt this idea for that use, too.

Models Of Wave Propagation

[Stoppi] always has interesting blog posts and videos, even when we don’t understand all the German in them. The latest? Computer simulation of wave propagation (Google Translate link), which, if nothing else, makes pretty pictures that work in any language. Check out the video below.

Luckily, most browsers will translate for you these days, or you can use a website. We’ve seen waves modeled with springs before, but between the explanations and the accompanying Turbo Pascal source code, this is worth checking out.

Continue reading “Models Of Wave Propagation”

Learn Computing? Head For MonTana!

We’ve often thought that it must be harder than ever to learn about computers. Every year, there’s more to learn, so instead of making the gentle slope from college mainframe, to Commodore 64, to IBM PC, to NVidia supercomputer, you have to start at the end. But, really, you don’t. You can always emulate computers from simpler times, and even if you don’t need to, it can be a lot of fun.

That’s the idea behind the MonTana mini-computer. It combines “…ideas from the PDP-11, MIPS, Scott CPU, Game Boy, and JVM to make a relatively simple 16-bit computer…”

The computer runs on Java, so you can try it nearly anywhere. The console is accessed through a web browser and displays views of memory, registers, and even something that resembles a Game Boy screen. You’ll need to use assembly language until you write your own high-level language (we’d suggest Forth). There is, however, a simple operating system, MTOS.

This is clearly made for use in a classroom, and we’d love to teach a class around a computer like this. The whole thing reminds us of a 16-bit computer like the PDP-11 where everything is a two-byte word. There are only 4K bytes of memory (so 2K words). However, you can accomplish a great deal in that limited space. Thanks to the MTOS API, you don’t have to worry about writing text to the screen and other trivia.

It looks like fun. Let us know what you’ll use it for. If you want to go down a level, try CARDIAC. Or skip ahead a little, and teach kids QBasic.

A History Of Pong

Today, creating a ground-breaking video game is akin to making a movie. You need a story, graphic artists, music, and more. But until the middle of the 20th century, there were no video games. While several games can claim to be the “first” electronic or video game, one is cemented in our collective memory as the first one we’d heard of: Pong.

The truth is, Pong wasn’t the first video game. We suspect that many people might have had the idea, but Ralph Baer is most associated with inventing a practical video game. As a young engineer in 1951, he tried to convince his company to invest in games that you could play on your TV set. They didn’t like the idea, but Ralph would remember the concept and act on it over a decade later.

But was it really the first time anyone had thought of it? Perhaps not. Thomas Goldsmith Jr. and Estle Ray Mann filed a patent in 1947 for a game that simulated launching missiles at targets with an oscilloscope display. The box took eight tubes and, being an oscilloscope, was a vector graphic device. The targets were physical dots on a screen overlay. These “amusement devices” were very expensive, and they only produced handmade prototypes.

Continue reading “A History Of Pong”

Signal Injector Might Still Be Handy

Repairing radios was easier when radios were simple. There were typically two strategies. You could use a signal tracer (an amplifier) to listen at the volume control. If you heard something, the problem was after the volume control. If you didn’t, then the problem was something earlier in the signal path. Then you find a point halfway again, and probe again. No signal tracer? You can also inject a signal. If you hear it, the problem is before the volume. If not, it is after. But where do you get the signal to inject? [Learn Electronics Repair] sets out to make a small one in a recent video you can see below.

Both signal tracers and injectors were once ubiquitous pieces of equipment when better options were expensive. However, these days, you can substitute an oscilloscope for a signal tracer and a signal generator for an injector. Still, it is a fun project, and a small dedicated instrument can be handy if you repair a lot of radios.

The origin of this project was from an earlier signal injector design and a bet with a friend about making a small version. They are both working on their designs and want people to submit their own designs for a littleĀ ad hoc contest.

We always preferred a signal tracer since it is more passive. Those were typically just audio amplifiers with an optional diode in the input to demodulate RF. A computer amplified speaker and a diode can do the job, as can an LM386. Or, you can build something complex, if you prefer.

Continue reading “Signal Injector Might Still Be Handy”

Read QR Codes On The Cheap

Adding a camera to a project used to be a chore, but modern camera modules make it simple. But what if you want to read QR codes? [James Bowman] noticed a $7 module that claims to read QR codes so he decided to try one out.

The module seems well thought out. There’s a camera, of course. A Qwiic connector makes hooking up easy. An LED blinks blue when you have power and green when a QR code shows up.

Reading a QR code was simple in Python using the I2CDriver library. There are two possible problems: first, if the QR code contains a large amount of data, you may exceed the I2C limit of 254 bytes. Second, despite claiming a 110-degree field of view, [James’] testing showed the QR code has to be almost dead center of the camera for the system to work.

What really interested us, though, was the fact that the device is simply a camera with an RP2040 and little else. For $7, we might grab one to use as a platform for other imaging projects. Or maybe we will read some QR codes. We’d better pick up a few. Then again, maybe we can just do it by hand.