Switch Your RP2040 Between 3.3 V And 1.8 V

Ever want to build a RP2040 devboard that has everything you could ever want? Bad news,  “everything” also means adding 1.8 V GPIO voltage support. The good news is that this write-up by [xenia] explains the process of adding a “3.3 V/1.8 V” slide switch onto your board.

Some parts are obvious, like the need to pick a flash chip that works at either voltage, for instance. Unfortunately, most of them don’t. But there’s more you’d be surprised by, like the crystal, a block where the recommended passives are tuned for 3.3 V, and you need to re-calculate them when it comes to 1.8 V operation – not great for swapping between voltages with a flick of a switch. Then, you need to adjust the bootloader to detect the voltage supplied — that’s where the fun begins, in large part. Modifying the second stage bootloader to support the flash chip being used proved to be quite a hassle, but we’re graced with a working implementation in the end.

All the details and insights laid out meticulously and to the point, well-deserved criticism of Raspberry Pi silicon and mask ROM design choices, code fully in Rust, and a success story in the end – [xenia]’s write-up has all you could wish for.

Want to learn more about the RP2040’s bootloader specifically? Then check this out — straight out of Cornell, a bootloader that’s also a self-spreading worm. Not only is it perfect for updating your entire RP2040 flock, but it also teaches you everything you could want to know about RP2040’s self-bringup process.

The board shown in real life, top and bottom, showing the pinout and alternate functions silkscreened.

A CH552G Devboard In Case You Missed It

We might just never get tired of covering cool small cheap MCUs, and CH552G sure fits this description. Just so you know, here’s a Hackaday.io project you should check out – a CH552G devboard that’s as simple as it sufficient, in case you needed a tangible reminder that this chip exists, has a lively community, and is very much an option for your projects.

The devboard design by [Dylan Turner] is so straightforward, it’s almost inspiring – a square of PCB with the chip in the center and plenty of empty space for your mods. Everything is open-source with KiCad sources stored on GitHub. The most lovely aspect of this board, no doubt, is having the pin mapping written on the bottom, with all the alternate pin functions – you won’t have to constantly glance at the datasheet while wiring this one up. Plus, of course, there’s the microUSB port for programming, and the programming mode button that a few CH552 projects tend to lack.

It’s simple, it’s self-documenting, it’s breadboardable, and it’s definitely worth putting into the shopping cart at your PCB fab of choice. Oh, and there are bringup instructions on GitHub, in case you need them. Whether you want to prototype the cheapest macropad or keyboard ever, or perhaps a reflow hotplate, the CH552 delivers. If these CH552 projects aren’t enough to light your fire, here are a dozen more.

Dev Board Watch Takes Path Of Least Resistance

Building your own watch or clock is kind of a maker’s rite of passage. Once upon a time, if you went with a wrist watch, you’d typically work on producing your own compact PCB with everything crammed into a typical watch form factor, maybe relying on a simple binary output for compactness and simplicity. Times have changed, however, and [Arnov]’s design is altogether different in its construction.

The build relies on a XIAO ESP32-C3 microcontroller board as the brains of the operation. It’s paired with the XIAO expansion board. It’s designed as a carrier for the ESP32-C3, giving it a bunch of IO that’s accessible over readily-accessible connectors. It also features a display, a real-time clock, and a battery — pretty much the three main things you’d need to add to an ESP32 to turn it into a watch.

Thus, with the electronics pretty much done, it was simply up to [Arnov] to turn the device into a watch. He achieved this by screwing the frame and strap of an old Casio watch to a 3D printed carrier for the XIAO expansion board. With that done, it was simply a matter of writing the code to show the time from the RTC on the display. There’s no connectivity features, no smart stuff going on — just the time and date for your perusal.

Some might decry the project for simply slapping a watch band on a devboard. Or, you could look at how this indicates just how fast and easy development can be these days. Once upon a time, you could spend weeks trying to find a cheap display and then further weeks trying to get it working with your microcontroller. Now you can spend $20, get the parts in a few days, and get your project blasting along minutes later.

If you’ve done an altogether more ornate watch build of your own, we’d love to see that, too. Show us on the tipsline!

Printer Scrap Becomes FPGA Devboard

These days, if you want to start learning about FPGAs, it can be a daunting experience. There’s a huge variety of different platforms and devboards and it can be difficult to know where to start. [RoGeorge] decided to take a different tack. Like a 16-year-old drag racer, he decided to run what he brung – a printer control panel cum FPGA development board (Romanian, get your Google Translate on).

[RoGeorge] was lucky enough to score a couple of seemingly defective control panels from HP Laserjets discarded by his workplace. Seeing potentially good parts going to waste, like keypads and LCDs, he decided to investigate them further – finding a 50,000 gate Xilinx Spartan IIE running the show. Never one to say no to opportunity, [RoGeorge] dived in to learning how to work with FPGAs.

The forum posts are a great crash course in working with this sort of embedded FPGA platform. [RoGeorge] covers initial mapping of the peripherals on the board & finding a JTAG connector and programming solution, before moving on to basic FPGA programming and even covers the differences between sequential programming on microcontrollers and the parallel operation of FPGAs. Even if you don’t intend to get down and dirty with the technology, spend half an hour reading these posts and you’ll be far more knowledgeable about how they work!

In the end, [RoGeorge] showed how to teach yourself to work with FPGAs for the price of a couple of programming cables – not a mean feat by any means. It’s a testament to the hacker spirit, and reminds us of [SpriteTM]’s efforts in hacking hard drive controllers.