Copying High Security Keys With OpenSCAD And Light

The ability to duplicate keys with a 3D printer is certainly nothing new, but so far we’ve only seen the technique used against relatively low hanging fruit. It’s one thing to print a key that will open a $15 Kwikset deadbolt from the hardware store or a TSA-approved “lock” that’s little more than a toy, but a high-security key is another story. The geometry of these keys is far more complex, making them too challenging to duplicate on a consumer-level printer. Or at least, you’d think so.

Inspired by previous printed keys, [Tiernan] wanted to see if the techniques could be refined for use against high security Abloy Protec locks, which are noted for their resistance to traditional physical attacks such as picking. The resulting STLs are, unsurprisingly, beyond the capabilities of your average desktop FDM printer. But with a sub-$300 USD Anycubic Photon DLP printer, it’s now possible to circumvent these highly regarded locks non-destructively.

Of course, these keys are far too intricate to duplicate from a single picture, so you’ll need to have the physical key in hand and decode it manually. [Tiernan] wisely leaves that step of the process out, so anyone looking to use this project will need to have a good working knowledge of the Abloy Protec system. Hopefully this keeps bad actors from doing anything too nefarious with this research.

Once you have the decoded values for the key you want to duplicate, you just need to provide them to the OpenSCAD library [Tiernan] has developed and print the resulting STL on your sufficiently high-resolution printer. Generally speaking, the parts produced by resin-based printing have a high tensile strength but are very brittle, so perhaps not the kind of thing you want to stick in your expensive Abloy lock. That said, there are some “Tough Resin” formulations available now which produce parts that are at least as strong as those made with thermoplastics. So while the printed keys might not be strong enough for daily use, they’ll certainly work in a pinch.

Fighting Household Air Pollution

When Kenyan engineer [Aloise] found out about the health risks of household air pollution, they knew there had to be a smart solution to combatting the problem while still providing a reasonable source of energy for families cooking without the luxury of cleaner fuels. Enter OpenHAP, a DIY household air pollution monitor that provides citizen scientists and researches the means to measure air particulates in developing countries.

The device is based on an ESP32 communicating with a ZH03B Particulate matter sensor over UART; a DS3231SN real-time clock (RTC), temperature and humidity sensor, and MLX90640 2D thermal sensor array over I2C; and wirelessly sending the data received to a Bluetooth low energy wrist-strap beacon and an Internet enabled phone. The device also uses a TCA9534 GPIO expander to control the visual and auditory notifiers (buzzers and LEDs) and to interface to a SD card.

The project uses the libesphttpd project modified for the ESP32 for the webserver, which is used to stream data to a mobile handset or computer using the WiFi capabilities of the ESP32. The data includes real-time sensor information, system status, storage media status, visualizations of the thermal array sensor data (to ensure the camera is facing the source of heat), and tag information to test the limits of the Bluetooth tag with regards to distance.

Power input is provided through a Micro-USB connector, protected with a TVS diode and a Schottky diode in series to prevent reverse power flow.

The project was tested in two real-life scenarios: one with a household in rural Kenya and another with an urban low-income family of four. In the first test, the family used a three stone open fire stove. A FLiR thermal camera captured the stove temperatures, while a standard camera was enough to capture the high levels of smoke inside the kitchen. The readings from OpenHAP were high enough to exceed the upper detection threshold for the particulate sensor, showing that the woman cooking in the house was receiving the equivalent of 8 cigarettes a day, about 8 x the WHO’s recommended particulate levels.

Within the second household, a typical energy mix of charcoal briquettes and kerosene was typically used for cooking, with kerosene used during the day and briquettes used at night. The results from measuring pollution levels using OpenHAP showed that the mother and child in the household regularly received around 1.5 x the recommended limit of pollutants, enough to lead to slow suffocation.

There’s already immense potential for this project to help researchers test out different energy sources for rural households, not to mention the advantage of having a portable low-energy pollution monitor for citizen scientists.

Continue reading “Fighting Household Air Pollution”

Who Could Possibly Need An FPGA With 9M Logic Cells And 35B Transistors?

Xilinx recently announced the Virtex UltraScale+ VU19P FPGA. Of course, FPGA companies announce new chips every day. The reason this one caught our attention is the size of it: nearly 9 million logic cells and 35 billion transistors on a chip! If that’s not enough there is also over 2,000 user I/Os including transceivers that can move around 4.5 Tb/s back and forth.

To put things in perspective, the previous record holder — the Virtex Ultrascale 440 — has 5.5 million logic cells and an old-fashioned Spartan 3 topped out at about 50,000 cells — the new chip has about 180 times that capacity. For the record, I’ve built entire 32-bit CPUs on smaller Spartans.

That led us to wonder? Who’s buying these things? When I first heard about it I guessed that the price would be astronomical, partly due to expense but also partly because the market for these has to be pretty small. The previous biggest Xilinx part is listed on DigKey who pegs the Ultrascale 440 (an XCVU440-2FLGA2892E) at a cost of $55,000 as a non-stocked item. Remember, that chip has just over half the logic cells of the VU19P.

