Mechanical Keyboard Is Also A Mouse

The mechanical keyboard community is a vibrant, if not fanatical, group of enthusiasts determined to find as many possible ways of assembling, building, and using as many high-quality keyboards as possible. With so many dedicated participants, most things that can be done with a keyboard already have been done. So when something as unique as this split keyboard that also doubles as a mouse pops up, we take notice.

The keyboard is a custom build from [Taliyah Huang] which uses a pair of Arduinos, one in each half of the keyboard, to communicate key and mouse information to a third Arduino which is plugged in to her laptop. The right-hand half of the keyboard also includes the circuitry from an optical mouse, which gets powered up when the caps lock button is held down. When activated, this allows the keyboard to be used as a mouse directly. It also includes support for most Mac gestures as well, making it just as useful as a trackpad.

While there were some problems with the design, including being slightly too tall to be ergonomic and taking nearly 24 hours of soldering to complete, the prototype device is an interesting one especially since it allows for full control of a computer without needing a dedicated mouse. For other unique mechanical keyboard concepts, we recently featured this build which takes design and functionality cues from the Commodore 64.

Continue reading “Mechanical Keyboard Is Also A Mouse”

An Atomic Pendulum Clock Accurate Enough For CERN

That big grandfather clock in the library might be an impressive piece of mechanical ingenuity, and an even better example of fine cabinetry, but we’d expect that the accuracy of a pendulum timepiece would be limited to a sizable fraction of a minute per day. Unless, of course, you work at CERN and built  “the most accurate pendulum clock on the planet.”

While we’re in no position to judge [Daniel Valuch]’s claim, we’re certainly inclined to believe him, mainly because the 1950s-era Czechoslovakian pendulum clock his project was based on, the Elektročas HH3, was built specifically as a master clock for labs, power plants, and broadcast use. The pendulum of this mid-century beauty is made of the alloy invar, selected for its exceptionally low coefficient of thermal expansion. This ensures the pendulum doesn’t change length with temperature, but it still only brings the clock into the 0.1 second/day range.

Clearly that’s not good enough for a clock at CERN, the European Laboratory for Nuclear Research, where [Daniel] works as an RF engineer. With access to a 10-MHz timebase from a cesium fountain atomic clock — no less a clock than the one that’s used to define the SI second, by the way — [Daniel] looked for ways to sync the clock up to it. Now, we know what you’re thinking — he must have used some kind of PLL to give an electromagnetic “kick” to the bob to trim the pendulum’s period. Good guess on the PLL, but the trimming method is a little cruder — [Daniel] uses a stepper motor attached to the clock’s frame to pay out or retract a length of fine chain into a cardboard dish attached to the pendulum’s rod. The change in mass changes the pendulum’s center of gravity, which changes its effective length, and allows the clock to be tuned a couple of seconds per day.

It seems like [Daniel] is claiming that his chain-corrected clock won’t drift more than a second from the cesium clock for 158 million years. Again, we’ll take his word for it, but it’s a wonderfully ad hoc approach to tuning the clock, and we appreciate its simplicity.

Arduino Is Out To (Rocket) Launch

It looks like an ordinary toolbox, but when you open up the Arduino Launch Control System, you’ll find a safe method for triggering model rocket launches. The system uses two separate power supplies. Both must be on for a successful launch and one requires a key. To trigger a 10-second countdown, the operator must hold down two buttons. Releasing either button will stop the countdown.

Besides safety, the controller tracks mission elapsed time and can read weather information from a few sensors. A good-looking build and we like the idea of building inside a toolbox for this sort of thing.

Continue reading “Arduino Is Out To (Rocket) Launch”

open hardware textile spinning machine constructed from aluminium extrusions, arduino electronics and 3D printed parts

An Open Hardware Automatic Spinning Machine

The team at the Berlin-based Studio HILO has been working on ideas and tools around developing a more open approach to small-scale textile production environments. Leveraging open-source platforms and tools, the team has come up with a simple open hardware spinning machine that can be used for interactive yarn production, right on the desktop. The frame is built with 3030 profile aluminium extrusions, with a handful of 3D printed, and a smidge of laser cut parts. Motion is thanks to, you guessed it, NEMA 17 stepper motors and the once ubiquitous Arduino Mega 2560 plus RAMPS 1.4 combination that many people will be very familiar with.

The project really shines on the documentation side of things, with the project GitLab positively dripping with well-organised information. One minor niggle is that you’ll need access to a polyjet or very accurate multi-material 3D printer to run off the drive wheel and the associated trailing wheel. We’re sure there’s a simple enough way to do it without those tools, for those sufficiently motivated.

