Learning ARM assembly with visUAL

Learning assembly is very important if you want to get a grasp of how a computer truly works under the hood. VisUAL is a very capable ARM emulator for those interested in learning the ARM assembly.

The GUI: A simply program to ADD two numbers

In addition to supporting a large subset of ARM instructions, the CPU is emulated via a series of elaborate and instructive animations that help visualise the flow of data to/from registers, any changes made to flags, and any branches taken. It also packs very useful animations to help grasp some of the more tricky instruction such as shifts and stack manipulations.

As it is was designed specifically to be used as teaching tool at Imperial College London, the GUI is very friendly, all the syntax errors are highlighted, and an example of the correct syntax is also shown.

Branch visualisation, credits: VisUAL homepage

You can also do the usual things you would expect from any emulator, such as single step through execution, set breakpoints, and view data in different bases. It even warns you of any possible infinite loops!

That being said, lugging such an extravagant GUI comes at a price; programs that consume a few hundred thousand cycles hog far too much RAM should be run in the supported headless mode.


Balance like a Mountain Goat on this Simple Stewart Platform

No goats were harmed in the making of this 3-DOF Stewart platform for [Bruce Land]’s microcontrollers course at Cornell.

If the name “Stewart platform” doesn’t ring a bell, the video below will help you out. [Team Microgoats] built a small version of the mechanical system commonly seen in flight simulators, opting for 3 DOF  to simplify the design. Their PIC32-controlled steppers can wobble and weave the table in response to inputs from an MPU-6050 six-axis accelerometer embedded in the base of a 3D-printed goat. Said goat appears to serve no other role in the build, but goats are cool, so why not? And if you’ve ever seen a mountain goat frolicking across a sheer vertical rock face like it was walking across a parking lot, you’ll understand the connection to the balance and control offered by a Stewart platform.

[Bruce Land]’s course is always a bonanza of neat projects that pop up in our tipline this time of year, like a POV box fan, a coin cell Rickrolling throwie, and a dynamometer for small electric motors.

Continue reading “Balance like a Mountain Goat on this Simple Stewart Platform”

Interfacing with a Digital Speedometer

After swapping the engine out in his scooter, [James Stanley] made an unfortunate discovery. The speedometer was digitally controlled, and while the original engine had a sensor which would generate pulses for it to interpret, his new engine didn’t. Learning that the original sensor would pull the signal wire to ground each time it detected a tooth of one of the spinning gears, [James] reasoned he needed to find a way to detect the scooter’s speed and create these pulses manually.

To find the scooter’s speed, he installed a magnet on the front wheel and a hall effect sensor on the fork to detect each time it passed by. Since the wheel is of a known circumference, timing the pulses from the sensor allows calculation of the current speed. A GPS receiver could be used if you wanted fewer wires, but the hall effect sensor on the wheel is simple and reliable. With the speed of the scooter now known, he needed to turn that into a signal the speedometer understands.

Speedometer controller potted with resin.

[James] wrote a program for an ATmega that would take the input from the wheel sensor and use it to create a PWM signal. This PWM signal drives a transistor, which alternates the speedometer sensor wire between low and floating. With a bit of experimentation, he was able to come up with an algorithm which equated wheel speed to the gearbox speed the speedometer wanted with accuracy close enough for his purposes.

While the software side of this project is interesting in its own right, the hardware is an excellent case study in producing robust electronic devices suitable for use on vehicles. [James] 3D printed a shallow case for the circuit board, and potted the entire device with black polyurethane resin. He even had the forethought to make sure he had a debugging LED and programming connector before he encapsulated everything (which ended up saving the project).

While the specific scenario encountered by [James] is unlikely to befall others, his project is an excellent example of not only interfacing with exiting electronics but producing rugged and professional looking hardware without breaking the bank. Even if scooters aren’t your thing, there are lessons to be learned from this write-up.

For all you two wheeled hackers out there, we’ve covered similar projects designed for bicycles, as well as some very slick digital speedometer mods for motorcycles.

Micro-ATX Arduino is the Ultimate Breakout Board

If you’ve been hanging around microcontrollers and electronics for a while, you’re surely familiar with the concept of the breakout board. Instead of straining to connect wires and components to ever-shrinking ICs and MCUs, a breakout board makes it easier to interface with the device by essentially making it bigger. The Arduino itself, arguably, is a breakout board of sorts. It takes the ATmega chip, adds the hardware necessary to get it talking to a computer over USB, and brings all the GPIO pins out with easy to manage header pins.

