Fat Bottomed-Keebs, You Make The Clackin’ World Go Round

Depending on the circles you run in, it can seem like the mechanical keyboard community is all about reduced layouts, and keebs without ten-keys are about as big as it gets. But trust us, there’s plenty of love out there for the bigger ‘boards like [Ben]’s tasty fat-bottomed keyboard. Man oh man, what a delicious slab of throwback to the days when keyboards doubled as melee weapons.

More specifically, this is a 199-key modified Sun Type 5 layout. It runs on two Teensy 2.0s — one for the keyboard matrix, and one for everything else. [Ben] made the metal enclosure entirely by hand without a CNC or laser cutter. While I don’t personally care for linear switches, I have mad respect for these, which are vintage Cherry Blacks pulled from various 1980s AT/XT boards. That 10-key island on the left is dedicated to elementary macros like undo/redo, cut/copy/paste, and open/close/save.

We absolutely love the gigantic rotary encoders, which give it a bit of a boombox look. There’s even reuse involved here, because the encoder knobs are made from jam jar lids that are stuffed with homemade Sugru. [Ben] can use them to play PONG on the LCD and other games not yet implemented on the everything-else Teensy.

Here’s another Sun-inspired keeb, but this one has a reverse 10-key layout that matches the DTMF phone dial.

This Week In Security: Code Scanning, Information Gathering, And Seams In The Cloud

GitHub has enabled free code analysis on public repositories. This is the fruit of the purchase of Semmle, almost exactly one year ago. Anyone with write permissions to a repository can go into the settings, and enable scanning. Beyond the obvious use case of finding vulnerabilities, an exciting option is to automatically analyse pull requests and flag potential security problems automatically. I definitely look forward to seeing this tool in action.

The Code Scanning option is under the Security tab, and the process to enable it only takes a few seconds. I flipped the switch on one of my repos, and it found a handful of issues that are worth looking in to. An important note, anyone can run the tool on a forked repo and see the results. If CodeQL finds an issue, it’s essentially publicly available for anyone who cares to look for it.

Simpler Code Scanning

On the extreme other hand, [Will Butler] wrote a guide to searching for exploits using grep. A simple example, if raw shows up in code, it often signals an unsafe operation. The terms fixme or todo, often in comments, can signal a known security problem that has yet to be fixed. Another example is unsafe, which is an actual keyword in some languages, like Rust. If a Rust project is going to have vulnerabilities, they will likely be in an unsafe block. There are some other language-dependent pointers, and other good tips, so check it out.

Continue reading “This Week In Security: Code Scanning, Information Gathering, And Seams In The Cloud”

Tiny Trash Can Repels Trash Pandas, Medium-Sized Cats

Are you tired of cats and other wildlife relieving themselves in your outdoor plant pots? As if accidental neglect won’t kill them fast enough. [TecnoProfesor] has a solution, and it doesn’t even involve a microcontroller. It detects the presence of approaching animals and then blasts them with annoying sounds and a couple of bright green LEDs to drive them away.

Thanks to a couple of modules, the circuit is really pretty simple. There’s a PIR to detect the animals, a buzzer, and a 555-based pulse generator to play tones through the buzzer. This circuit can run 24/7 on a pair of 6V solar panels that charge up a battery. We particularly like the desk trash can enclosure, though we have to wonder how waterproof this system is. Check out the brief demo after the break.

For all of you satisfied with the 555 implementation here, your reward is this giant functioning 555. If you’re a 555 naysayer, how would you have done it better?

Continue reading “Tiny Trash Can Repels Trash Pandas, Medium-Sized Cats”

FreeCAD Parametrics Made Simple

Simple drafting programs just let you draw like you’d use a pencil. But modern programs use parametric models to provide several benefits. One is that you can use parameters to change parts of your design and other parts will alter to take account of your changes. The other advantage is you can use one model for many similar but different designs. [Brodie Fairhall] has a nice video about how to use parameters in FreeCAD.

The nice thing about parameters is they don’t have to be just constants. You can put in formulae as well. For example, you could define one line as being twice as big as another line. You provide various constraints and parameters and FreeCAD works out the shape for you, keeping all the constraints and formulae satisfied.

