Modifying A QingPing Air Quality Monitor For Local MQTT Access

The QingPing Air Quality Monitor 2 is an Android-based device that not only features a touch screen with the current air quality statistics of the room, but also includes an MQTT interface that normally is used in combination with the QingPing mobile app and the Xiaomi IoT ecosystem. Changing it to report to a local MQTT server instead for integration with e.g. Home Assistant can be done in an official way that still requires creating a cloud account, or you can just do it yourself via an ADB shell and some file modifications as [ea] has done.

By default these devices do not enumerate when you connect a computer to their USB-C port, but that’s easily resolved by enabling Android’s developer mode. This involves seven taps on the Device Name line in the About section of settings. After this you can enter Developer Options to toggle on Debug Mode and Adbd Debugging, which creates the option to connect to the device via USB with ADB and open up a shell with adb shell.

From there you can shoot off the QingSnow2 app and the watchdog.sh that’s running in the background, disable IPv6 and edit /etc/host to redirect all the standard cloud server calls to a local server. Apparently there is even SSH access at this point, with root access and password rockchip. The MQTT configuration is found under /data/etc/ in settings.ini, which is used by the QingPing app, so editing redirects all that.

Of course, the device also queries a remote server for weather data for your location, so if you modify this you have to provide a proxy, which [ea] did with a simple MQTT server that’s found along with other files on the GitHub project page.

The Nintendo 64DD, an N64 add-on released only in Japan in 1999.

Exploring Nintendo 64DD Code Remnants In Ocarina Of Time

What if you took a Nintendo 64 cartridge-based game and allowed it to also use a large capacity magnetic disc format alongside it? This was the premise of the Nintendo 64DD peripheral, and the topic of a recent video by [Skawo] in which an archaeological code dig is performed to see what traces of the abandoned product may remain.

The 64DD slots into the bottom of the console where the peripheral connector is located, following which the console can read and write the magnetic discs of the 64DD. At 64 MB it matched the cartridge in storage capacity, while also being writable unlike cartridges or CDs. It followed on previous formats like the Famicom Disk System.

For 1998’s Game of the Year title The Legend of Zelda: Ocarina of Time such a 64DD-based expansion was worked on for a while before being cancelled along with the 64DD. With this Zelda game now decompiled, its source code has shown to be still full of 64DD-related code that [Skawo] takes us through in the video.

Continue reading “Exploring Nintendo 64DD Code Remnants In Ocarina Of Time

Teardown Of Boeing 777 Cabin Pressure Control System

Modern passenger airliners are essentially tubes-with-wings, they just happen to be tubes that are stuffed full with fancy electronics. Some of the most important of these are related to keeping the bits of the tube with humans inside it at temperatures and pressures that keeps them alive and happy. Case in point the Boeing 777, of which [Michel] of Le Labo de Michel on YouTube recently obtained the Cabin Pressure Control System (CPCS) for a teardown.

The crucial parts on the system are the two Nord-Micro C0002 piezo resistive pressure transducers, which measure the pressure inside the aircraft. These sensors, one of which is marked as ‘backup’, are read out by multiple ADCs connected to a couple of FPGAs. The system further has an ARINC 429 transceiver, for communicating with the other avionics components. Naturally the multiple PCBs are conformally coated and with vibration-proof interconnects.

Although it may seem like a lot of hardware just to measure air pressure with, this kind of hardware is meant to work without errors over the span of years, meaning significant amounts of redundancy and error checking has to be built-in. Tragic accidents such as Helios Airways Flight 522 involving a 737-300 highlight the importance of these systems. Although in that case human error had disabled the cabin pressurization, it shows just how hard it can be to detect hypoxia before it is too late.

Continue reading “Teardown Of Boeing 777 Cabin Pressure Control System”

Benchmarking Windows Against Itself, From Windows XP To Windows 11

Despite faster CPUs, RAM and storage, today’s Windows experience doesn’t feel noticeably different from back in the 2000s when XP and later Windows 7 ruled the roost. To quantify this feeling, [TrigrZolt] decided to run a series of benchmarks on a range of Windows versions.

Covering Windows XP, Vista, 7, 8.1, 10 and 11, the Pro version of each with the latest service packs and updates was installed on the same laptop: a Lenovo ThinkPad X220. It features an Intel i5 2520M CPU, 8 GB of RAM, built-in Intel HD Graphics 3000 and a 256 GB HDD.

