A white longtail cargo bike sits on grass with fenced-in planters behind it. The bike has a basket made of black metal tubes on the front and a passenger compartment behind the rider seat for children made of similar black metal tubes. A white canopy is above the passenger compartment and a solar panel sits atop the canopy.

Solar Powered E-bike Replaces Car Trips

E-bikes can replace car trips for some people, and adding a solar panel can make the fun last longer. [Luke] did some heavy modifications to his RadWagon to make it better, stronger, and faster than it was before.

The first step was replacing the stock 750 W controller with a 1500 W model to give the motor twice the power. [Luke] plans to replace the motor if it gets fried pushing too much juice, but is planning on just being careful for now. To stop this super-powered ride, he swapped the stock mechanical discs out for a hydraulic set which should be more reliable, especially when loading down this cargo bike.

On top of these performance enhancements, he also added a 50 W solar panel and maximum power point tracking (MPPT) charge controller to give the bike a potential 50% charge every day. Along with the OEM kid carrier and roof, this bike can haul kids and groceries while laughing at any hills that might come its way.

Checkout this other solar e-bike or this one making a trip around the world for more fun in the sun.

Fox Fined For Using EAS Tone In Football Ad

The Boy Who Cried Wolf is a simple parable that teaches children the fatal risk of raising a false alarm. To do so is to risk one’s life when raising the alarm about a real emergency that may go duly ignored.

Today, we rarely fear wolves, and we don’t worry about them eating us, our sheep, or our children. Instead, we worry about bigger threats, like incoming nuclear weapons, tornadoes, and earthquakes. We’ve built systems to warn us of these calamities, and authorities take a very dim view of those who misuse these alarms. Fox did just that in a recent broadcast, using a designated alarm tone for an advert. This quickly drew the attention of the Federal Communication Commission.
Continue reading “Fox Fined For Using EAS Tone In Football Ad”

Come Join Us For Hackaday Berlin!

It’s been far too long since we’ve had an event in Europe, and we’re going to fix that right now. Hackaday Berlin 2023 will be a day-long conference full of great talks, badge hacking, music, art, madness, and gathering with your favorite hackers on Saturday, March 25.

But it doesn’t stop there. We’ll have a pre-event party Friday night, and then a bring-a-hack brunch on Sunday with further opportunities to show off whatever projects you’re bringing along, hack some more on the badge, wind down, and/or play together. So if your travel plans allow it, come in Friday mid-day and don’t schedule your return ticket until Sunday evening.

Cutting to the chase: early bird tickets are on sale right now, so go get one! But even if you miss out on those, and they’ll go like hotcakes, the regular tickets are well worth it. Everything is fully catered, the badge and the swag are phenomenal, and the talks will be first-rate.

Last time we were in Europe, the party went on until 2 AM!

Saturday’s main events will include a handful of fantastic invited guest talks, but also a few hours of Lightning Talks given by you – yes, you! If you’ve never attended a lightning talk, you get seven minutes to run through one of your favorite projects. We want to know what’s on your workbench right now, what new skills you’ve been teaching yourself, or the groundwork you’ve been laying for the next big project. It’s your chance to inspire everyone in the room – grab it.

Everyone asked us to do a second run of the 2022 Hackaday Supercon badge, and now we’ve got the perfect excuse! Designed by Voja Antonic, the badge is a standalone retrocomputer in the style of an Altair or similar, but it’s much more. Between blinking LEDs that display everything going on, down to the gates in the ALU, and a trimmed-down machine language, it’s an invitation to get deeply in touch with the machine. If you felt left out because you couldn’t travel to Pasadena last November, here’s your second chance.

And then there’s the crowd. Hackaday really is a global community of hackers, and Hackaday events tend to bring out the best. Even if you’re not planning to give a lightning talk (and you should!) be prepared to talk about what you’re doing, because everyone else there is just as interested in cool projects as you are. Hackaday Berlin will be a great opportunity to connect and reconnect with new and old friends alike. Come join us!

We’ll be following up with a speaker announcement next week, but if you have any questions, let us know in the comments below. Otherwise, we’ll see you in Berlin.

Count Leading Zeros For Efficient Logarithms

[Ihsan Kehribar] points out a clever trick you can use to quickly and efficiently compute the logarithm of a 32-bit integer. The technique relies on the CLZ instruction which counts the number of leading zeros in a machine word and is available in many modern processors. Typical algorithms used to compute logarithms are not quick and have a variable execution time depending on the input value. The technique [Ihsan] is using is both fast and has a constant run time.

