Much Assembly Required: Game Your Way To Assembly Guru Status

It can be hard these days to find an excuse to create something for learning purposes. Want a microcontroller board? Why make one when you can buy an Arduino or a Blue Pill for nearly nothing? Want to control a 3D printer? Why write the code when you can just download something that works well like Marlin or Repetier? If you want to learn assembly language, then, it can be hard to figure out something you want to do that isn’t so silly that it demotivates you. If that sounds like you, then you should check out Much Assembly Required.

This is a multi-player game that runs in your Web browser. But before you click close, consider this: the game has you control an autonomous robot using an x86-like assembly language. Your robots have to find resources and build structures so it is sort of a mash up of Minecraft and one of the many modern Hammurabi-inspired games like Civilization.

The robots have a variety of peripherals including: drills, lasers, LiDar, legs, a hologram projector, solar-charged batteries, clocks, and more mundane things such as clocks, floppy drives, and a random number generator. The virtual world simulates day and night, so plan your power management accordingly.

You might wonder if you should even bother learning assembly. While it is true it isn’t as necessary as it once was,  understanding what the computer is doing in a very basic way can help form your thinking in surprising ways. There are also those times when you need to optimize something in assembly and that’s the difference between working and not working.

If you want to do something more practical, we’ve looked at options before. Of course, you can always slip your C compiler some assembly, too.

Why Is Donald Duck On The Radio? Math Behind Single Sideband Explained

AM, or amplitude modulation, was the earliest way of sending voice over radio waves. That makes sense because it is easy to modulate a signal and easy to demodulate it, as well. A carbon microphone is sufficient to crudely modulate an AM signal and diode — even a piece of natural crystal — will suffice to demodulate it. Outside of broadcast radio, most AM users migrated to single side band or SSB. On an AM receiver that sounds like Donald Duck, but with a little work, it will sound almost as good as AM, and in many cases better. If you want a better understanding of how SSB carries audio, have a look at [Radio Physics and Electronics] video on the subject.

The video covers the math of what you probably already know: AM has a carrier and two identical side bands. SSB suppresses the carrier and one redundant side band. But the math behind it is elegant, although you probably ought to know some trigonometry. Don’t worry though. At the end of the video, there’s a practical demonstration that will help even if you are math challenged.

Continue reading “Why Is Donald Duck On The Radio? Math Behind Single Sideband Explained”

Try This For 3D Printing Without Support

Have a look at the object to the right. Using a conventional fused deposition printer, how would you print the object? There’s no flat surface to lay on the bed without generating a lot of overhangs. That usually requires support.

In theory, you might be able to print the bottom of the sphere down, but it is difficult to get that little spot to adhere to the bed. If you have at least two extruders and you are set up to print support material, that might even be the best option. However, printing support out of the same material you are printing with makes it hard to get a good clean print. There is another possibility. It does require some post-processing, but then again, not as much as hacking away a bunch of support material.

A Simple Idea

The idea is simple and — at first — it will sound like a lot of trouble. The basic idea is to cut the model in half at some point where both halves would be easy to print and then glue them together.  Stick around (no pun intended), though, because I’ll show you a way to make the alignment of the parts almost painless no matter how complex the object might be.

The practical problem with gluing together half models is getting the pieces in the exact position, but that turns out to be easy if you just make a few simple changes to your model. Another lesser problem is clamping a piece while gluing. You can use a vise, but some oddly-shaped parts are not conducive to traditional vise jaws.

In Practice

Starting with an OpenSCAD object, it is easy to cut the model in half. Actually, you could cut it anywhere. Then it is easy to rotate half of it so the cut line is at the bottom of each part. That doesn’t solve the alignment problem nor does it help you clamp when you glue.

The trick is to build a flange around each part. The flanges mate with a few screws after printing so alignment is perfect and bolts through the flange holes can keep the parts together and immobilized while your glue of choice sets. The kicker is that I even have an automated process to make the design side of this trick very easy.

Continue reading “Try This For 3D Printing Without Support”

Fidget Spinner Becomes A Brushless Motor; Remains Useless

