300 Amps Through An Open Source Speed Controller

Sometimes, a little puny matchbox-sized electronic speed controller (ESC) won’t do the job. If you find yourself looking for something heftier, say, in the range of hundreds of amps, you might look towards a design like the MP2 ESC. [owhite] has built an example of the design that can deliver some serious power.

[owhite’s] build has some serious specs: it’s rated to offer up to 300 amps at up to 150 volts, though thus far, it’s only been tested at up to 100 V. Like the original MP2, which hails from the Endless Sphere forums, it’s designed to be compatible with VESC code using the STM32F405 microcontroller. It’s intended for driving high-powered traction motors in applications like e-bikes and electric scooters, as you might have guessed by its potential output power being well into the tens of kilowatts range.

If you’re eager to build your own, you can do so, with the design files on GitHub. Just note that you’ll need some hefty parts to handle the juice, including beefy MOSFETS and juicy capacitors rated at 160 V.

Open source motor controllers abound of late, and we’ve featured a few in recent times. Just remember that astute design and using parts within their means is the key to avoiding letting the smoke out! Continue reading “300 Amps Through An Open Source Speed Controller”

Open Source Spacecraft Avionics With NASA’s Core Flight System

One thing about developing satellites, spacecraft, rovers and kin is that they have a big overlap in terms of functionality. From communication, to handling sensors, propulsion, managing data storage, task scheduling and so on, the teams over at NASA have found over the years that with each project there was a lot of repetition.

Block diagram of a simplified avionics system. (Credit: NASA)
Block diagram of a simplified avionics system. (Credit: NASA)

Either they were either copy-pasting code from old projects, or multiple teams were essentially writing the same code.

To resolve this inefficiency NASA developed the Core Flight System (cFS), a common software framework for spacecraft, based on code and lessons from various space missions. The framework, which the space agency has released under the Apache license, consists of an operating system abstraction layer (OSAL), the underlying OS (VxWorks, FreeRTOS, RTEMS, POSIX, etc.), and the applications that run on top of the OSAL alongside the Core Flight Executive (cFE) component. Here cFS apps can be loaded and unloaded dynamically, along with cFS libraries, as cFS supports both static and dynamic linking.

There are a few sample applications to get started with, and documentation is available, should you wish to use cFS for your own projects. Admittedly, it’s a more complex framework than you’d need for a backyard rover. But who knows? As access to space gets cheaper and cheaper, you might actually get the chance to put together a DIY CubeSat someday — might as well start practicing now.

Gesture-Controlled Robot Arm Is A Nifty Educational Build

Traditionally, robot arms have been controlled either by joysticks, buttons, or very carefully programmed routines. However, for [Narongporn Laosrisin’s] homebrew build, they decided to go with gesture control instead.

The MeArm robotic arm is built using laser cut acrylic parts, and can be had in a kit if so desired. It features four servo motors, charged with rotating the arm’s base, pushing the arm forwards and backwards, up and down, and actuating its gripper. The servos are under the command of a micro:bit microcontroller board, which itself receives signals from a second micro:bit which is strapped to the human wishing to control the arm. The second micro:bit detects gestures with its accelerometer, and then sends the relevant commands to the robotic arm’s micro:bit over its built-in radio link. The arm controller then commands the servos to execute the maneuver.

It may be a small robotic arm that doesn’t have the capacity to lift much, but that’s not the point. This project is a great way to teach students how to program microcontrollers, work with sensor inputs, and just generally how to solve engineering puzzles. To that end, it looks like [Narongporn] has a great project on hand for teaching their students. Video after the break.

Continue reading “Gesture-Controlled Robot Arm Is A Nifty Educational Build”

Crystal structure of Cr2Te3 thin films. (Credit: Hang Chi et al. 2023)

Chromium(III) Telluride As Ferromagnetic Material With Tunable Anomalous Hall Effect

Chromium(III) Telluride (Cr2Te3) is an interesting material for (ferro)magnetic applications, with Yao Wen and colleagues reporting in a 2020 Nano Letters paper that they confirmed it to show spontaneous magnetization at a thickness of less than fifty nanometers, at room temperature. Such a 2D ferromagnet could be very useful for spintronics and other applications. The confirmation of magnetization is performed using a variety of methods, including measuring the Hall Effect (HE) and the Anomalous Hall Effect (AHE), the latter of which is directly dependent on the magnetization of the material, rather than an externally applied field.

