Valentine’s Puzzle Box Makes You Work For What’s Inside

valentines-puzzle-box

Here’s a new take on a gift box which has been locked from the inside. I doesn’t rely on GPS coordinates or a real-time clock to unfasten the latch. Instead, the box itself acts as a puzzle. You follow the visual and audio clues, turning the box along three axes in order to input the unlock code.

There are three different difficulty settings. The easiest uses the LED heart to indicate which direction to turn the box next. This is accompanied by a beep for correct or a longer tone for incorrect movements. On the medium setting you can only go by the tones, but once you screw up the lights will aid you in getting back to where you where when making the mistake. The impossible setting doesn’t use the lights at all.

[Matt] took inspiration from some reverse geocache projects featured here on Hackaday. He already had an STM32F3 Discovery board on hand which he received as a sample. It’s driving all of the electronics inside, with the on-board gyroscope as the input device. Don’t miss the video after the break to see how well the thing works.

Continue reading “Valentine’s Puzzle Box Makes You Work For What’s Inside”

Reverse Engineering ST-Link/V2 Firmware

reverse-engineering-stlink-v2

The chip seen just above the center of this image is an ARM Cortex-M3. It provides the ability to interface and program the main chip on the STM32F3 Discovery board. The protocol used is the ST-Link/V2 which has become the standard for ST Microelectronics development boards. The thing is, that big ARM chip near the bottom of the image has multiple UARTs and bridging a couple of solder points will connect it to the ST-Link hardware. [Taylor Killian] wanted to figure out if there is built-in firmware support to make this a USB-to-serial converter and his path to the solution involved reverse engineering the ST-Link/V2 firmware.

The first part of the challenge was to get his hands on a firmware image. When you download the firmware update package the image is not included as a discrete file. Instead he had to sniff the USB traffic during a firmware update. He managed to isolate the file and chase down the encryption technique which is being used. It’s a fun read to see how he did this, and we’re looking forward to learning what he can accomplish now that’s got the goods he was after.

A JavaScript Interpreter For ARM ‘micros

When programming a microcontroller to do your bidding, you only have two choices. You could write your code in a proper language such as C and cross-compile your source into a piece of firmware easily understood by a micro. Alternatively, your could load an interpreter on your microcontroller and write code via a serial connection. Interpreters are a really fast and easy method to dig in to the hardware but unfortunately most microcontroller interpreters available are based on BASIC or Forth.

[Gordon] figured it’s not 1980 anymore, and interpreters for these relatively low-level languages aren’t a good fit with the microcontrollers of today. To solve this problem, he created Espruino, a JavaScript interpreter for the new batch of ARM development boards that have been cropping up.

Espruino is designed for the STM32VL Discovery board, although [Gordon] plans on porting his interpreter to the Arduino Due when he can get his hands on one. Installation is as easy as uploading any other piece of firmware, and even though [Gordon]’s STM32VL doesn’t have a USB port for a serial terminal, it’s a snap to connect a USB to TTL converter and get this interpreter working.

Espruino isn’t open source yet, only because [Gordon] would like to clean up his code and write a bit of documentation. He’d also like to make Espruino profitable so he can work on it full-time, so if anyone has an idea on how [Gordon] can do that, leave a note in the comments.

STM32 F3 Discovery Dev Board Includes Some Extras

ST Microelectronics keeps kicking out development boards to show off their new ARM processor line. Yesterday they issued a press release announcing the STM32 F3 Discovery Board. As their naming scheme implies, this carries an ARM Cortex-M3 processor, but compared to the F0 Discovery board (which we loved) it’s got several extra goodies built into it.

We took a look at the F3 Discovery product page and it doesn’t look like you can order these quite yet. But click-through to the pricing and you’ll see they’ve set it at $10.90. Digikey lists the board at that price point, Mouser lists it at about $16, but neither supplier has any available. We also didn’t see a link for free boards like when the F0 model was released. If you do come across a giveaway link please tip us off about it.

Okay, now let’s discuss those extras. We think this dev kit could be used as an IMU for applications like a quadcopter or a self-balancing robot. That’s because it has a gyroscope and an accelerometer. It’s also got ten LEDs, eight of which are arranged on that white circle. We’d guess that layout is for displaying orientation data from the IMU sensors. There’s also a second USB port to use when developing USB applications for the chip.

Like the other boards in the Discovery family this has the STlinkV2 built-in to use as a programmer. We don’t know if OpenOCD has support for the F3 chipset yet, which is what we’ve been using to program STM chips in a Linux environment.