Continue reading “FreeCAD Parametrics Made Simple”

Educational Robot Teaches With Magnets And Servos

Teaching kids about robotics gives them valuable skills for their futures, and is generally pretty darn fun for all involved, too. However, teaching children often involves taking a bit of a different tack to educating college students, and more of a hand-holding approach is often needed. This robot project is an attempt to do just that, using some classic time-honored techniques and a unique method of propulsion.

The Magnetic Motion Robot, or MMR, is very much a DIY project. Built out of hand-cut plywood and assembled by lacing together individual modules, it’s a low-cost entry into the world of educational robotics. Rather than wheels or motors, it instead uses electromagnets mounted on servo arms to get around. Switching the magnets on and off, and moving the servos in time, allows the robot to pull itself along a ferromagnetic surface.

The robot is outfitted with buzzers and LEDs, and using these features creates further programming challenges for students. Naturally, there’s also a line-following program, which is a great way to begin educating kids about autonomous robot operations. It’s all run from an Arduino Nano, programmed with Makeblock’s special building-block programming software.

While its DIY nature makes assembly a little more involved than the average off-the-shelf kit, it does present its own learning opportunities such as soldering and the integration of hardware. Educational robots will continue to be popular and fun long into the future; we’re a particular fan of sumobots ourselves. Video after the break.

Continue reading “Educational Robot Teaches With Magnets And Servos”

Current Sensor Makes Intriguing Use Of Concrete

Getting a product to market isn’t all about making sure that the product does what it’s supposed to. Granted, most of us will spend most of our time focusing on the functionality of our projects and less on the form, fit, or finish of the final product, especially for one-off builds that won’t get replicated. For those builds that do eventually leave the prototyping phase, though, a lot more effort goes into the final design and “feel” of the product than we might otherwise think. For example, this current sensor improves its feel by making use of cast concrete in its case.

The current sensor in this build is not too much out of the ordinary. [kevarek] built the sensor around the MCA1101-50-3 chip and added some extra features to improve its electrostatic discharge resistance and also to improve its electromagnetic compatibility over and above the recommended datasheet specifications. The custom case is where this one small detail popped out at us that we haven’t really seen much of before, though. [kevarek] mixed up a small batch of concrete to pour into the case simply because it feels better to have a weightier final product.

While he doesn’t mention building this current sensor to sell to a wider audience, this is exactly something that a final marketable product might have within itself to improve the way the device feels. Heavier things are associated, perhaps subconsciously, with higher quality, and since PCBs and plastic casings don’t weigh much on their own many manufacturers will add dummy weights to improve the relationship between weight and quality. Even though this modification is entirely separate from the function of the product, it’s not uncommon for small changes in design to have a measurable impact on performance, even when the original product remains unmodified.

Thanks to [Saabman] for the tip!

Light Tracking Robot Relies On LDRs

These days, when doing any sort of optical tracking, our mind immediately leaps towards sophisticated solutions. Raspberry Pis, high end cameras, and machine learning toolchains all come to mind. Of course, if your goals are simpler, you needn’t complicate the issue. PHIL is a light tracking robot who is perfectly happy to do it the old-school way.

PHIL consists of an Arduino Uno running a twin-servo motion platform, providing the sensor head with pan and tilt functionality. The sensor head itself consists of a 3D-printed cruciform-section shroud that mounts four light-dependent resistors in individual sections. The shroud helps block light to the off-angle sensors, giving a stronger difference between those exposed to the light directly and those on the dark side. This makes for a stronger difference signal, so when the Arduino reads the sensors, it’s much clearer which way PHIL should point the sensor head to follow the light.

The builder, [Sean O’Donovan], notes that PHIL was built with no practical purpose in mind, and is simply a cool project. We certainly agree, and it’s important to note that skills picked up on a project like this will invariably come in handy down the track. Such techniques can be highly useful for tracking the sun, for example. Video after the break.

Continue reading “Light Tracking Robot Relies On LDRs”