This Week In Security: Selfblow, Encryption Backdoors, Killer Apps, And The VLC Apocalypse That Wasn’t

Selfblow (Don’t google that at work, by the way) is a clever exploit by [Balázs Triszka] that affects every Nvidia Tegra device using the nvtboot bootloader — just about all of them except the Nintendo Switch. It’s CVE 2019-5680, and rated at an 8.2 according to Nvidia, but that high CVE rating isn’t entirely reflective of the reality of the situation. Taking advantage of the vulnerability means writing to the boot device, which requires root access, as well as a kernel flag set to expose the boot partitions to userspace. This vulnerability was discovered as part of an effort by [Balázs] and other LineageOS developers to build an open source bootloader for Nvidia Tegra devices.

The Tegra boot process is a bit different, having several stages and a dedicated Boot and Power Management CPU (BPMP). A zero-stage ROM loads nvtboot to memory and starts it executing on the BPMP. One of the tasks of nvtboot is to verify the signature of the next bootloader step, nvtboot-cpu. The file size and memory location are embedded in the nvtboot-cpu header. There are two problems here that together make this vulnerability possible. The first is that the bootloader binary is loaded to its final memory location before the signature verification is performed. The code is written to validate the bootloader signature before starting it executing on the primary CPU, so all is well, right? Continue reading “This Week In Security: Selfblow, Encryption Backdoors, Killer Apps, And The VLC Apocalypse That Wasn’t”

Installing Android On Your Nintendo Switch, Because Why Not?

In a continuing trend of ‘but does it run Android?’, enterprising folk over at the XDA-Developers forum have found a way to get LineageOS (the successor to CyanogenMod) installed and running on the Nintendo Switch using Switchroot source code. Promising to release the necessary files to replicate this effort has obviously made other people at XDA-Developers forum as well as on Reddit rather excited.

As for the question of ‘why?’, one has to remember that internally the Nintendo Switch is an Nvidia Tegra X1-based system with a Maxwell GPU, making it definitely one of the nicer ARM-based portable systems out there if one wants to do some Android-based gaming. Even better, the entire Nvidia Shield TV-derived ROM runs from the SD card, so just popping out this SD card is sufficient to return to playing Switch games.

Currently a few nagging issues still have to be worked out with this ROM, such as touchscreen issues, sleep mode not working, auto-rotation not working as communication with the sensor needs to be figured out, and so on. This should make it clear that it won’t be a production ready piece of software, but definitely something that should be used at your own risk.

While it shouldn’t harm the Switch, one should probably not try it on a Switch one cares deeply about. Just in case.

HDMI From Your Arduino

Creating a video signal from a computer, a job that once required significant extra hardware, is now a done deal with a typical modern microcontroller. We’ve shown you more NTSC, PAL, and VGA projects than you can shake a stick at over the years. Creating an HDMI video signal however is not so straightforward. It’s not a loosely defined analogue standard but a tightly controlled digital one upon which the clever hacks that eke full colour composite video from a single digital I/O pin will have little effect. Surely creating them from a simple microcontroller will be impossible! Not according to [techtoys], who has created an Arduino shield that creates an HDMI output from an SPI control input.

At its heart are two interesting integrated circuits that give us a little bit of insight into creating graphics at this level. First up is an RA8876 MIPI TFT controller which is a full graphics engine that produces a digital RGB output, followed by a CH7035B HDMI encoder that produces an HDMI output from the RGB. This combination of chips is particularly interesting one, because the RA8876 supports a variety of different interfaces that between them should be able to talk to most microcontrollers. In the Arduino world the only other HDMI options come via the use of an FPGA.

This is a project that seems to have been around for a couple of years, but which is still an active one. The classic Arduino shield form factor may now seem a little past its zenith, but as this board shows it’s still capable of being used for interesting new applications.

Thanks [th_in_gs] for the tip.

PC And Console Gaming United Courtesy Of Origin

When folk at Origin PCs realized that their company was about to celebrate its 10th anniversary of making custom (gaming) PCs, they knew that they had to do something special. Since one thing they did when the company launched in 2009 was to integrate an XBox 360 into a gaming PC, they figured that they might as well refresh and one-up that project. Thus 2019’s Project ‘Big O’ was born.

