Drive For Show, Putt For Dough

Any golfer will attest that the most impressive looking part of the game—long drives—isn’t where the game is won. To really lower one’s handicap the most important skills to develop are in the short game, especially putting. Even a two-inch putt to close out a hole counts the same as the longest drive, so these skills are not only difficult to master but incredibly valuable. To shortcut some of the skill development, though, [Sparks and Code] broke most rules around the design of golf clubs to construct this robotic putter.

The putter’s goal is to help the golfer with some of the finesse required to master the short game. It can vary its striking force by using an electromagnet to lift the club face a certain amount, depending on the distance needed to sink a putt. Two servos lift the electromagnet and club, then when the appropriate height is reached the electromagnet turns off and the club swings down to strike the ball. The two servos can also oppose each other’s direction to help aim the ball as well, allowing the club to strike at an angle rather than straight on. The club also has built-in rangefinding and a computer vision system so it can identify the hole automatically and determine exactly how it should hit the ball. The only thing the user needs to do is press a button on the shaft of the club.

Even the most famous golfers will have problems putting from time to time so, if you’re willing to skirt the rules a bit, the club might be useful to have around. If not, it’s at least a fun project to show off on the golf course to build one’s credibility around other robotics enthusiasts who also happen to be golfers. If you’re looking for something to be more of a coach or aide rather than an outright cheat, though, this golf club helps analyze and perfect your swing instead of doing everything for you.

Continue reading “Drive For Show, Putt For Dough”

Mining And Refining: Lead, Silver, And Zinc

If you are in need of a lesson on just how much things have changed in the last 60 years, an anecdote from my childhood might suffice. My grandfather was a junk man, augmenting the income from his regular job by collecting scrap metal and selling it to metal recyclers. He knew the current scrap value of every common metal, and his garage and yard were stuffed with barrels of steel shavings, old brake drums and rotors, and miles of copper wire.

But his most valuable scrap was lead, specifically the weights used to balance car wheels, which he’d buy as waste from tire shops. The weights had spring steel clips that had to be removed before the scrap dealers would take them, which my grandfather did by melting them in a big cauldron over a propane burner in the garage. I clearly remember hanging out with him during his “melts,” fascinated by the flames and simmering pools of molten lead, completely unconcerned by the potential danger of the situation.

Fast forward a few too many decades and in an ironic twist I find myself living very close to the place where all that lead probably came from, a place that was also blissfully unconcerned by the toxic consequences of pulling this valuable industrial metal from tunnels burrowed deep into the Bitterroot Mountains. It didn’t help that the lead-bearing ores also happened to be especially rich in other metals including zinc and copper. But the real prize was silver, present in such abundance that the most productive silver mine in the world was once located in a place that is known as “Silver Valley” to this day. Together, these three metals made fortunes for North Idaho, with unfortunate side effects from the mining and refining processes used to win them from the mountains.

Continue reading “Mining And Refining: Lead, Silver, And Zinc”

Creating Video Games With AI: A Mario Example

Artificial intelligence (AI) seems to be doing everything these days. Making images, making videos, and replacing most of us real human writers if you believe the hype. Maybe it’s all over! And yet, we persist, to write about yet another job taken over by AI: creating video games.

The research paper is entitled “Video Game Generation: A Practical Study using Mario.” The basic idea is whether a generative AI model can create an interactive video game by first training it on an existing game.

MarioVGG, as it is called, is a “text-to-video model.” It hasn’t built the Mario game that you’re familiar with, though. It takes player commands as text inputs—such as “run, or “jump”—and then outputs video frames showing the result in the ‘game.’ The model was trained on a dataset of frame-by-frame Super Mario Brothers game play, combined with data on user inputs at the time. The model shows an ability to generate believable video output for given player inputs, including basic game physics, item interactions, and collisions. It’s able to do this in a chained way, so that it can reasonably simulate a player making multiple actions and moving through a level of the game.

It’s not like playing a real Mario game yet, by any means. Regardless, the AI model has shown an ability to replicate the world of the game in a way that behaves relatively consistently with its established rules. If you’re in the field of video game development, though, you probably don’t have a lot to worry about just yet—you probably moved past making basic Mario clones years ago, so you’ve got quite an edge for now!

Easily Build This IMU Array Sandbox

These days we’re used to our devices containing an inertial measurement unit (IMU) that lets it know its position relative to the Earth. They’re mechanical devices at heart, and so they’re not infallible, with a few well-known failure modes — but we can try and help it. One way that’s getting some attention is to put many MEMS IMUs on a single PCB, connect it to an FPGA, then process their data all together to make for a more sensitive IMU or filter out drift. Want to join in? Here’s an open source implementation from [will127534].