We liked the use of Arduino for the firmware, keeping things simple, and in the same vein, Processing for the user interface. That makes sending values from the on-screen slider controls over the USB a piece of cake. Processing doesn’t seem to pop up on these pages too often, which is a shame as it’s a great tool to have at one’s disposal. On the subject of the user interface, it looks like for now only basic parameters can be tweaked on the fly, with some more subtle parameters needing fixing at firmware compilation time. With a bit more time, we’re sure the project will flesh out a bit more, and that area will be improved.

Of course, if you only have raw fibers, that are not appropriately aligned, you need a carder, like this one maybe?

Continue reading “An Open Hardware Automatic Spinning Machine”

RP2040 DMA Hack Makes Another ‘CPU Core’

[Bruce Land] of Cornell University will be a familiar name to many Hackaday readers, searching the site for ‘ECE4760′ will bring up many interesting topics around embedded programming. Every year [Bruce] releases yet more of the students’ work out into the wild to our great delight. This RP2040-based project is a bit more abstract than some previous work and shows yet another implementation of an older hack to utilise the DMA hardware of the RP2040 as another CPU core. While the primary focus of the RP2040 DMA subsystem is moving data between memory spaces, with minimal CPU intervention, the DMA control blocks have some fairly complex behaviour. This allows for a Turing-complete CPU to be implemented purely with the DMA hardware and a sprinkling of memory.

The method ties up three of the twelve DMA channels, and is estimated to have a similar performance to ‘an Arduino’ but [Bruce] doesn’t specify which one of the varied models that could be. But who cares anyway? Programming the CPU is a matter of leveraging the behaviour of the hardware, which is all memory mapped and targetable by the DMA. For example, the CPU can waggle GPIO pins by using the DMA to write values to the peripheral address space. The basic flow can be seen in the image above. DMA0 is used as the program counter, which points DMA1 to an array of DMA control blocks, a sequence of which codes for some of the ‘opcodes’ of the CPU model. DMA0 chains to (hands over control to) DMA1 which reads the control blocks and configures itself accordingly. DMA1 performs whatever data move is programmed, chains to DMA2, which in turn reprograms the DMA0 program counter to point to the next block in the list to be executed by DMA1.

Continue reading “RP2040 DMA Hack Makes Another ‘CPU Core’”

A small 16x2 LCD display housed in a green and yellow hobby box.

Arduino-Powered Info Display For Your Windows Computer

If you’ve been pining for a retro-chic 16×2 LCD display to enhance your Windows computing experience, then [mircemk] has got you covered with their neat Windows-based LCD Info Panel.

Your everyday garden variety Arduino is the hero here, sitting between the computer’s USB port and the display to make the magic happen. Using the ‘LCD Smartie‘ software, the display can serve up some of your typical PC stats such as CPU and network utilization, storage capacity etc. It can also display information from BBC World News, email clients, various computer games and a world of other sources using plugins.

It’s clear that the intention here was to include the display inside your typical PC drive bay, but as you can see in the video below, this display can just about fit anywhere. It’s not uncommon to see similar displays on expensive ‘gamer’ peripherals, so this might be an inexpensive way for someone to bring that same LED-lit charm to their next PC build. You probably have these parts sitting in your desk drawer right now.

If you want to get started building your own, there’s more info over on the Hackaday.io page. And if PC notifications aren’t your jam, it’s worth remembering that these 16×2 displays are good for just about anything, like playing Space Invaders.

Continue reading “Arduino-Powered Info Display For Your Windows Computer”

3d printed tiny gym in a box with mirror and led strip lighting

Get Pumped For This Miniature Gym

[Duncan McIntyre] lives in the UK but participated in a secret Santa gift exchange for his Dutch friends’ Sinterklaas celebration. In traditional maker fashion, [Duncan] went overboard and created a miniature gym gift box, complete with flashing lights, music and a motorized lid.

[Duncan] used [TanyaAkinora]’s 3D printed tiny gym to outfit the box with tiny equipment, with a tiny mirror added to round out the tiny room. An ATmega328P was used as the main microcontroller to drive the MP3 player module and A4988 stepper motor controller. The stepper motor was attached to a drawer slide via a GT2 timing belt and pulley to actuate the lid. Power is provided through an 18V, 2A power supply with an LM7805 providing power to the ATmega328P and supporting logical elements. As an extra flourish, [Duncan] added some hardware audio signal peak detection, fed from the speaker output, which was then sampled by the ATmega328P to be able to flash the lights in time with the playing music. A micro switch detects when the front miniature door is opened to begin the sequence of lights, song and lid opening.

[Duncan] provides source on GitHub for those curious about the Arduino code and schematics. We’re fans of miniature pieces of ephemera and we’ve featured projects ranging from tiny 3D printed tiny escalators to tiny arcade cabinets.

Video after the break!

Continue reading “Get Pumped For This Miniature Gym”