Continue reading “Who Could Possibly Need An FPGA With 9M Logic Cells And 35B Transistors?”

Dealing With Invasive Species Through Robotics

Throughout its history, humankind’s travels have often brought unwelcome guests along for the ride, and sometimes introduced species into a new environment for a variety of reasons. These so-called invasive species are all too often responsible for widespread devastation in ecosystems, wiping out entire species and disrupting the natural balance. Now researchers are testing the use of robots for population control of these invasive species.

The mosquitofish is the target of current research by NYU Tandon School of Engineering and the University of Western Australia. Originally from parts of the US and Mexico, it was introduced elsewhere for mosquito control, including in Australia. There it has become a massive problem, destroying native species that used to eat mosquitoes. As a result the mosquito problem has actually worsened.

As the main issue with these invasive species is that they do not have any natural predators that might control their numbers, the researchers created robots which mimic the look and motion of natural predators. In the case of the mosquitofish the largemouth bass is its primary predator. The theory was that by exposing the mosquitofish to something that looks and moves just like one of these predator fish, they would exhibit the same kind of stress response.

So far laboratory tests under controlled condition have confirmed these expectations, with the mosquitofish displaying clear signs of stress upon exposure to the robotic largemouth bass. Even better, they displayed decreasing weight and were found to avoid potentially dangerous areas, indicating that instead of focusing on foraging, they were in survival mode. This should limit their environmental impact, including their ability to procreate.

Who knows, before long the surface waters of Australia may be home to the first robotic species of fish.

(Thanks, [Qes])

A Virtual Tour Of The B-17

The Boeing B-17 “Flying Fortress” is arguably the most recognizable aircraft of the Second World War. Made infamous by the daring daylight strategic bombing runs they carried out over Germany, more than 12,000 of these four-engined bombers were produced between 1939 and 1945. Thanks to the plane’s renowned survivability in battle, approximately 60% of them made it through the war and returned home to the United States, only to be rounded up in so-called “boneyards” where they were ultimately cut up and sold as scrap. Today there are fewer than 50 intact Boeing B-17s left in the world, and of those, only 11 remain airworthy.

One of them is Nine-O-Nine, a B-17G built in April 7, 1945. This particular aircraft was built too late to see any combat, although in the 1950s she was fitted with various instruments and exposed to three separate nuclear blasts for research purposes. It’s actually not the real Nine-O-Nine either, the original was scrapped after it completed eighteen bombing runs over Berlin. Without a combat record of its own, this bomber was painted to look like the real Nine-O-Nine in honor of its incredible service record of never losing a crewman.

Since 1986, Nine-O-Nine has been owned by the Collings Foundation, who operate her as a living history exhibit. The bomber flies around the United States with an entourage of similarly iconic WWII aircraft as part of the Wings of Freedom Tour, stopping by various airports and giving the public a chance to climb aboard and see the pinnacle of mid-1940s strategic bombing technology. History buffs with suitably deep pockets can even book a seat on one of the scheduled 30-minute flights that take place at every stop on the Tour.

I was lucky enough to have the The Wings of Freedom Tour pass through my area recently, and couldn’t pass up the opportunity to experience this incredible aircraft first hand. The fact that I’m equal parts a coward and miser kept me from taking a ride aboard the 74 year old Nine-O-Nine, at least for now, but I made sure to take plenty of pictures from inside this lovingly restored B-17G while it was safely on the ground.

Continue reading “A Virtual Tour Of The B-17”

Helicopter Chain Saw

Among the most dangerous jobs in the United States are timberjack and aircraft pilot. Combining the two wouldn’t sound like a recipe for success, but in fact it makes the job of trimming trees near pipelines and power lines much safer. That’s what this helicopter-suspended chainsaw does. And it definitely doesn’t look safe, either, but here we are.

The saw is equipped with ten two-foot diameter saws and is powered by a 28 horsepower engine which is separate from the helicopter itself. The pilot suspends the saw under the helicopter and travels along the trees in order to make quick work of tree branches that might be growing into rights-of-way. It’s a much safer (and faster) alternative that sending out bucket trucks or climbers to take care of the trees one-by-one.

Tree trimming is an important part of the maintenance of power lines especially which might get overlooked by the more “glamarous” engineering aspects of the power grid. In fact, poor maintentance of vegitation led to one of the largest blackouts in recent history and is a contributing factor in a large number of smaller power outages. We can’t argue with the sentiment around the saw, either.

Asynchronous Routines For C

[Sandro Magi] noted that the async/await idiom has become more prevalent in programming recently. According to him, he first encountered it in C# but has found examples of it in JavaScript and Rust, too. The idea is simple: allow a function to return but come back later to complete something that takes a long time. Of course, multithreading is one answer to this, but generally, this technique implies more of a coroutine setup where functions cooperate to some degree to get good behavior. [Sandro] took some ideas from the existing protothread library and used it to create a system to get this effect in C and, by extension, C++.

Adding this “library” is as simple as including a header file. All the magic occurs at the preprocessor and compiler. There’s no code to link. The async routines only need two bytes of overhead and — unlike proper threads — don’t need a preallocated private stack.

Continue reading “Asynchronous Routines For C”