But what if you wanted an even bigger breakout board for the ATmega? Something that really had some leg room. Well, say no more, as [Nick Poole] has you covered with his insane RedBoard Pro Micro-ATX. Combining an ATmega32u4 microcontroller with standard desktop PC hardware is just as ridiculous as you’d hope, but surprisingly does offer a couple tangible benefits.

RedBoard PCB layout

The RedBoard is a fully compliant micro-ATX board, and will fit in pretty much any PC case you may have laying around in the junk pile. Everything from the stand-off placement to the alignment of the expansion card slots have been designed so it can drop right into the case of your choice.

That’s right, expansion slots. It’s not using PCI, but it does have a variation of the standard Arduino “shield” concept using 28 pin edge connectors. There’s a rear I/O panel with a USB port and ISP header, and you can even add water cooling if you really want (the board supports standard LGA 1151 socket cooling accessories).

While blowing an Arduino up to ATX size isn’t exactly practical, the RedBoard is not without legitimate advantages. Specifically, the vast amount of free space on the PCB allowed [Nick] to add 2Mbits of storage. There was even some consideration to making removable banks of “RAM” with EEPROM chips, but you’ve got to draw the line somewhere. The RedBoard also supports standard ATX power supplies, which will give you plenty of juice for add-on hardware that may be populating the expansion slots.

With as cheap and plentiful as the miniITX and microATX cases are, it’s no surprise people seem intent on cramming hardware into them. We’ve covered a number of attempts to drag other pieces of hardware kicking and screaming into that ubiquitous beige-box form factor.

Rickroll The Masses With A Coin Cell Throwie

If there is one educational institution that features on these pages more than any other, it may be Cornell University. Every year we receive a pile of tips showing us the engineering term projects from [Bruce Land]’s students, and among them are some amazing pieces of work. Outside the walls of those technical departments though, we suspect that cool hacks may have been thin on the ground. English Literature majors for example contain among their ranks some astoundingly clever people, but they are not known for their handiness with a soldering iron or a lathe.

We’re happy to note then that someone at Cornell who is handy with a soldering iron has been spreading the love. In the form of coin cell powered throwies that intermittently Rickroll the inhabitants of the institution’s halls of residence. We have few technical details, but they seem to be a simple affair of a small microcontroller dead-bug soldered to a coin cell and a piezoelectric speaker. If we were embarking on such a project we’d reach for an ATtiny of some description, but similar work could be done with a PIC or any number of other families.

The Cornell Daily Sun write-up is more a work of investigative journalism detailing the perplexed residents searching for the devices than it is one of technical reference. We’re pleased to note that the university authorities have a relaxed attitude to the prank, and that no action will be taken against the perpetrator should they be found.

Thus we’d like to take a moment to reach out to the Cornell prankster, and draw their attention to our Coin Cell Challenge competition. There is still time to enter, and a Rickrolling throwie would definitely qualify. This isn’t the first tiny Rickrolling prank we’ve shown you on these pages.

Thanks [Simon Yorkston] for the tip.

Joule Thief Steals in Favor of Christmas

A lot of things tend to get stretched during the holiday season, like shopping budgets and waistbands and patience. This year, [Chris] is stretching the limits of both the mini breadboard and the humble 1.5 V LR44 coin cell with his joule thief-driven LED mini Christmas tree.

With the push of a micro momentary, the joule thief circuit squeezes enough power from an LR44 to boot an MSP430 microcontroller, which needs 1.8 V – 3.6 V. After boot, the micro takes control of the joule thief circuit and milks it whenever the voltage falls below 3.2 V. This tree may be small in stature, but it’s feature-rich. A push of the same momentary button cycles through four different light shows, ending with a medley of all four. Be dazzled after the break.

The code for this tiny tree, which features an awesome ASCII breadboard layout and schematic, is up on GitHub. [Chris] has it listed among a few other manageable bare-metal ‘430 projects that would be great for beginners at pure C. If that sounds like you, why not give yourself the gift of learning a new language?

We’ve seen some spirited ways of lighting LEDs, but doing it with candle power takes the fruitcake.

Continue reading “Joule Thief Steals in Favor of Christmas”