Programming In Plain English

Star Trek had really smart computers, that you could simply tell what you wanted to do and they did it. The [Rzeppa] family has started a plain English compiler. It runs under Windows and appears to be fairly capable.

Plain language programming isn’t exactly a new idea. COBOL was supposed to mimic natural language with statements like:

MULTIPLY HOURS BY RATE GIVING PAYAMOUNT

You could argue this didn’t go over very well, but there is still a whole lot of COBOL doing a whole lot of things in the business world. Today computers have more memory and speed, so programmers have been getting more and more verbose for decades. No more variable names such as X1 and fprdx. Maybe this will catch on.

Continue reading “Programming In Plain English”

Cheap Lab Balance Needs Upgrades, Gets Gutted Instead

What is this world coming to when you spend seven bucks on a digital scale and you have to completely rebuild it to get the functionality you need? Is nothing sacred anymore?

Such were the straits [Jana Marie] found herself in with his AliExpress special, a portable digital scale that certainly looks like it’s capable of its basic task. Sadly, though, [Jana] was looking for a few more digits of resolution and a lot more in the way of hackability. And so literally almost every original component was ripped out of the scale, replaced by a custom PCB carrying an STM32 microcontroller and OLED display. The PCB has a complicated shape that allows the original lid to attach to it, as well as the stainless steel pan and load cell. [Jana] developed new firmware that fixes some annoying traits, for example powering down after 30 seconds, and adds new functionality, such as piece-counting by weight. The video below shows some of the new features in action.

Alas, [Jana] reports that even the original load cell must go, as it lacks the accuracy her application requires. So she’ll essentially end up building the scale from scratch, which we respect, of course. At this rate, she might even try to build her own load cell from SMD resistors too.

Continue reading “Cheap Lab Balance Needs Upgrades, Gets Gutted Instead”

Mobile Power From Cordless Tool Batteries

For years, [Michael Davis] has been using a large lead-acid battery to power the electronic components of his custom Dobsonian telescope; but that doesn’t mean he particularly enjoyed it. The battery was heavy, and you always had to be mindful of the wires connecting it to the scope. Looking to improve on the situation somewhat, he decided to build an adapter for Ryobi cordless tool batteries.

[Michael] had already seen similar 3D printed adapters, but decided to make his the traditional way. Well, sort of. He used a CNC router to cut out the distinctive shape required to accept the 18 V lithium-ion battery pack, but the rest was assembled from hardware store parts.

Bent mending plates with nuts and bolts were used to create adjustable contacts, and a spring added to the top ensures that there’s always a bit of tension in the system so it makes a good electrical contact. This setup makes for a very robust connector, and as [Michael] points out, the bolts make a convenient place to attach your wires.

With the logistics of physically connecting to the Ryobi batteries sorted out, the next step was turning that into useful power for the telescope. A stable 12 V is produced by way of a compact DC-DC converter, and a toggle switch and fuse connect it to a pair of automotive-style power sockets. Everything is held inside of a wooden box that’s far smaller and lighter than the lead-acid monster it replaced, meaning it can get mounted directly to the telescope rather than laying on the ground.

If you want to build a similar adapter, the 3D printing route will potentially save you some time and effort. But we have to admit that the heavy-duty connection [Michael] has rigged up here looks quite stout. If you’ve got an application where the battery could be knocked around or vibrated lose, this may be the way to go.

How CERN Made High Quality Electronics In The 1970s

We’re suckers for some retro electronics here at Hackaday, so we were fascinated when Daniel Valuch wrote to us with some pictures of his findings in his CERN lab’s archive. He works on Linear Accelerator 3, which has had an extended downtime after many decades of continuous operation, for major upgrades and overhauls. Part of the upgrade involves the removal of electronic assemblies dating back as far as the 1970s, and he’s shared his fascination with them as he trawls through dusty filing cabinets in the lab basement.

What it reveals is a world before the CAD and microcontrollers we know, instead here are circuits using the electronic building blocks of logic gates, discretes, and op-amps. PCBs are laid out not with the KiCad that CERN are famous in our community for today, but on acetate, with transfers and tape. A ground plane is even hand-carved from a red sheet. Oddly though it isn’t a world without CNC, because in the pouch with a design from 1974 is a roll of punched paper tape. If you have ever pondered the “Numerical” in “Computer Numerical Control”, here are the numbers in physical form.

For those of us who were trained in this type of electronic design, the convenience of a PCB CAD package and a professionally-made PCB at the click of a mouse is nothing short of miraculous. But seeing personally laid boards of this quality reminds us that seeing the hand of the designer in them is something few engineers today (with the possible exception of Boldport) manage to recreate.

This Week In Security: Crosstalk, TLS Resumption, And Brave Shenanigans

Intel announced CrossTalk, a new side-channel attack that can leak data from CPU buffers. It’s the same story we’ve heard before. Bits of internal CPU state can be inferred by other processes. This attack is a bit different, in that it can leak data across CPU cores. Only a few CPU instructions are vulnerable, like RDRAND, RDSEEED, and EGETKEY. Those particular instructions matter, because they’re used in Intel’s Secure Enclave and OpenSSL, to name a couple of important examples.
Continue reading “This Week In Security: Crosstalk, TLS Resumption, And Brave Shenanigans”

Binary Math Tricks: Shifting To Divide By Ten Ain’t Easy

On small CPUs, you often don’t have a multiply or divide instruction. Of course, good programmers know that shifting right and left will multiply or divide by a power of two. But there are always cases where you need to use something that isn’t a power of two. Sometimes you can work it out for multiplication.

For example, multiplying by 10 is common when dealing with conversion between binary and decimal. But since 10n is equal to 8n+2n, you can express that as a bunch of left shift three times to multiply by eight, adding that value to your original value shifted left once to multiply by two.

But division is a different problem. n/10 does not equal n/8-n/2 or anything else simple like that. The other day a friend showed me a very convoluted snippet of code on Stack Overflow by user [realtime] that divides a number by 10 and wanted to know how it worked. It is pretty straightforward if you just stick with the math and I’ll show you what I mean in this post. Turns out the post referenced the venerable Hacker’s Delight book, which has a wealth of little tricks like this.

Continue reading “Binary Math Tricks: Shifting To Divide By Ten Ain’t Easy”

Hackaday Podcast 071: Measuring Micrometers, The Goldilocks Fit, Little Linear Motors, And 8-bit Games On ESP32

Hackaday editors Mike Szczys and Elliot Williams fan through a fantastic week of hacking. Most laser cutters try to go bigger, but there’s a minuscule one that shows off a raft of exotic components you’ll want in your bag of tricks. Speaking of tricks, this CNC scroll saw has kinematics the likes of which we’ve never seen before — worth a look just for the dance of polar v. Cartesian elements. We’ve been abusing printf() for decades, but it’s possible to run arbitrary operations just by calling this Turing-complete function. We wrap the week up with odes to low-cost laptops and precision measuring.

Take a look at the links below if you want to follow along, and as always, tell us what you think about this episode in the comments!

Direct download (60 MB or so.)

Continue reading “Hackaday Podcast 071: Measuring Micrometers, The Goldilocks Fit, Little Linear Motors, And 8-bit Games On ESP32”