The above equation summarized the math behind the algorithm. We get the first term easily using the CLZ instruction. Using the remainder and a pre-computed lookup table, it is possible to get the second term to various degrees of accuracy, depending on how big you make the table and whether or not you take the performance hit of interpolation or not — those of a certain age will no likely groan at the memory of doing interpolation by hand from logarithm tables in high school math class. [Ihsan] has posted an MIT-licensed implementation of this technique in his GitHub repository, which includes both the C-language algorithm and Python tools to generate the lookup table and evaluate the errors.

Why would you do this? Our first thought was real-time streaming DSP operations, where you want fast and deterministic calculations, and [Ihsan]’s specifically calls out embedded audio processing as one class of such applications. And he should know, after all, since he developed a MIDI capable polyphonic FM synthesizer on a Cortex M0 that we covered way back in 2015.

All About USB-C: Manufacturer Sins

People experience a variety of problems with USB-C. I’ve asked people online about their negative experiences with USB-C, and got a wide variety of responses, both on Twitter and on Mastodon. In addition to that, communities like r/UsbCHardware keep a lore of things that make some people’s experience with USB-C subpar.

In engineering and hacking, there’s unspoken things we used to quietly consider as unviable. Having bidirectional power and high-speed data on a single port with thousands of peripherals, using nothing but a single data pin – if you’ve ever looked at a schematic for a proprietary docking connector attempting such a feat, you know that you’d find horrors beyond comprehension. For instance, MicroUSB’s ID pin quickly grew into a trove of incompatible resistor values for anything beyond “power or be powered”. Laptop makers had to routinely resort to resistor and one-wire schemes to make sure their chargers aren’t overloaded by a laptop assuming more juice than the charger can give, which introduced a ton of failure modes on its own.

When USB-C was being designed, the group looked through chargers, OTG adapters, display outputs, docking stations, docking stations with charging functions, and display outputs, and united them into a specification that can account for basically everything – over a single cable. What could go wrong?

Of course, device manufacturers found a number of ways to take everything that USB-C provides, and wipe the floor with it. Some of the USB-C sins are noticeable trends. Most of them, I’ve found, are manufacturers’ faults, whether by inattention or by malice; things like cable labelling are squarely in the USB-C standard domain, and there’s plenty of random wear and tear failures.

I don’t know if the USB-C standard could’ve been simpler. I can tell for sure that plenty of mistakes are due to device and cable manufacturers not paying attention. Let’s go through the notorious sins of USB-C, and see what we can learn. Continue reading “All About USB-C: Manufacturer Sins”

MicroPython ESP32 IDE Makes Life Simpler

In theory, using MicroPython on the ESP32 is easy —  just flash an image and connect using a serial port. But that leaves a lot of things you still have to do. You need to move files between the two platforms. You’ll want to manage network configurations. You might want better editing and assistance, too. So there are a number of IDEs made to help you and one we recently noticed was MPY-Jama.

The IDE provides source code editing, of course. But it also allows you to do things like pull information about the network using a dashboard or connect to a WiFi network easily. You can even create your own AP with a simple interface.

Although the front part of the README mentions it is for Windows or Mac, if you scroll down you’ll find instructions for installing under Linux. The IDE is extensible using “Jama Funcs” and can handle the flashing operation from inside the IDE.

Of course, there is an IDE from Arduino (but not the Arduino IDE) that handles MicroPython. You can also find a rundown of several similar alternatives online.  If you need some inspiration for a MicroPython project, perhaps you’d like to play a game?

OG DOOM Shows Off The Origins Of Multi-Monitor

We have a thing for DOOM, and we admit it. The source was released, and clever hackers have ported the engine to every system imaginable. It’s a right of passage, when hacking a machine, to run DOOM on it — be it a VoIP phone, or tractor. But the original 1993 release does have a few notable tricks, and there’s something to be said for recreating that experience on period hardware. And that’s what we’re covering today: [Tech Tangents] discovered DOOM’s multi-monitor support, and built a 4-computer cluster to show it off.

There is a catch, of course. DOOM 1.1 has the multi-monitor support, and under-the-hood, it works by running a copy of the game on individual computers, and controlling the drones over the network. As the game’s network code was updated for version 1.2, the multi-monitor feature was axed to make the network code easier to maintain. So, find a 1.1 shareware release, install it on a DOS machine with IPX drivers, and start each iteration with a -net flag. Use -left and -right to set the drones to the appropriate view. And that view is ninety degrees left and right.

Maybe not ideal, but at the time it was one of the first games to have any sort of multi-monitor support at all. Likely inspired by a commercial flight simulator setup. Either way, it’s a neat feature, and kudos to [Tech Tangents] for showing off this obscure feature of a beloved classic!

Continue reading “OG DOOM Shows Off The Origins Of Multi-Monitor”