With 32 individual ICM-42688-P SPI-connected IMUs and the beloved ICE40 chip at the center of the board, this PCB is a powerful platform to help you jump onto the new direction of the IMU research world. There’s example Verilog code that tests the board’s workings, and you can pair it with a Pi Pico running MicroPython to test out its raw capabilities. After that, the stage is yours.

The board is cheap to order online, easy to assemble yourself if you must, or have JLCPCB assemble it — just solder some capacitors on the backside afterwards. There’s a breakout, but it’s mostly for tests. This board is very much designed to be a module in a bigger system, [will] mentions that he’s building a geophone. Clever array-based hacks are en vogue, it would feel – here’s a LED array from [mitxela] that uses LEDs as sensors.

Screen caps of upgraded BBC Micro, and OS 9 code

BBC Micro: A Retro Revamp With The 68008 Upgrade

The BBC Microcomputer, launched in the early 1980s, holds a special place in computing history. Designed for educational purposes, it introduced a generation to programming and technology. With its robust architecture and community-driven modifications, the BBC Micro remains a beloved project for retro computing enthusiasts. [Neil] from Retro4U has been delving into this classic machine, showcasing the fascinating process of repairing and upgrading his BBC Micro with a 68008 CPU upgrade.

Last week, [Neil] shared his progress, unveiling advancements in his repairs and upgrades. After tackling a troublesome beep issue, he successfully managed to get the BBC running with 32 KB of functional memory, allowing him to boot into BASIC. But he wasn’t stopping there. With ambitions set on installing the 68008 CPU, [Neil]’s journey continued.

The 68008 board offers significant enhancements, including multitasking capabilities with OS-9 and its own hard drive and floppy disk controller. However, [Neil] quickly encountered challenges; the board’s condition revealed the usual broken capacitors and a few other faulty components. After addressing these issues, [Neil] turned his attention to programming the necessary ROM for OS-9.

Looking to get your hands dirty? [Neil] has shared a PDF of the upgrade circuit diagram. You can also join the discussion with fellow enthusiasts on his Discord channel, linked in the video description.

Continue reading “BBC Micro: A Retro Revamp With The 68008 Upgrade”

ROG Ally Community Rebuilds The Proprietary Asus EGPU

As far as impressive hacks go, this one is more than enough for your daily quota. You might remember the ROG Ally, a Steam Deck-like x86 gaming console that’s graced our pages a couple of times. Now, this is a big one – from the ROG Ally community, we get a fully open-source eGPU adapter for the ROG Ally, built by reverse-engineering the proprietary and overpriced eGPU sold by Asus.

We’ve seen this journey unfold over a year’s time, and the result is glorious – two different PCBs, one of them an upgraded drop-in replacement board for the original eGPU, and another designed to fit a common eGPU form-factor adapter. The connector on the ROG Ally is semi-proprietary, but its cable could be obtained as a repair part. From there, it was a matter of scrupulous pinout reverse-engineering, logic analyzer protocol captures, ACPI and BIOS decompiling, multiple PCB revisions and months of work – what we got is a masterpiece of community effort.

Do you want to learn how the reverse-engineering process has unfolded? Check out the Diary.md – it’s certainly got something for you to learn, especially if you plan to walk a similar path; then, make sure to read up all the other resources on the GitHub, too! This achievement follows a trend from the ROG Ally community, with us having featured dual-screen mods and battery replacements before – if it continues the same way, who knows, maybe next time we will see a BGA replacement or laser fault injection.

Xiaomi M365 Battery Fault? Just Remove A Capacitor

Electric scooters have long been a hacker’s friend, Xiaomi ones in particular – starting with M365, the Xiaomi scooter family has expanded a fair bit. They do have a weak spot, like many other devices – the battery, something you expect to wear out.

Let’s say, one day the scooter’s diagnostics app shows one section of the battery going way below 3 volts. Was it a sudden failure of one of the cells that brought the whole stage down? Or perhaps, water damage after a hastily assembled scooter? Now, what if you measure the stages with a multimeter and it turns out they are perfectly fine?

Turns out, it might just be a single capacitor’s fault. In a YouTube video, [darieee] tells us all about debugging a Xiaomi M365 battery with such a fault – a BQ76930 controller being responsible for measuring battery voltages. The BMS (Battery Management System) board has capacitors in parallel with the cells, and it appears that some of these capacitors can go faulty.

Are you experiencing this particular fault? It’s easy to check – measure the battery stages and see if the information checks out with the readings in your scooter monitoring app of choice. Could this be a mechanical failure mode for this poor MLCC? Or maybe, a bad batch of capacitors? One thing is clear, this case is worth learning from, adding this kind of failure to your collection of fun LiIon pack tidbits. This pack seems pretty hacker-friendly – other packs lock up when anything is amiss, like the Ryobi batteries do, overdue for someone to really spill their secrets!

Continue reading “Xiaomi M365 Battery Fault? Just Remove A Capacitor”