Simple hardware switch for dual booting the operating system, thanks to the RP2040


Dual-booting your computer can be a hassle the more you have to switch operating systems – which is why virtualization or having separate computers is the solution for many. Failing that, we have no choice but to smooth out our dual boot experience with various workarounds and helpers. [William Somsky] actions such a help tool with us – a sleek device made with a TinyPICO RP2040 board and a three-way toggle switch, telling GRUB to auto-boot into Windows or Linux, or leaving us with the usual boot menu. That way you can just flip the switch, hit “restart” and walk away, back to your booted PC in your OS of choice, instead of timing your presence just so you can grab the start menu on time.

All you have to do is solder a toggle switch onto your chosen RP2040 board, then flash the RP2040 with code that detects the state of the switch and create a mass storage device hosting a file setting a Grub variable to one of 0, 1 or 2. [William] describes his journey, battling mysterious caching issues, but tells us he finally made it work. Sadly, [William] didn’t share the RP2040 side code with us, but he at least put the Grub’s custom.cfg file in the ‘Files’ section of the project.

Easily accessible microcontrollers with mass storage capabilities certainly help to simplify these hacks – before we’ve seen dual-boot switching like this done by modifying MBR assembly code. Dual booting is a hacker’s rite of passage, and some recent operating systems may make it more difficult than others. Even if you don’t want to dual-boot your PC, you can certainly dual-boot an Arduino!


About Author

Comments are closed.