Your grandmother means well. But by the time she figures out something’s a fad, it is old news. So maybe you got a fidget spinner in your stocking this year. Beats coal. Before you regift it to your niece, you could repurpose it to be a motor. Technically, [B.Aswinth Raj] made a brushless motor, although it isn’t going to fly your quadcopter anytime soon, it is still a nice demonstrator.

You can see a video below. The idea is to put magnets on the spinner and use an electromagnet to impart energy into the spinner which is on a piece of threaded rod left over from your last 3D printer build. A hall effect sensor determines when to energize the electromagnet.

A brushed motor uses a spring-loaded brush to carry current through to the motor’s coils and keep the magnetic field oriented properly. A brushless motor works differently. There are several schemes that will work, but the one [Raj] uses is the most common. He adds fixed magnets on the rotor then uses an electromagnet to provide the correct push at the right time. A practical brushless motor will likely have more than one coil, though, and the controller has to do a particular sequence to move the rotor around the rotation.

If you want to see the insides of a real motor, we looked at how to rewind them earlier. If you’d rather repurpose your spinner to something more practical, you could always make some music.

Continue reading “Fidget Spinner Becomes A Brushless Motor; Remains Useless”

Dead EBay Thermal Camera Is An Organ Donor

[Damien] wanted to build a thermal camera. He was dismayed about how much a microbolometer costs so he salvaged one from a dead FLIR he picked up on eBay for 75 pounds. That’s about $100, and less than half what a new sensor costs. He selected one that didn’t turn on, which he hoped meant the Lepton 3 160×120 pixel microbolometer would not be the reason the camera failed.

Once it arrived, he pulled the pricey module, connected it to a breakout board and a Raspberry Pi. His gamble paid off; it worked fine. That wasn’t the end of the project, though. He went on to make a portable, self-contained camera with a rechargeable battery and an LCD screen.

Continue reading “Dead EBay Thermal Camera Is An Organ Donor”

Your 3D Printer Could Print Stone

Most of our  3D printers print in plastic. While metal printing exists, the setup for it is expensive and the less expensive it is, the less impressive the results are. But there are other materials available, including ceramic. You don’t see many hobby-level ceramic printers, but a company, StoneFlower, aims to change all that with a print head that fits a normal 3D printer and extrudes clay. You can see a video of the device, below. They say with some modifications, it can print other things, including solder paste.

The concept isn’t new. There are printers that can do this on the market. However, they still aren’t a common item. Partially, this is a cost issue as many of these printers are pricey. They also often require compressed air to move the viscous clay through tubes. StoneFlower has a syringe pump that doesn’t use compressed air.

Continue reading “Your 3D Printer Could Print Stone”

Fast 3D Printing With Raspberry Pi — But Not How You Think

Although we tend to think of 3D printers as high-tech toys, most of them are not especially powerful in the brain department. There are some exceptions, but most 3D printers run on either an 8-bit Arduino or some Arduino variant with a lot of I/O. There are a few 32-bit boards, but if you grab a random 3D printer, its brain is going to be an 8-bit AVR running something like Marlin or Repetier. It isn’t uncommon to see a Raspberry Pi connected to a printer, too, but — again, in general — it is a network interface that handles sending G-code to the 8-bit controller that runs the stepper motors. Would it make more sense to do things like parse G-code, map out curves, and set accelerations in the relatively powerful Raspberry Pi and relegate the 8-bit AVR to just commanding motors and heaters? [KevinOConnor] thinks so, and he wrote Klipper to prove it.

Klipper is mostly written in Python and it does most of the functions of traditional 3D printing firmware. It communicates with the onboard microprocessor by providing a schedule of when to do what tasks. The microprocessor then handles the timing and things like motion control for the axes and extruder. Klipper can control multiple microprocessors with no trouble and keeps them in synchronization, so you could have a processor for your extruder and one for each stepper, for example. You can use Klipper with a Cartesian machine, a delta, or a Core XY-style printer.

Continue reading “Fast 3D Printing With Raspberry Pi — But Not How You Think”