Developing An Open Source Bike Computer

While bicycles appear to have standardized around a relatively common shape and size, parts for these bikes are another story entirely. It seems as though most reputable bike manufacturers are currently racing against each other to see who can include the most planned obsolescence and force their customers to upgrade even when their old bikes might otherwise be perfectly fine. Luckily, the magic of open source components could solve some of this issue, and this open-source bike computer is something you’ll never have to worry about being forced to upgrade.

The build is based around a Raspberry Pi Zero in order to keep it compact, and it uses a small 2.7 inch LCD screen to display some common information about the current bike ride, including location, speed, and power input from the pedals. It also includes some I2C sensors including pressure and temperature as well as an accelerometer. The system can also be configured to display a map of the current ride as well thanks to the GPS equipment housed inside. It keeps a log in a .fit file format as well so that all rides can be archived.

When compared against a commercial offering it seems to hold up pretty well, and we especially like that it’s not behind a walled garden like other products which could, at any point, decide to charge for map upgrades (or not offer them at all). It’s a little more work to set up, of course, but worth it in the end. It might also be a good idea to pair it with other open source bicycle components as well.

Thanks to [Richard] for the tip!

Logic Gate Game Is Fun AND Educational

How well do you know your logic gates? For their final submission for STEM Projects class, [BKriet] gamified the situation using a Raspberry Pi Pico, some blinkenlights, and a not-insignificant amount of 3D printing. The result is Name! That! Gate!, a fun and educational toy that [BKriet] ultimately donated back to the class (that’s a hot move in our book).

The objective of this game is to figure out which logic gate is being used to make the output shown on the screen, given A, B, and/or C as inputs. There are ten stages to the game, and each correct stage awards the player 14 points, for a perfect score of 140. Although a random gate is loaded for every stage, code ensures that no gate is ever repeated during a single game.

This project is completely open source, so the gate is wide open. Don’t have a 3D printer? Here’s a big set of PCB logic gates, but really, you can make logic gates out of almost anything.

Pi-Cast Adds ATX Signalling To KVM

A KVM is a great tool for administering a number of different computers without cluttering one’s desk with extra peripherals, or for having to re-connect the keyboard, video, and mouse to each new machine as needed. For local administration this can save a ton of time and headache. For remote administration, though, a virtual KVM is needed, and although these solutions are pricey it’s possible to build one around a Raspberry Pi for a fraction of the cost. This one adds even more functionality by also switching the ATX signals from the motherboard and simplifying cable management to boot. Continue reading “Pi-Cast Adds ATX Signalling To KVM”

Ultimate Game And Watch Has Support For NES

We’ve talked about feature creep plenty of times around here, and it’s generally regarded as something to be avoided when designing a prototype. It might sound good to have a lot of features in a build, but this often results in more complexity and more difficulty when actually bringing a project to fruition. [Brendan] has had the opposite experience with this custom handheld originally designed for Game and Watch games, though, and he eventually added NES and Game Boy functionality as well.

As this build was originally intended just for Game and Watch games, the screen is about the size of these old games, and while it can easily mimic the monochrome LCD-style video that would have been present on these 80s handhelds, it also has support for color which means that it’s the perfect candidate for emulating other consoles as well. It’s based around a Raspberry Pi Zero 2W and the enclosure is custom printed and painted. Some workarounds for audio had to be figured out, though, since native analog output isn’t supported, but it still has almost every feature for all of these systems.

While we’ve seen plenty of custom portable builds from everything from retro consoles to more modern ones, the Game and Watch catalog is often overlooked. There are a few out there, but in this case we appreciate the feature creep that allowed this build to support Game Boy and NES games as well.

When Pi Supply Falls Short, Thin Clients Stand Tall For Home Automation And Low Power Computing

Do you need a cheap, small computer for a low power computing project? Historically, many of us would reach straight for a Raspberry Pi, even if we didn’t absolutely need the GPIO. But with prices elevated and supplies in the dumps, [Andreas Spiess] decided that it was time to look for alternatives to now-expensive Pi’s which you can see in the video below the break.

Setting up Debian for IOTstack

