3D-Printed LED Wall Clock Does Lots With Little

This wall clock built by [Alf Müller] is lovely, using two NeoPixel rings to mark the time by casting light onto a 3D-printed ring. The blue shows the minutes, made more discrete by a grid inside the ring. The green shows the hours.  [Alf] has provided the code so you can rework the color scheme.  It might be interesting to add seconds with the red LEDs, or perhaps a countdown triggered by a touch sensor…

Continue reading “3D-Printed LED Wall Clock Does Lots With Little”

An ebike motor with the controller cover removed. A number of wires and connectors take up most of the space in the cavity.

Open Brain Surgery For EBikes And EScooters

Personal Electric Vehicles (PEVs) all contain the same basic set of parts: a motor, a battery, a motor controller, some sensors, and a display to parse the information. This simplicity allowed [casainho] to develop a custom controller setup for their own PEVs.

Built around the venerable VESC motor controller, [casainho]’s addition is the EBike/EScooter board that interfaces the existing motor of a device to the controller. Their ESP32-powered CircuitPython solution takes the sensor output of a given bike or scooter (throttle, cadence, or torque) and translates it into the inputs the controller uses to set the motor power.

They’ve also designed an ESP32-based display to interface the rest of the system to the user while riding. Since it also runs CircuitPython, it’s easy to reconfigure the functions of the three button device to display whatever you’d like as well as change various drive modes of your system. I know I’d love to see my own ebikes have a different mode for riding on road versus on shared paths since not getting run over by cars and not harassing pedestrians aren’t going to have the same power profile.

If you want to find more ways to join the PEV revolution, check out this wild omni-wheeled bike or this solar car built from two separate e-bikes. If that doesn’t suit your fancy, how about an off-label use for an e-bike battery to power your laptop off grid?

3D printed ring with 4-integrated electrodes for measuring bioimpedance for measuring blood pressure from the finger

Smart Ring Measures Blood Pressure

Continuous blood pressure monitoring has always been a major challenge for the biohacking community. Those giant arm cuffs aren’t exactly the kind of thing you want to wear all day and the wrist monitors aren’t super great either. So, [Kaan] and his research team set out to create a better continuous blood pressure monitor. This time as a ring.

When your heart beats, the volume of blood in the blood vessels increases ever so slightly. This increase in volume results in a decrease in electrical impedance because blood is fairly conductive. We’ve seen a similar volume measurement using light for detecting heart rate, but [Kaan] says with impedance, you won’t need to worry about the effect of skin tone on the accuracy of the measurement.

As far as the hardware is concerned, they inject a small, constant 10 kHz sinusoidal current into the finger through 2 current-injecting electrodes, and then measure the resulting voltage drop across the finger with two sensing electrodes, a standard 4-probe Kelvin approach. Their results seem pretty good. They are within 5.27 millimeters of mercury (mmHg) of the gold standard for systolic blood pressure and 3.87 mmHg for diastolic blood pressure across 10 subjects, which they say are within the American Association for the Advancement of Medical Instrumentation’s (AAMI) guidelines. That’s definitely something to catch your attention.

We’ve seen several attempts to measure blood pressure using the analogous photoplethysmography technique, but those generally don’t seem to work out. Will the impedance plethysmography approach overcome the optical technique’s shortcomings? Only time will tell.

Virginia To Get Large-Scale Wind Farm

If you go about 27 miles off the coast of Virginia, you’ll find two windmills jutting up out of the sea. Two windmills aren’t particularly interesting until you realize that these two are on the edge of a 2,100-acre lease that Dominion Energy is placing in Federal water. According to the company, those two will be joined by 176 more windmills on a nearly 113,000-acre adjacent lease. The project has been in the planning and pilot phase for a while, but it was recently given the green light by the US government. You can see a promotional video about the project below. There’s also a video of the first monopiles — the mounts for the windmills — arriving in the area.

The project will eventually have three offshore substations that feed the power to the state military reservation and, from there, to Naval Air Station Oceania, where it feeds the commercial power grid. The final project will power 660,000 homes.

Continue reading “Virginia To Get Large-Scale Wind Farm”

It’s A Marble Clock, But Not As We Know It

[Ivan Miranda] is taking a very interesting approach to a marble clock. His design is a huge assembly that uses black and white marbles to create a (sort of) dot matrix display. It’s part kinetic art and part digital clock, all driven by marbles.

