Coding A Dynamic Menu For Character LCDs On Arduino

These days, there’s a huge variety of screens on the market for use with microcontrollers. OLEDs and graphic LCDs abound, while e-ink devices tempt the user with their clean look and low energy consumption. However, for many purposes, the humble HD44780 character LCD does the job just fine. If you’re using such a device, you might want to implement a simple menu system, and in that case, [MyHomeThings] has you covered.

The menu code is simple to modify and implement. It allows the user to define a certain number of menu items, along with button labels and functions to be executed with button presses. By default, it’s set up to work with  left and right function buttons, with up and down buttons to toggle through the menu’s various entries. This suits the commonly available Arduino shields which combine a 16×2 character LCD with a set of four tactile buttons in a cross formation. However, modifying the code to use an alternate button scheme would be simple for those eager to tweak things to their liking.

For the absolute beginner to programming, it’s a great way to put together a simple interface for your microcontroller projects. It’s the sort of thing you might use if you’d built a do-everything Arduino handheld device, as we’ve seen built before. If you find text menus too archaic for your purposes, though, be sure to sound off with your favourite solutions in the comments.

A 3D Printed Camera Arm For Great 3D Print Timelapses

If you’re a maker that publishes projects online, you’ll be well across the production values arms race that’s been raging over the past decade. For those in the 3D printing space, this means that you’ll need to be producing slick timelapse videos of your prints. [BuildComics] is now doing just that, with a custom camera arm to help do the job. (Video, embedded below.)

The arm relies on a 3D-printed gear train that allows a stepper motor to turn it slowly throughout the print’s duration. It’s controlled by an Arduino that receives commands via Firmata. The arm is mounted on top of the printer, holding a webcam above the build plate for a good view. It’s setup via Octolapse to take images as each layer is finished, giving that haunting look of a model materialising on the print bed throughout the duration of the timelapse.

Files are available for those wishing to build their own. The design as used is for the Prusa Mini, but it should be adaptable to other printers without too much trouble. We’ve reported on Octolapse before, with its videos proving to be the gold standard when it comes to the art of the printing time lapse.

Continue reading “A 3D Printed Camera Arm For Great 3D Print Timelapses”

Cosmic Ray Flips Bit, Assists Mario 64 Speedrunner

We’ve all heard about cosmic rays flipping bits here and there, but by and large, it occurs rarely enough that we don’t worry too much about it on a day-to-day basis. However, it seems just such a ray happened to flip a crucial bit that assisted a speedrunner in the middle of a competition.

The flip happened to [DOTA_Teabag], who suddenly found Mario flying upward to a higher part of a level, completely unexpectedly. Testing by [pannenkoek12] seems to indicate that this may have been due to a single-bit change to Mario’s height value, from C5837800 to C4837800, leading to the plucky Italian plumber warping upwards through the level. The leading theory is that this bit flip was caused by a cosmic ray event, though the likelihood of such an event is exceedingly rare.

It’s possible that there remains another cause for the flip, though after much work from the community replicating the situation in emulation, none has been found. Other suggestions involve electrical noise or other malfunctions causing the flip, though one would rarely expect such an occurrence to change just one bit of RAM. For now, the jury remains out, but who knows – maybe in the future we’ll find out it was a hidden, undiscovered exploit all along. Of course, if Nintendo doesn’t get you going, try speedrunning Windows 95.  Video after the break.

Continue reading “Cosmic Ray Flips Bit, Assists Mario 64 Speedrunner”

Ender V2 Layer Shift Problem Rectified With Cooling

Released in early 2020, the Creality Ender V2 is a popular desktop 3D printer in the maker market. However, some users began having problems with machines ordered in the latter half of the year, with repeated layer shifts occuring during long prints. After much investigation, it appears a fix has been found.

After much experimentation by [Fountain_of_Wisdom], it was determined that layer shifts were occuring at the same time as loud thumps or knocks from the printer. This was often during long X or Y traversals, and when these noises occurred, the print head would shift slightly, perpendicular to the axis of travel. Further investigation led to suspicion of the drive signals to the stepper motors, and it was then determined that the driver chips were becoming excessively hot during long prints. The solution landed upon was to install a fan and improve venting to cool the driver electronics, which curtailed the layer shift problem entirely.