More recently, in a June 2023 article by Hang Chi and colleagues in Nature Communications, it is described how such epitaxially obtained Cr2Te3 films show a distinct change in the AHE (in the form of sign reversal) depending on the strain induced by the interface with the various types of substrates (Al2O3, SrTiO3) and the temperature, likely owing to the different thermal expansion rates of the film and substrate. Underlying this change in the observed AHE is the Berry phase and the related curvature. This is a phenomenon that was also noted by Quentin Guillet and colleagues in their 2023 article in Physical  Review Materials, effectively independently confirming the AHE

Using Cr2Te3 in combination with the appropriate substrate might ultimately lead to spintronics-based memory and other devices, even if such applications will still take considerable R&D.

Top image: Crystal structure of Cr2Te3 thin films. (Credit: Hang Chi et al. 2023)

Converting Bluetooth Sensors To Zigbee

With the increase in popularity of Internet of Things (IoT) devices and their need to communicate wirelessly,  there’s been a corresponding explosion of wireless protocols to chose from. Of course there’s Wi-Fi and Bluetooth, but for more specialized applications there are some other options like Z-Wave, LoRa, Sigfox, and Thread. There’s a decent amount of overlap in their capabilities too, so when [SHS] was investigating some low-cost Xiaomi sensors it was discovered that it is possible to convert them from their general purpose Bluetooth protocol over to the more IoT-specialized Zigbee protocol instead.

These combination temperature and humidity sensors have already been explored by [Aaron Christophel] who found that it’s possible to flash these devices with custom firmware. With that background, converting them from Bluetooth to Zigbee is not a huge leap. All that’s needed is the Zigbee firmware from [Ivan Belokobylskiy] aka [devbis] and to follow the steps put together by [SHS] which include a process for flashing the firmware using an over-the-air update and another using UART if the wireless updates go awry. Then it’s just a short process to pair the new Zigbee device to the network and the sensor is back up and running.

Converting from one wireless protocol to another might not seem that necessary, but using Bluetooth as an IoT network often requires proxy nodes as support devices, whereas Zigbee can communicate directly from the sensor to a hub like Home Assistant. Other Zigbee devices themselves can also act as a mesh network of sorts without needing proxy nodes. The only downside of this upgrade is that once the Bluetooth firmware has been replaced, the devices no longer has any Bluetooth functionality.

Thanks to [RoganDawes] for the tip!

Arbitrary Wave Generator For The Raspberry Pi Pico

Once upon a time, if you wanted to generate some waveforms, you needed to buy an expensive off-the-shelf function generator or whip up a big pile of analog electronics. Not so today, when you can grab a fast microcontroller off the shelf and have it squirt out whatever fancy waves you might desire. That’s just what [rgco] did to build this nifty arbitrary wave generator.

The build improves on prior work by [rgco] with the Arduino Uno, with which they built a device that could output at 381 kilosamples per second, with each sample update taking 42 instruction cycles. Thanks to the Pi Pico’s faster clock speed and certain performance optimizations, they were able to up that to a mighty 125 megasamples per second, using the DMA and PIO subsystems to output a new sample every single clock cycle.

The result is a cheap function generator you can build with a Pi Pico and a handful of resistors, which will probably cost you the grand total of $12. It readily outperforms, at least in regards of speed, devices based on the AD9833 function generator chip, which only runs at 25 megasamples. Plus, that chip can only output sines, triangles, and squares!

Even a passable function generator can be a useful tool to have in the workshop, as we’ve seen before. Video after the break.

Continue reading “Arbitrary Wave Generator For The Raspberry Pi Pico”

Monitoring Energy Use And Saving Money

On the surface, the electric grid might seem like a solved piece of infrastructure. But there’s actually been a large amount of computerized modernization going in the background for the past decade or so. At a large scale this means automatic control of the grid, but for some electric utility customers like [Alex] this means the rates for electricity can change every hour based on demand. By keeping an eye on the current rate, you can extract the most value from these utilities.

[Alex] is located in the United Kingdom and has an energy provider whose rates can change every half hour. This information is freely available well enough in advance to download the data and display it visibly in with a NeoPixel LED ring around a clock. The colors displayed by the LEDs represent an increase or decrease in price for the corresponding time and allow him to better plan out the household’s energy use for the day. The clock uses a TinyPICO ESP32 module to gather the data and handle the clock display. A second wall-mounted device shows real-time energy readings for both gas and electricity using two old analog voltmeters modified to display kilowatt-hours.

While not everyone has a utility which allows this sort of granularity with energy pricing, having one can make a bit of a difference as electricity rates under this system can sometimes go negative. [Alex] estimates that using these two displays to coordinate his energy usage has saved around £50 a month. Even if your utility offers minimal or no price adjustments for time-of-use, it’s still a good idea to monitor energy use in your home. Here’s a fairly comprehensive project that does that without modifying any existing wiring.