Espruino Pico, Javascript on a USB Stick

There are probably very few official numbers for this, but web developers at least seem to outnumber the amount of people who regularly poke pins and registers with C. For them, the embedded world must be a scary and foreboding domain, full of bitwise operations and dynamic types. [Gordon] figured there was another way and built a Javascript interpreter for a microcontroller. The latest board built around this interpreter is up on Kickstarter, and its even smaller and more capable than his earlier version.

This isn’t [Gordon]’s first rodeo; last year he launched the (full-sized) Espruino, featuring an ARM Cortex M3 and his very own Javascript interpreter. The large-scale Espruino was a rousing success, and now he’s moving on to a smaller thumb drive-sized footprint for the Pico. The hardware is a bit better, relying on the ARM Cortex M4 STM32F4 with a bit more RAM, and this time the board is slightly cheaper. It still runs the same Javascript interpreter, though, so all the code is exactly what you’d expect.

We haven’t seen many projects using this tiny Javascript of Things, but the new layout does make it fantastically useful. Depending on how the crowd funding campaign turns out, [Gordon] might be adding socket, and USB HID support, along with inline C functions.

A Complete C64 System, Emulated on an STM32

The Commodore 64 is the worlds bestselling computer, and we’re pretty sure most programmers and engineers above a certain age owe at least some of their career to this brown/beige keyboard that’s also a computer. These engineers are all grown up now, and it’s about time for a few remakes. [Jeri Ellisworth] owes her success to her version, there are innumerable pieces of the C64 circuit floating around for various microcontrollers, and now [Mathias] has emulated everything (except the SID, that’s still black magic) in a single ARM microcontroller.

On the project page, [Mathais] goes over the capabilities of his board. It uses the STM32F4, overclocked to 235 MHz. There’s a display controller for a 7″ 800×480 TFT, and 4GB of memory for a library of C64 games. Without the display, the entire project is just a bit bigger than a business card. With the display, it’s effectively a C64 tablet, keyboard not included.

This is a direct emulation of the C64, down to individual opcodes in the 6510 CPU of the original. Everything in the original system is emulated, from the VIC, CIAs and VIAs, serial ports, and even the CPU of the 1541 disk drive. The only thing not emulated is the SID chip. That cherished chip sits on a ZIF socket for the amazement of onlookers.

You can check out some images of the build here, or the video demo below.

Continue reading “A Complete C64 System, Emulated on an STM32″

A Cloud Of Lightning Detectors

strikes

Here’s an interesting project to plot every lightning strike on Earth. Blitzortung is a project that uses many extremely low-cost sensor boards packed with an amplifier, microcontroller, and an Ethernet socket to detect lightning strikes. When multiple stations send all that data up to a server, the location of lightning strikes can be calculated, even if they’re hundreds of miles away from any station.

Each station works by detecting a change in the local EM field caused by a lightning strike with either a large loop antenna or a smaller ferrite core antenna. These signals can be amplified and turned into usable data, time stamped, and sent out on the Internet. From there, it’s a simple time of flight calculation to precisely locate where lightning strikes.

The hardware is actually pretty simple, with based on an STM32F4 Discovery board. A controller includes an Ethernet port, GPS unit, LCD, and all the hardware associated with detecting lightning strikes.

If you’d like to see what’s possible with a huge network of lightning detectors connected to the Internet you can check out LightningMaps for a look at what’s possible.

Thanks [Sean] for sending this in.

THP Entry: OpenMV

OpenMV

The future is a scary place, full of robots, drones, and smart appliances with cameras and vision systems that will follow your dog, your child, or your face around, dutifully logging everything they see, reporting back to servers, and compiling huge datasets that can be sold to marketing companies. We’re not too keen on this view of the future, but the tech behind it – cheap cameras in everything – is very cool. [Ibrahim] is doing his part to bring about the age of cheap cameras that are easy to interface with his entry to The Hackaday Prize, the OpenMV.

The idea of a digital camera that is easy to interface with microcontrollers and single board computers isn’t new. There are serial JPEG cameras and the CMUcam5 Pixy, but they cost somewhere around $70. It’s not something you would design a product around. [Ibrahim]’s OpenMV costs about $15, and offers some interesting features like on-board image processing, a huge amount of RAM, and even a wireless expansion thanks to TI’s CC3000 WiFi module.

