LEGO Lunar Lander Animatronic Movie Released

Retired scientist [Mark Howe] spent the last couple months making an animatronic movie featuring his LEGO lunar lander in a video recreation of the Apollo 11 moon landing (also embedded below). [Mark] is not only the producer, but serves as the technical director, set designer, and cameraman as well. He designed and 3D-printed a custom special effects stage for the scene. It gives motion to the LEM using stepper motors, timing belts, pulleys, and a linear guide rod, all hidden inside a discrete upstage tower. He simulates the Lunar regolith using grout, spray adhesive, and a smattering of small rocks.

[Mark] implements the special effects sequencer in an Arduino Nano, and provides sound effects using an Adafruit audio sound board which he loaded up with sound files from the real Apollo 11 landing. Floor strip lighting is provided by an array of Neopixels, and a back-lit Earth is lowered from the fly space for one cut. He made a custom PCB motherboard to hold the Arduino, sound card and motor drivers.

The resulting production is quite impressive. This isn’t [Mark]’s first attempt to relieve the double boredom of both retirement and coronavirus isolation — back in December he produced a similar animatronic movie recreating a Saturn V launch. Thanks to [jhookie55] for the tip.

Continue reading “LEGO Lunar Lander Animatronic Movie Released”

Free RTOS

Getting Started With FreeRTOS And ChibiOS

If operating systems weren’t so useful, we would not be running them on every single of our desktop systems. In the same vein, embedded operating systems provide similar functionality as these desktop OSes, while targeting a more specialized market. Some of these are adapted versions of desktop OSes (e.g. Yocto Linux), whereas others are built up from the ground up for embedded applications, like VxWorks and QNX. Few of those OSes can run on a microcontroller (MCU), however. When you need to run an OS on something like an 8-bit AVR or 32-bit Cortex-M MCU, you need something smaller.

Something like ChibiOS (‘Chibi’ meaning ‘small’ in Japanese), or FreeRTOS (here no points for originality). Perhaps more accurately, FreeRTOS could be summarized as a multi-threading framework targeting low-powered systems, whereas ChibiOS is more of a full-featured OS, including a hardware abstraction layer (HAL) and other niceties.

In this article we’ll take a more in-depth look at these two OSes, to see what benefits they bring. Continue reading “Getting Started With FreeRTOS And ChibiOS”

Visualise ESC Problems With LEDs

For many in the RC community, blowing up an Electronic Speed Controller (ESC) means one thing: throwing it away and buying another one. However, if you’re regularly pushing the limits or simply hate waste, fixing failed units is an option. To assist in this task, [LouD] built an ingeniously simple ESC tester.

The board is designed to be wired in parallel with a brushless DC motor when hooked up to an ESC. The board packs two LEDs per phase, wired in opposite directions. Thus, current flow in both directions can be visualised on a phase-by-phase basis. If everything is operational, the red and green LEDs on each phase should glow evenly as the throttle is ramped up. However, if there are problems, it will be readily apparent as the blinking becomes erratic or one or more LEDs fails to light at all.

It’s a nifty little device that would prove useful when testing  a pile of possibly-defective units. It’s also a quick way to verify a fix. The project is up on OSHPark should you wish to order your own.

Continue reading “Visualise ESC Problems With LEDs”

New Part Day: Onion Tau LiDAR Camera

The Onion Tau LiDAR Camera is a small, time-of-flight (ToF) based depth-sensing camera that looks and works a little like a USB webcam, but with  a really big difference: frames from the Tau include 160 x 60 “pixels” of depth information as well as greyscale. This data is easily accessed via a Python API, and example scripts make it easy to get up and running quickly. The goal is to be an affordable and easy to use option for projects that could benefit from depth sensing.

When the Tau was announced on Crowd Supply, I immediately placed a pre-order for about $180. Since then, the folks at Onion were kind enough to send me a pre-production unit, and I’ve been playing around with the device to get an idea of how it acts, and to build an idea of what kind of projects it would be a good fit for. Here is what I’ve learned so far.

Continue reading “New Part Day: Onion Tau LiDAR Camera”

chadaustin's sculpt keyboard test pads wired to protonC

Tether Tames Temperamental Typing

