10-Way Game Console Lets Everyone Play

[Bitluni]’s motto seems to be, “When you’re busy, get busier.” At least that would explain adding even more work to his plate in the run-up to the Hanover Maker Faire and coming up with a ten-player game console from scratch.

As for this being extra work, recall that [bitluni] had already committed to building a giant ping pong ball LED wall for the gathering. That consisted of prototyping a quarter-scale panel, building custom tooling to get him past the literal pain point of punching 1200 holes, and wiring, programming and testing the whole display. Building a game console that supports ten players at once seems almost tame by comparison. The console is built around an ESP32 module, either WROOM or WROVER thanks to a clever multifunctional pad layout on the slick-looking white PCBs. [bitluni] went with a composite video output using the fast R-2R ladder network DAC that he used for his ESP32 VGA project. The console supports ten Nintendo gamepads for a simple but engaging game something like the Tron light cycles. Unsurprisingly, players found it more fun to just crash into each other on purpose.

Sure, it could have been biting off more than he could chew, but [bitluni] delivered and we appreciate the results. There’s something to be said for adding a little pressure to the creative process.

Continue reading “10-Way Game Console Lets Everyone Play”

This Commodore 16 Is An NTSC One… No, Wait, It’s A PAL One!

We’re used to our computers being powerful enough in both peripheral and processing terms to be almost infinitely configurable under the control of software, but there was a time when that was not the case. The 8-bit generation of home computers were working towards the limits of their capability just to place an image on a TV screen, and every component would have been set up to do just the job it was intended for. Thus when different countries had different TV standards such as the mostly-European PAL and the mostly-American NTSC, there would have been different models of the same machine for each market. The Commodore 16 was just such a machine, and [Adrian Black] has modified his NTSC model with a custom ROM, an Arduino and an Si5351 clock generator to be switchable between the two.

The differences between a PAL and NTSC C16 are two-fold. The clock for the video chip is of a different frequency, and the ROM contents differ too. [Adrian]’s machine therefore has a larger ROM containing both versions which are switchable via one of the upper address lines. A couple of tracks cut in the crystal oscillator circuit allow him to inject a new clock from the Si5351 module, and and Arduino controls everything. The appropriate ROM and clock are selected via a very simple interface, the reset button is captured and while a short press still resets the computer a long one switches the mode.

Despite having its principal engineer, [Bil Herd] as a colleague here at Hackaday, it’s sad that we don’t see as many Commodore 16s as we should. A recent feature showed a 64k C16, but didn’t make it into a C64.

Continue reading “This Commodore 16 Is An NTSC One… No, Wait, It’s A PAL One!”

Video Mangler For All Your Video Mangling Needs

Back in the ’70s and ’80s, before we had computers that could do this sort of thing, there were fully analog video effects. These effects could posterize or invert the colors of a video signal, but for the best example of what these machines could do just go find some old music videos from Top of The Pops or Beat Club. Stuff gets weird, man. Unfortunately, all those analog broadcasting studios ended up in storage a few years ago, so if you want some sweet analog effects, you’re going to have to build your own. That’s exactly what [Julien]’s Video Mangler does. It rips up NTSC and PAL signals, does some weird crazy effects, and spits it right back out.

The inspiration for this build comes from an old ’80s magazine project called the ‘video palette’ that had a few circuits that blurred the image, turned everything negative, and could, if you were clever enough, become the basis for a chroma key. You can have a lot of fun when you split a video signal into its component parts, but for more lo-finess [Julien] is adding a microcontroller and a 12-bit DAC to generate signals that can be mixed in with the video signals. Yes, all of this can still be made now, even though analog TV died a decade ago.

The current status of this project is a big ‘ol board with lots of obscure chips, and as with everything that can be described as circuit bending, there’s going to be a big panel with lots of dials and switches, probably stuffed into a laser-cut enclosure. There’s a mic input for blurring the TV with audio, and enough video effects to make any grizzled broadcast engineer happy.

ESP32 Video Tricks Hack Chat With Bitluni

Join us Wednesday at noon Pacific time for the ESP32 Video Tricks Hack Chat!

The projects that bitluni works on have made quite a few appearances on these pages over the last couple of years. Aside from what may or may not have been a street legal electric scooter, most of them have centered around making ESP32s do interesting tricks in the analog world. He’s leveraged the DACs on the chip to create an AM radio transmitter, turned an oscilloscope into a video monitor, and output composite video. That last one was handy for turning a Sony Watchman into a retro game console. He’s also found ways for the ESP32 to output VGA signals. Looks like there’s no end to what he can make the versatile microcontroller do.

Although the conversation could (and probably will) go anywhere, we’ll start with video tricks for the ESP32 and see where it goes from there. Possible topics include:

  • Tricks for pushing the ESP32 DACs to their limits;
  • When to use an external DAC;
  • Optimizing ESP32 code by running on separate cores; and
  • What about HDMI on the ESP32?