Here’s how it works: black and white marbles feed into a big elevator. This elevator lifts marbles to the top of the curved runs that make up the biggest part of the device. The horizontal area at the bottom is where the time is shown, with white and black marbles making up the numerical display. But how to make sure the white marbles and black marbles go in the right order?

The solution to that is simple. Marbles feed into the elevator in an unpredictable order. An array of sensors detects the color of each marble. Solenoids simply eject any marble that isn’t in the right place. For example, if the next marble for track n needs to be white, then simply kick out any black marbles in that position until there’s a white one. Simple, effective, and guarantees plenty of mesmerizing moving parts.

Of course, this means that marble ejection and marble color sensing need to be utterly reliable, and [Ivan] ran into problems with both. Marble ejection took some careful component testing and selection to get the right solenoids.  Color sensing (as well as detecting empty spaces) settled on IR-based sensors commonly used in line-following robots.

You can watch the clock in action in the video embedded below just under the page break. We recommend giving it a look, because [Ivan] does a great job of showing all of the little challenges that reared their heads, and how he addressed them. There are still a few things to address, but he expects to have those licked by the next video. In the meantime, [Ivan] asks that if anyone knows a source for high quality glass marbles in bulk, please let him know. Low quality ones vary in size and tend to get stuck.

Marble clocks are great expressions of creativity, especially now that 3D printing is common. We love clock hacks, so if you ever create or run across a good one, let us know about it!

Continue reading “It’s A Marble Clock, But Not As We Know It”

Reduce The Pi 5’s Power Consumption At A Stroke

The Raspberry Pi 5 is the new wunderkind single-board computer on the block, so new in fact that users are still finding out its quirks. One of those quirks is a surprisingly high power consumption when powered down, despite halting the SoC, it leaves the power on and consumes over a watt even in standby. [Jeff Geerling] has a solution, and it’s a simple config change.

It’s useful to know how to fix this, and we’re indebted to him for finding it, but it’s hardly the most complex of hacks. Where the interest lies is in why the board leaves the lights turned on when nobody’s at home in the first place. It seems that some HATs have an issue when the 3V3 rail shuts down, but the 5V rail doesn’t. The Raspberry Pi foundation took the most compatible route and kept the rails on all the time. Perhaps future OS releases will come up with something more elegant, but at least there *is* a fix.

If you’re new to the Pi 5, you can take a look at our review of a preview model, and see why it’s the closest yet to a usable everyday PC that they’ve produced.

Adding Temperature Sensor Functionality To The CH32V003 MCU

As cheap as the WCH CH32V003 MCU is, its approximately $0.10 price tag looks far less attractive when you need to start adding on external ICs for missing basic features, such as temperature measurement. This is a feature that’s commonly found on even basic STM32 MCUs. Fear not though, as [eeucalyptus] shows, you can improvise a working solution by finding alternative sources that can act as a thermometer.

Plot of the temperature measurement using the improvised CH32V003 -based temperature sensor. (Credit: eeucalyptus)
Plot of the temperature measurement using the improvised CH32V003 -based temperature sensor. (Credit: eeucalyptus)

The CH32V003 is a low-end, 32-bit RISC-V-based MCU by the China-based Nanjing Qinheng Microelectronics, commonly known abbreviated as ‘WCH’, and featured on Hackaday previously. Although it features a single-core, 48 MHz CPU, its selection of peripherals is fairly basic:

So how do you create an internal temperature sensor using just this? [eeucalyptus] figured that all that’s needed is to measure the drift between two internal clocks – such as the LSI and HSI – as temperatures change and use this to calibrate a temperature graph.

Unfortunately, the LSI isn’t readily accessible, even through the Timer peripheral. This left the AWU (automatic wake-up unit) which also uses the LSI as a clock source. By letting it go to sleep and wake up after N LSI cycles, the AWU enabled indirect access to the LSI.

Internal diagram of the CH32V003 MCU. (Credit: WCH)
Internal diagram of the CH32V003 MCU. (Credit: WCH)

After calibrating against room temperature (~22 °C) and ice water (0 °C), a temperature plot was obtained, which could conceivably be somewhat accurate. As [eeucalyptus] warns, this is a kind of calibration that likely differs per MCU, and no attempt to quantify the absolute accuracy of this method has been made yet. Even so, as a crude temperature measurement, it might just be good enough.