StarLink Terminal Unit Firmware Dumped

There’s a lot of expense in what telephone companies call “the last mile” — delivering service from the main trunks to your home or business. StarLink wants to avoid that cost by connecting you via an array of low-orbit satellites and some users are already using the service. In Belgium, [Lennert Wouters] managed to dump the terminal’s firmware and has some interesting observations.

The teardown is actually more than just a firmware dump. His “level 1” teardown involves exposing the board. This can be tricky because there are apparently different versions of the terminal out already, so advice from one source might not match your hardware, and that was the case here.

Continue reading “StarLink Terminal Unit Firmware Dumped”

SimpleFOC Demystifies Precision BLDC Motor Control

Brushless DC (BLDC) motors are standard fare in low-precision, speedy RC applications. The control schemes needed to run them slowly or precisely go deep into motor theory and might put these motors out of reach for your next homebrew robot project. [Antun Skuric] and crew aim to change just that. They’ve taken the field-oriented control algorithm and encapsulated it into a compact Arduino library, added a host of examples, and minted a stackable BLDC motor control shield to boot. The sum of their efforts is captured into the SimpleFOC Project in the aim of bringing precision BLDC control to a wide community of new hackers.

Field-Oriented Control is a BLDC motor control scheme that involves using a microprocessor to control the stator winding current in such a way that it always applies torque to the rotor. Doing so requires that your processor measure both motor current (think: shunt resistor) and rotor position (think: encoder). Implementing the algorithm, though, can get a bit tricky since it touches bits of linear algebra, motor physics, and control theory. But that’s the magic behind SimpleFOC. With the library at your fingertips, you don’t have to! And with that, the hardest part of brushless motor control has been made simpler with a solution that’s almost plug-in-and-play.

SimpleFOC has been implemented to extend to a variety of possible implementations. While you can certainly design your own control board, you can also start with the SimpleFOC motor shield for a single motor pulling up to 5 A of current. From there, you’ve got a pretty wide range of micros to choose from as the library has been extended to work on the Arduino, Teensy, STM32, and a few other microcontroller families. For implementation details, theory, and setup, there’s a healthy set of documentation to reference. And if you’re looking to share your project or ask questions, you can pop into the community forum for some high-fives and tips. Best of all, the source code has been offered for your enjoyment under a generous MIT License.

While the project kicked off last year, it’s undergoing continuous improvements including added support for current sensing and torque control in addition to position control. With a healthy community emerging around the project, we’ll keep our eyes peeled for more projects that build off of this fantastic reference design.

If BLDC motor control has your interest piqued, have a look through our archive for other BLDC motor control projects, including motor/controller hybrids, anti-cogging control schemes, and other low-speed position controllers. And if you’re up for a real challenge, why not 3D print the motor too?

Continue reading “SimpleFOC Demystifies Precision BLDC Motor Control”