You are, of course, encouraged to add your own questions to the discussion. You can do that by leaving a comment on the ESP32 Video Tricks Hack Chat and we’ll put that in the queue for the Hack Chat discussion.

join-hack-chatOur Hack Chats are live community events on the Hackaday.io Hack Chat group messaging. This week we’ll be sitting down on Wednesday, March 27, at noon, Pacific time. If time zones have got you down, we have a handy time zone converter.

Click that speech bubble to the right, and you’ll be taken directly to the Hack Chat group on Hackaday.io. You don’t have to wait until Wednesday; join whenever you want and you can see what the community is talking about.

Unique Flat-Screen Display Put To Use In CRT Game Boy

The cathode-ray tube ruled the display world from the earliest days of TV until only comparatively recently, when flat-screen technology began to take over. CRTs just kept getting bigger over that time until they reached a limit beyond which the tubes got just too bulky to be practical.

But there was action at the low end of the CRT market, too. Tiny CRTs popped up in all sorts of products, from camcorders to the famous Sony Watchman. One nifty CRT from this group, a flat(tish) tube from a video intercom system, ended up in [bitluni]’s lab, where he’s in the process of turning it into a retro Game Boy clone with a CRT display. The display, which once showed the video from a door-mounted camera, was a gift from a viewer. Date codes on the display show it’s a surprisingly recent device; were monochrome TFT displays that hard to come by in 2007? Regardless, it’s a neat design, with the electron gun shooting upward toward a curved phosphor screen. With a little Google-assisted reverse engineering, [Bitluni] was able to track done the video connections needed to use his retro game console, which uses an ESP32 that outputs composite video. He harvested the intercom speaker for game audio, added a temporary Nintendo gamepad, and soon he was playing Tetris in glorious monochrome on the flat screen.

The video below is only the first in a series where the prototype will be stuffed into one nice tidy package. It certainly still needs some tweaking, but it’s off to a great start. We can’t wait to see the finished product.

Continue reading “Unique Flat-Screen Display Put To Use In CRT Game Boy”

Software Defined Television On An ESP32

Composite video from a single-board computer? Big deal — every generation of Raspberry Pi has had some way of getting composite signals out and onto the retro monitor of your choice. But composite video from an ESP32? That’s a thing now too.

There are some limitations, of course, not least of which is finding a monitor that can accept a composite input, but since [bitluni]’s hack uses zero additional components, we can overlook those. It really is as simple as hooking the monitor up to pin 25 and ground because, like his recent ESP32 AM radio station, the magic is entirely in software. For video, [bitluni] again uses his I²S tweaks to push a lot of data into the DAC really fast, reproducing the sync and image signals in the 0-1 volt range of the PAL composite standard. His code also supports the NTSC standard, but alas because of frequency limitations in the hardware it’s monochrome only for both standards, at least for now. He’s also got a neat trick to improve performance by running the video signal generation and the 3D-rendering on separate cores in the ESP32. Check out the results in the video below.

It looks like the ESP32 is getting to be one of those “Is there anything it can’t do?” systems. Aside from radio and video, we’ve seen audio playback, vector graphics, and even a Basic interpreter easter egg.

Continue reading “Software Defined Television On An ESP32”

Know Your Video Waveform

When you acquired your first oscilloscope, what were the first waveforms you had a look at with it? The calibration output, and maybe your signal generator. Then if you are like me, you probably went hunting round your bench to find a more interesting waveform or two. In my case that led me to a TV tuner and IF strip, and my first glimpse of a video signal.

An analogue video signal may be something that is a little less ubiquitous in these days of LCD screens and HDMI connectors, but it remains a fascinating subject and one whose intricacies are still worthwhile knowing. Perhaps your desktop computer no longer drives a composite monitor, but a video signal is still a handy way to add a display to many low-powered microcontroller boards. When you see Arduinos and ESP8266s producing colour composite video on hardware never intended for the purpose you may begin to understand why an in-depth knowledge of a video waveform can be useful to have.

The purpose of a video signal is to both convey the picture information in the form of luminiance and chrominance (light & dark, and colour), and all the information required to keep the display in complete synchronisation with the source. It must do this with accurate and consistent timing, and because it is a technology with roots in the early 20th century all the information it contains must be retrievable with the consumer electronic components of that time.

We’ll now take a look at the waveform and in particular its timing in detail, and try to convey some of its ways. You will be aware that there are different TV systems such as PAL and NTSC which each have their own tightly-defined timings, however for most of this article we will be treating all systems as more-or-less identical because they work in a sufficiently similar manner.

Continue reading “Know Your Video Waveform”