Repairing A Catastrophic Failure: The Oroville Dam Update

More than two years ago, the largest dam in the United States experienced a catastrophic failure of its main spillway, the primary means by which operators of the dam prevent the lake from cresting its pen. The spillway failure caused so much erosion that the hydroelectric plant could not operate, further worsening the situation. In a few days, the dam was finally put to its design limitations, and water began flowing down an emergency spillway that had never been used, prompting the evacuation of 188,000 people living in downstream communities.

Since the time that this crisis came to a head, crews have been working around the clock to repair the main and emergency spillways in order to ensure that one of the largest pieces of infrastructure in the wealthiest country in the world does not suffer a complete failure. The dam’s spillways were reopened recently on April 2, in time for this year’s snow melting, and so far everything looks good.

The repair work was a true feat of engineering, and perhaps a logistics miracle as well. The video below goes over a lot of the raw materials inputs that were needed, but the one that stuck out the most was that a dump truck full of roller-compacted concrete was emptied every five minutes over the entire course of the repair — enough to build a sidewalk from the Oroville Dam to Texas. Part of the reason for the use of such an incredible amount of concrete was that it wasn’t just used to repair the main spillway. An enormous “splash pad” for the emergency spillway was also constructed to limit erosion in the event that it must be used again. But the full change goes beyond concrete and rebar. Join me after the break as I try to wrap my mind around the full scope of the Oroville Dam repair.

Continue reading “Repairing A Catastrophic Failure: The Oroville Dam Update”

Reverse Engineering Dropbox

These days everyone talks about data “in the cloud.” However, before that phrase was fashionable, there were a few pioneers and one of the most famous of these is Dropbox — a service that let you store files on a remote server that dates back to 2007. [Vincent Berg] first noticed some odd network traffic on a hotel network, and figured out that it was a feature of Dropbox that allows computers on the same network to update each other. This led him to start investigating the undocumented Dropbox protocol and reverse engineering the Linux client.

We won’t ask why [Vincent] was poking around the hotel network to start with. However, a cursory glance at the Dropbox client gave away that it was using Python. The byte-compiled classes were — at the time — in a ZIP file added to the executable (which was nothing but a modified copy of Python). The files were encrypted, but [Vincent] used a clever technique. He built a shared object using normal Python and put a backdoor in it that gave him access to the Dropbox Python interpreter.

Continue reading “Reverse Engineering Dropbox”

Concrete Speakers Are Attractive And Functional

In a lot of fields – motorsport, space exploration, wearables – lighter is better. But it’s not always the case. When you want to damp vibration, stop things moving around, and give things a nice weighty feel, heavier is the way to go. This is the case for things like machine tools, anvils, and yes – speakers. Using this philosophy, [SoundBlab] built a set of concrete speakers. (Youtube link, embedded below)

The concrete speaker enclsosures are sized for 3″ drivers, and were cast using two measuring jugs as the mold. This gave the final product a smooth and glossy surface finish, thanks to the surface of the plastic used. The concrete was also agitated during the casting process to minimise the presence of air bubbles in the mixture.

Once cast, the enclosures are fitted with plywood end caps which mount the Fountek FE85 speaker drivers. These are a full-range driver, meaning no cross-overs or other drivers are required. The speakers are then mounted on stands constructed from wood edging, which are stained in a contrasting colour for a nice aesthetic touch. Felt pads are placed on the base, and polyfill inside the enclosure to further minimise any unwanted vibrations.

The sound test confirms the speakers perform well, and they look great as a part of a lounge audio setup. We think they make an excellent pair of bookshelf speakers, which would be ideal for comfortable listening at moderate volume levels.

We’ve seen many speaker builds at Hackaday, from 3D-printed omnidirectional builds to the more classical designs. Video after the break.

Continue reading “Concrete Speakers Are Attractive And Functional”

PokerBot Uses FPGA For Card Calculating Horsepower

Played against humans, Poker is a game as much about reading your opponent as it is about the cards you’re dealt. That doesn’t mean there aren’t certain mathematical ways to aid your decision making based on probabilities. In this vein, a group of students from Cornell’s ECE 5760 class built a pokerbot on an FPGA.

The bot uses the principle of Monte Carlo simulation to calculate the probabilities of an individual winning a hand of Limit Texas Hold’em. Calculating the entire set of possible hands is impractical, so in a Monte Carlo simulation a sample is calculated instead. By accelerating these calculations on an FPGA, the pokerbot is able to calculate 300,000 possible hands in just 150 ms, and present a probability of winning to the human player. This same calculation method is then used to make decisions for the computer players in the game, too.