Many simply use the Pi for its software ecosystem, its lower power requirements, and diminutive size. [Andreas] has searched eBay, looking for thin PC clients that can be had for as little as $10-15. A few slightly more expensive units were also chosen, and in the video some comparisons are made. How do these thin clients compare to a Pi for power consumption, computing power, and cost? The results may surprise you!

Software is another issue, since many Pi projects rely on Raspbian, a Pi-specific ARM64 Linux distribution. Since Raspbian is based on Debian, [Andreas] chose it as a basis for experimentation. He thoughtfully included such powerful software as Proxmox for virtualization, IOTstack, and Home Assistant, walking the viewer through each step of running Home Assistant on x86-64 hardware and noting the differences between the Linux distributions.

All in all, if you’ve ever considered stepping out of the Pi ecosystem and into general Linux computing, this tutorial will be an excellent starting point. Of course [Andreas] isn’t the first to bark up this tree, and we featured another thin client running Klipper for your 3D printer earlier this month. Have you found your own perfect Pi replacement in these Pi-less times? Let us know in the comments below.

Continue reading “When Pi Supply Falls Short, Thin Clients Stand Tall For Home Automation And Low Power Computing”

A 3D printed cat treat dispenser on a table with a laptop in the background and with a treat in it's tray and a cat on the left about to eat the treat.

Local IOT Cat Treat Dispenser

[MostElectronics], like many of us, loves cats, and so wanted to make an internet connected treat dispenser for their most beloved. The result is an ingenious 3D printed mechanism connected to a Raspberry Pi that’s able to serve treats through a locally run web application.

The inside of a 3d printed cat treat dispenser, showing the different compartments, shaft and wires running out the back.

From the software side, the Raspberry Pi uses a RESTful API that one can connect to through a static IP. The API is implemented as a Python Flask application running under a stand alone web server Python script. The web application itself keeps track of the number of treats left and provides a simple interface to dispense treats at the operators leisure. The RpiMotorLib Python library is used to control a 28BYJ-48 stepper motor through its ULN2003 controller module, which is used to rotate the inside shaft of the treat dispenser.

The mechanism to dispense treats is a stacked, compartmentalized drum, with two drum layers for food compartments that turn to drop treats. The bottom drum dispenses treats through a chute connected to the tray for the cat, leaving an empty compartment that the top drum can replenish by dropping its treats into through a staggered opening. Each compartmentalized treat drum layer provides 11 treats, allowing for a total of 22 treats with two layers stacked on top of each other. One could imagine extending the treat dispenser to include more drum layers by adding even more layers.

Source code is available on GitHub and the STL files for the dispenser are available on Thingiverse. We’ve seen cat electronic feeders before, sometimes with escalating consequences that shake us to our core and leave us questioning our superiority.

Video after the break!

Continue reading “Local IOT Cat Treat Dispenser”

A smartphone-sized PCB is in a person's hand. A large blue chip package houses a 486 and the board has a SoundBlaster card and a 40 PIN Raspberry Pi Connector along one edge for attaching a Raspberry Pi Zero.

TinyLlama Is A 486 In Your Pocket

We love retrocomputing and tiny computers here at Hackaday, so it’s always nice to see projects that combine the two. [Eivind]’s TinyLlama lets you play DOS games on a board that fits in your hand.

Using the 486 SOM from the 86Duino, the TinyLlama adds an integrated Crystal Semiconductor audio chip for AdLib and SoundBlaster support. If you populate the 40 PIN Raspberry Pi connector, you can also use a Pi Zero 2 to give the system MIDI capabilities when coupled with a GY-PCM5102 I²S DAC module.

Audio has been one of the trickier things to get running on these small 486s, so its nice to see a simple, integrated solution available. [Eivind] shows the machine running DOOM (in the video below the break) and starts up Monkey Island at the end. There is a breakout board for serial and PS/2 mouse/keyboard, but he says that USB peripherals work well if you don’t want to drag your Model M out of the closet.

Looking for more projects using the 86Duino? Checkout ISA Sound Cards on 86Duino or Using an 86Duino with a Graphics Card.

Continue reading “TinyLlama Is A 486 In Your Pocket”