[chadaustin] has a favorite keyboard with a great ergonomic shape, key travel distance, and size, but after switching to Windows 10, the wireless connection introduced a terrible delay. Worse yet, the receiver is notoriously susceptible to interference from USB 3.0 hubs. To provide 128-bit AES encryption, the receiver is paired with the keyboard at the factory and cannot be replaced. If you lose that, you gain a highly ergonomic paper-weight. The solution for [chadaustin] was tethering the keyboard and receive several crash-courses in hardware hacking along the way. As evidenced by the responses to this project on ycombinator, many long-time fans of the Microsoft Sculpt Ergonomic Keyboard, introduced in 2013, suffer similar issues.

chadaustin's sculpt keyboard USB board layout
KiCad USB controller board layout

We really appreciate that [chadaustin] took an incremental approach, tackling one problem at a time and getting help from others along the way for first attempts at many complex steps. The proof-of-concept involved hand-soldering each lead from the keyboard matrix’s test pads to a QMK Proton C, which worked but couldn’t fit inside the keyboard’s case. For a more permanent and tidy solution, [chadaustin] tried a ribbon-cable breakout board and other microcontrollers, but none of those were compact enough to fit inside the case either. This required a custom PCB, another first for [chadaustin].

After a one-day intro to KiCad, [chadaustin] dug into the datasheets, completed a schematic for the board, and generously shared the process of choosing components and creating the layout. [chadaustin] ordered a board and found the mounting holes’ placement needed to be shifted.

With the full matrix mapped by [johnmilkspill], flashing QMK onto the AT90USB1286 controller went fairly smoothly. [chadaustin] chose to map both sides of the split spacebar back to the space key but did add a feature by repurposing the battery indicator LED to Caps Lock. And the results?

chadaustin's sculpt keyboard USB controller fit into case
USB controller fits into the plastic case, wires added to ISP for bootloader button

According to testing done with Is It Snappy?, the latency dropped from the wireless 78 ms down to 65 ms over USB. More importantly, this latency is now consistent, unaffected by USB hubs, and there is no receiver to lose. Of course, [chadaustin] has ideas for future improvement, including regaining the multimedia function keys, as these kinds of hacks are never really done; they are just in the current revision. No word on the fate of the detached number pad, but that likely needs its own tether and is a project for another day.

Thanks for the tip [Linus Söderlind]

Minimal UART Computer

[Carsten] spent over a year developing a small CPU system, implementing his own minimalist instruction set entirely in TTL logic. The system uses a serial terminal interface for all I/O, hence the term UART in the title. [Carsten] began building this computer on multiple breadboards, which quickly got out of hand.

He moved the design over to a PCB, but he was still restless. This latest revision replaces EEPROM with cheaper and easier to use CMOS Flash chips, and the OS gains a small file system manager. As he says in the video, his enemy is feature creep.

Tetris on the UART Computer

In addition to designing this CPU project, [Carsten] built an assembler and wrote a substantial operating system and various demo programs and games. He not only learned KiCAD to make this board, but also taught himself to use an auto-router. The KiCAD design, Gerbers, and BOM are all provided in his repository above. ROM images and source code are provided, as well as a Windows cross-assembler. But wait – there’s more. He also wrote a cycle exact emulator of the CPU, which, as he rightfully brags, comes in at under 250 lines of C++ code. This whole project is an amazing undertaking and represents a lot of good work. We hope he will eventually release the assembler project as well, in case others want to take on the challenge of building it to run under Linux or MacOS. Despite this, the documentation of the Minimal UART Computer is excellent.

[Carsten] claims the project has finally passed the finish line of his design requirements, but we wonder, will he really stop here? Do check out his YouTube channel for further informative videos. And thanks to [Bruce] for sending in the tip.

Continue reading “Minimal UART Computer”

Phasors In LTSpice

[Ted] recently demonstrated the analysis of an RL circuit using a piece of paper, Octave, and LTSpice. If you prefer, the Octave code should work fine in MATLAB, as well. If you are looking to get serious about electronic theory this is a reasonably simple case and is a good chance to get a workout with some of the tools.

We like the approach because too often it is easy to just use the computer and not pick up the understanding that you get when working through a problem by hand. You do need to understand complex numbers, but, overall, the math isn’t too hairy.

Continue reading “Phasors In LTSpice”