The team report that the FPGA’s processing power brought a 10x speed up compared to their C++ program running on an Intel i7-6700HQ. The strong statistical calculations help to make the computer players engaging and realistic to play against.

It’s another great example of a project from Bruce Land’s classes, which are somewhat of a hotbed of development each year. Video after the break.

Continue reading “PokerBot Uses FPGA For Card Calculating Horsepower”

Reupholstering A Couch, With No Prior Experience

Upholstery is a craft that dates back far longer than many we feature on Hackaday. It requires patience, attention to detail, and a series of specialised skills. If you fancy yourself to be like a young Jack White, you might have considered trying your hand at a piece or two. [darkpine] did just that, and the results are impressive.

The couch was sourced from an online bartering platform, and was in a sad and sorry state after years of use. According to the original owner, the couch was over 100 years old and had been passed down through several generations. Last reupholstered in the 1970s, it was in dire need of repair. Wooden trim was falling off, fabric was fading, and resident cats had been sure to leave their mark.

[darkpine] set about things the right way, stripping the couch back to its bare bones. Taking careful note of the original construction, diagrams were made to ensure the springs could be retied in the correct fashion. Fresh burlap was installed, followed by foam and a layer of cotton batting. Careful attention was then paid to the fabric covering, with hand stitching used along the arms to get an absolutely perfect pattern match along the seams. With the hard part done, the wood was then restored and waxed to a glorious shine.

The final results are astounding, especially when noting that this was [darkpine]’s first ever upholstery project. We don’t see a lot of this kind of thing around here, but it’s not completely unknown.

[via Reddit]

This Two-Wheeled RC Car Is Rather Quick

Radio control cars have always been fun, it’s true. With that said, it’s hard to deny that true speed was unlocked when lithium polymer batteries and brushless motors came to the fore. [Gear Down For What?] built himself a speedy RC car of his own design, and it’s only got two wheels to boot (Youtube link, embedded below).

The design is of the self-balancing type – if you’re thinking of an angry unmanned Segway with a point to prove, you’re in the ballpark. The brains of the machine come thanks to a Teensy 3.6, which runs the PID loops for balancing and control. An MPU6050 gyroscope & accelerometer provide the necessary sensing to enable the ‘bot to keep itself upright in varied conditions. Performance is impressive, with the car reaching speeds in excess of 40 MPH and managing to handle simple ramps and bumps with ease. It’s all wrapped up in a 3D printed frame which held up surprisingly well to many crashes into tripods and tarmac.

Such builds are not just fun; they’re an excellent way to learn useful control skills that can serve you well in industry and your own projects. You can pick up the finer details of control systems in a university engineering course, or you could give our primer a whirl. When you’ve whipped up your first awesome project, we’d love to hear about it. Video after the break.

Continue reading “This Two-Wheeled RC Car Is Rather Quick”

Building An ESP8266 Game System With MicroPython

After a seemingly endless stream of projects that see the ESP8266 open doors or report the current temperature, it can be easy to forget just how powerful the little WiFi-enabled microcontroller really is. In fact, you could argue that most hackers aren’t even scratching the surface of what the hardware is actually capable of. But that’s not the case for [Brian Wagner] and his students from the Kentucky Country Day School.

Their project, the GamerGorl, is a completely custom handheld game system running on a Wemos D1 Mini development board. The team’s PCB, which was developed over several iterations, is essentially a breakout board which allows them to easily connect up peripheral devices. Given the low total component cost of the GamerGorl and relative simplicity of its construction, it looks like a phenomenal project for older STEM students.

Beyond the ESP8266 board, the GamerGorl features a SSD1106 1.3″ OLED display, a buzzer for sound effects, two tactile buttons, and an analog joystick originally intended for an Xbox controller. Around the backside there’s a WS2812B RGB LED strip that’s at least partially for decoration, but it’s also actively used in some of the games such as the team’s take on Simon.

Even if you aren’t in the market for a portable game system, the GameGorl does provide an interesting case study for MicoPython applications on the Wemos D1 Mini. Browsing through the team’s source code as well as the helpful hints that [Brian] gives about getting the software environment up and running could be useful if you’re looking to expand your ESP8266 programming repertoire. We’d also love to see this device running the “ESP Little Game Engine” we covered recently.

Continue reading “Building An ESP8266 Game System With MicroPython”