For start-up, Windows 8.1 won the race, probably due to having the Fast Boot feature, while Windows 11 came in dead last as it showed the desktop, but struggled to show the task bar. Windows XP’s install size was the smallest and also had the lowest RAM usage with nothing loaded at 800 MB versus 3.3 GB for Windows 11 in last place.

Continue reading “Benchmarking Windows Against Itself, From Windows XP To Windows 11”

Qron0b: A Minimalist, Low-Power BCD Wristwatch

Over the decades we have seen many DIY clocks and wrist watches presented, but few are as likely to get you either drawing in the crowds, or quietly snickered at behind your back, as a binary watch of some description does. A wrist watch like [qewer]’s qron0b project which also uses BCD encoding to display the current time is among our more rare project types here, with us having to go all the way back to 2018 for a similar project as well as a BCD desk clock.

As is typical, a single CR2032 coin cell powers the entire PCB, with an ATtiny24A or compatible as the MCU, a DS1302 RTC and the requisite 4×4 LED matrix to display the hours and minutes. Technically three LEDs are unneeded here, but it looks nicely symmetrical this way, and the extra LEDs can be used for other tasks as the firmware is expanded from the current setting and reading of the time.

The AVR C firmware can be found in the above linked GitHub repository, along with the KiCad PCB project and FreeCAD design files for the watch body. The body accepts a 22 mm GT2/GT3-style watch strap to complete the assembly. With a single CR2032 you’re assured of at least a few months of runtime.

Jailbreaking The Amazon Echo Show

As locked-down as the Amazon Echo Show line of devices are, they’re still just ARM-based Android devices, which makes repurposing it somewhat straightforward as long as what you want is another Android device.

Running Home Assistant on an Echo Show 8 with LineageOS. (Credit: Dammit Jeff, YouTube)
Running Home Assistant on an Echo Show 8 with LineageOS.

In this case, we’re talking about the first-generation Amazon Echo Show 8, which is a 2019-era device that got jailbroken back in November by [Rortiz2]. The process was then demonstrated in a video by [Dammit Jeff].

Currently only two devices are supported by this jailbreak, with the Echo Show 5 being the other one. If there’s enough interest, there doesn’t appear to be any technical reason at least for why this support couldn’t be extended to other devices. One major reason for jailbreaking is to put LineageOS on your Echo device courtesy of these Echo Show devices recently beginning to show advertisements, with no way to disable this.

The process of jailbreaking and installing the LineageOS ROM is somewhat long as usual, with plenty of points where you can make a tragic mistake. Fortunately it’s pretty simple as long as you follow the steps and afterwards you can even install the Google apps package if that’s your thing. Just mind the 1 GB RAM and 8 GB of storage on the Echo Show 8. In the case of [Jeff] he mostly replicated the home automation and entertainment features of Amazon’s FireOS with far less locked-down alternatives like Home Assistant.

Continue reading “Jailbreaking The Amazon Echo Show”

Making The Fastest LEGO Technic Air-Powered Engine

Just because LEGO Technic is technically a toy doesn’t mean that you cannot do solid engineering with it, like building air-powered engines. After first building a simple air-powered piston engine, this time around [Jamie’s Brick Jams] sought to not only optimize the engine, but also build a clutch and something to power with said engine.

The four-piston design in radial configuration. (Credit: Jamie's Brick Jams, YouTube)
The four-piston design in radial configuration.

The piston head is one of the handful of 3D printed parts, with the new design featuring twin rubber o-rings as a seal instead of a single big one as in the old design. This incidentally matches the multiple seal rings on an internal combustion engine’s pistons, probably for similar blow-by related reasons. The air hose diameter was also increased from 2 to 3 mm to give the engine a larger volume of air to work with, which along with a new flywheel gave a lot more torque. Next the piston rod length was optimized.

The final radial 4-piston engine turns out to work pretty well, with the clutch engaging smoothly. This was used to drive a DIY generator that turned out to produce about 3 Watt of usable power in its final configuration at 6 V, though it’s admittedly a rather crude generator that could be further optimized. When trying a twin-piston configuration with the highest air pressure before air hoses began to pop off, it hit a dizzying 14,600 RPM.

These aren’t half bad results for some LEGO Technic together with some 3D printed bits, rubber o-rings and some lube.

Continue reading “Making The Fastest LEGO Technic Air-Powered Engine”