Currently, the OpenMV is capable of doing face detection at 25fps, color detection at better than 30fps, all thanks to the STM32F4 ARM micro running at 180MHz. There’s support for up to 64MB of RAM on board, with IO available through serial, SPI, I2C, USB 2.0, and WiFi.

It’s an interesting project on its own, but the really cool thing about this build is the price: if [Ibrahim] can actually produce these things for $15 a pop, he has an actual product on his hands, one that could easily be stuffed inside a drone or refrigerator for whatever cool – or nefarious – purposes you can imagine.


SpaceWrencherThe project featured in this post is an entry in The Hackaday Prize. Build something awesome and win a trip to space or hundreds of other prizes.

Vector Graphic Flappy Bird Harder Than It Should Be

 

The dark room at Maker Faire was loud,  after all it’s where Arc Attack was set up plus several other displays that had music. But if you braved the audio, and managed not to experience a seizure or migraine from all the blinking you were greeted with these sharply glowing vector displays on exhibit at the TubeTime booth. We did the best we could with the camera work, but the sharpness of the lines, and contrast of the phosphorescent images against the black screen still seems to pop more if viewed in person.

This isn’t [Eric’s] first attempt at driving high-voltage tube displays. We previously covered his dekatron kitchen timer. But we’d say he certainly stepped things up several notches in the years between then and now. He blogged about Asteroids, which is running on the same hardware as the Flappy Bird demo from our video above. An STM32F4 Discovery board is running a 6502 emulator to push the game to [Eric’s] CRT vector driver hardware.

Just before we were done at the booth, [Eric] turned to us with a twinkle in his eye. He confessed his delight in purposely leaving out any button debounce from the Flappy Bird demo. As if it wasn’t hard enough it tends to glitch after passing just a few of the pipe gates. Muhuhahaha!

Frankenstein, The Open Source Engine Control Unit

20140306_state

The Engine Control Unit is a vital part of every car made in the last 40 years or so, but unlike just about every other electronic device, open source solutions just don’t exist. [Andrey] is trying to change that with rusEfi, a project that hopes to bring together hardware, software, and engines in one easy to use package. He’s even designed Frankenstein, a full ECU ‘shield’ for the STM32F4 Discovery dev board.

This isn’t the first time we’ve seen [Andrey]’s adventures in building an ECU. An earlier board was also powered by the STM32F4 Discovery, and he actually drove his 96 Ford Aspire around using this homebrew ECU. It was only firing on two cylinders, but that was only a loose solder connection.

Of course building an ECU from scratch is worthless without the proper firmware that balances and engine’s fuel economy and performance. This sort of testing must be done empirically and [Andrey] has a Kickstarter going for the development of this firmware and some dyno time. No rewards, but it’s worth chipping in a buck or two. I did.

Videos below.

Continue reading “Frankenstein, The Open Source Engine Control Unit”

Homebrew Phase Laser Rangefinder

laser

Just when you thought ARM micros couldn’t get any cooler, another project comes along to blow you away. [Ilia] created a phase laser rangefinder (.ru, Google translatitron) using nothing but a laser diode, a pair of magnifying glasses, a few components and an STM32F4 Discovery dev board.

The theory behind this build is using a laser’s phase to determine how far away an object is. By modulating the laser diode’s output at a few hundred Mhz, the reflection from the laser can be compared, giving a fairly reasonable estimate of how far away the target is. This method has a few drawbacks; once the reflection is more than 360 degrees out of phase, the distance ‘loops around’ to being right in front of the detector.

The laser diode used does not have any modulation, of course, but by using an STM32F4 ARM chip, [Ilia]was able to modulate the amplitude of the laser with the help of a driver board hacked out of a 74HC04 chip and a few resistors. Not ideal, but it works.

The receiver for the unit uses a photodiode feeding into the same microcontroller. With an impressive amount of DMA and PLL wizardry (the STM32F4 is really cool, you know), the phase of both the transmission and reflection can be compared, giving a distance measurement.

It’s all an impressive amount of work with a hacked together set of optics, a cheap dev board, and a few components just lying around. For any sort of application in a robot or sensor suite this project would fall apart. As a demonstration of the theory of phase laser rangefinding, though, its top notch.

You can check out a video of [Ilia]’s rangefinder below. Be sure to full screen it and check out the distance measurement on the LCD. It’s pretty impressive.

Thanks [Володимир] for the link.

Continue reading “Homebrew Phase Laser Rangefinder”