Naturally still featuring a high-end gaming PC at its core, the show piece of the system is that they also added an XBox One X, Playstation 4 Pro and Nintendo Switch console into the same full-tower GENESIS chassis. For this they had to strip the first two consoles out of their enclosures and insert them into the case each along with their own (appropriately colored) watercooling loop. Unfortunately the optical drives got ditched, presumably because this made things look cleaner.

The Switch was not modded or even cracked open. Instead a Switch dock was installed in the front of the case, allowing one to dock the Switch in the front of the case, and still use it in a mobile fashion after undocking it. Meanwhile an Ethernet and HDMI switch simplify the interfaces to this gaming system a lot, requiring one to only plug in a single HDMI and Ethernet cable to plug in all capable platforms. The result is a pretty sleek-looking system, definitely an eye-catcher.

Since Origin will never, ever, sell the Big O to customers as it’s just a promotional item, it does tickle the imagination. Case-modding and combining multiple computers (often an ATX and mini-ITX) system into a single case is nothing new, but aspects such as having a dockable Switch feature, this clean aesthetic and overall functionality makes one wonder what an enterprising hobbyist could accomplish here.

Continue reading “PC And Console Gaming United Courtesy Of Origin”

Deducing Stepper Motor Wiring

There are a lot of fun projects you can do with stepper motors salvaged from old printers or disk drives. However, it isn’t always clear how to connect to some strange motor with no markings or schematics. [Corvetteguy50] has a video showing his trick for working out the connections easily, and you can see it below.

The basic idea is simple. Using a special jig, he connects an LED across two random pins and spins the motor. If the LED lights, you’ve found a coil. You just don’t know which coil, yet. You can also short two wires and note when you feel resistance when you spin the shaft.

Continue reading “Deducing Stepper Motor Wiring”

Neopixels Recreate Pinball Color Wheel That Never Was

With what pinball aficionados pay for the machines they so lovingly restore, it’s hard to imagine that these devices were once built to a price point. They had to make money, and whatever it took to attract attention and separate the customer from their hard-earned coins was usually included in the design. But only up to a point.

Take the 1967 Williams classic, “Magic City.” As pinball collector [Mark Gibson] explains it, the original design called for a rotating color filter behind a fountain motif in the back-glass, to change the color of the waters in an attractive way. Due to its cost, Williams never implemented the color wheel, so rather than settle for a boring fountain, [Mark] built a virtual color wheel with Neopixels. He went through several prototypes before settling on a pattern with even light distribution and building a PCB. The software is more complex than it might seem; it turns out to require a little color theory to get the transitions to look good, and it also provides a chance for a little razzle-dazzle. He implemented a spiral effect in code, and added a few random white sparkles to the fountain. [Mark] has a few videos of the fountain in action, and it ended up looking quite nice.

We’ve featured [Mark]’s pinball builds before, including his atomic pinball clock, We even celebrated his wizardry in song at one point.

College Project Nets 360 Degree POV Display

Senior college projects are the culmination of years of theoretical learning finally put into practice. For many students they are their first experience of doing some proper, real world engineering. [Melangeaddict] chose to take on a persistence of vision display for his final project, and learned plenty along the way.

The display consists of a row of 48 RGB LEDs mounted on an arm capable of rotating a full 360 degrees, with a simple paper diffuser. This arm is spun up by a belt drive from an electric motor at significant rotational speed, so getting close to this machine is quite inadvisable. Thanks to quality bearings and a careful build, rotating resistance is minimal. An infrared LED is mounted on the frame, and the light picked up by a photodiode on the rotating arm, allowing the images to remain fixed in space without drifting over time. Images can be loaded to the display wirelessly over a Bluetooth interface, which was quite advanced for a DIY project in 2011.

We’re a fan of the 360 degree approach to POV displays, and with the right rotational speed and fast data rates, it would be possible to get some seriously high resolution out of the device. Just be careful not to stick your hands in the mechanism.

There’s a deep well to explore when it comes to POV displays, from three-dimensional builds to vibrating flexible setups. Video after the break.

Continue reading “College Project Nets 360 Degree POV Display”