However, such problems aren’t the norm, and since then, owners of the affected units with version 4.2.2 motherboards have been advised to upgrade to version 4.2.7. The exact root cause of the problem is not clear, but we’ve seen earlier Ender models upgraded with newer stepper drivers before; perhaps a similar fix is what makes the later revision motherboard a winner in the V2. If you’ve got insight into the problem, sound off in the comments!

[Thanks to Prodigity for the tip!]

Custom Firmware For IKEA’s ORSALA Lamp

These days, home appliances are equally as likely to have soft buttons and rotary encoders as they are to have a simple old clunk/clunk power switch and an analog knob for controls. This is all well and good if the device aligns with your personal philosophy about how such controls should work; otherwise, it’s absolutely maddening. [j-zero] ran into this problem with their ORSALA lamp from IKEA, and set about rectifying the problem with some custom firmware.

The ORSALA lamp uses a rotary encoder for setting both brightness and color temperature, with a button to toggle modes. A long press is required to switch the lamp off. The custom firmware modifies this behaviour, such that the lamp can be switched on and off with a simple button press. Turning the encoder modifies brightness, and turning it to minimum switches the lamp off too. Meanwhile, the less commonly used color temperature setting can be modified by using the button while adjusting the encoder.

The hack was executed by reprogramming the ORSALA’s onboard microcontroller, the STM8S003F3P6, via its SWIM interface. The pads for the interface are easily located on the board, making the hack easy. Other than the inputs, the lamp packs separate TTP932 LED drivers for the warm white and cool white LEDs, making it easy to code a custom firmware to handle all the necessary functions.

It’s a great example of a hacker taking control of their own device and remaking it to suit their needs. Of course, if you want to go for another hacker trope, just stuff a Raspberry Pi in there instead!

Arduino Announces Board Based On Raspberry Silicon

The Raspberry Pi Pico burst onto the microcontroller scene last month with much fanfare, and is already popping up in projects left, right and center. Notable for its high clock speed and exciting IO features, it’s a breath of fresh air in a market slowly weaning itself onto ARM architectures and away from 8-bit staples. Not one to miss out on a slice of the action, Arduino have announced their own upcoming board based on the Pico’s RP2040 chip.

The board is named the Arduino Nano RP2040 Connect, a moniker that’s not just a mouthful but likely to be confused with existing Arduino Nano products. It sports several differences to the Raspberry Pi Pico, namely packing WiFi, Bluetooth, and an IMU on board which should make developing motion-sensitive and IoT projects easier, particularly in cases where the Pico’s flexible IO could be useful.

Naturally, Arduino IDE integration will be a major plus point that gets many makers on board, and we can imagine there will be swift development of libraries leveraging the RP2040’s PIO subsystem. If you still haven’t gotten the low down on the Raspberry Pi Pico yet, though, never fear – our own [Elliot Williams] can tell you everything you need to know!

[Thanks to Darrell Flenniken for the tip, via Tom’s Hardware]

Making A Toothbrush From Scratch, Right Down To The Bristles

Most of us probably get by with a toothbrush costing a couple dollars at most, made of injection-moulded plastic for delicate, tender mouths. Maybe if you’re a real cleantooth, you have a fancy buzzy electric one. We’d wager few are machining their own bespoke toothbrushes from scratch, but if you want some inspiration, [W&M Levsha] is doing just that.

Much of the work will be familiar to die hard machining enthusiasts. There’s careful crafting of the wood handle, involving a stackup of multiple stained and varnished woods – in this case, hornbeam being the paler of the two, and amaranth providing that rich red color. The stem is a stylish stainless steel piece, elegantly bent to a tasteful curve. Finally, the assembly of the brush head alone is worth the watch. It’s custom made – with a steel backing plate and fishing wire bristles custom cut with an automated jig using stepper motors.  We’re suspect fishing wire is not rated for dental use, but the nylon strands are at least in the ballpark of what regular toothbrushes use.

While we probably wouldn’t slide this one betwixt our lips without consulting a dental professional first, it’s a great video for learning about what it takes to make beautiful bespoke objects in the workshop. We’ve seen elegant work from [W&M Levsha] before, too – in the form of a delightfully eclectic cap gun lighter. Video after the break.

Continue reading “Making A Toothbrush From Scratch, Right Down To The Bristles”