Update: McHck’s self flashing rig

A few weeks ago we featured the McHck project (pronounced McHack), a $5 Cortex M4 based platform which can be directly plugged into one’s computer. Recently, [Simon] announced that he made a firmware allowing a McHck to behave as a SWD adapter and also detailed his flashing rig.

Therefore, those who’d want to build their own McHck would only need to borrow an SWD programmer once to get started. When the first platform has been programmed with the SWD firmware, it can be used to flash and debug applications on the second McHck. Consequently, the microcontroller flashing rig [Simon] designed (shown in the picture above) is based on this. The few core elements are a TQFP48 ZIF programming socket, a push button and two LEDs. Simply push the Kinetis in the programming socket, close it and press the button. Success of the operation is indicated by the two LEDs. [Simon] used the Ragel State Machine Compiler to generate his flashing program and all the code he made can be downloaded from his github.

If you missed the original McHck post now’s your chance to go back and see what it is all about.

Using a flashing LCD monitor to transfer data

lcd-screen-data-transferWe love the concept of using an LCD screen to transfer data. The most wide-spread and successful method we know of is the combination of a QR code and the camera on a smart phone. But for less powerful/costly devices data can be transferred simply by flashing colors on the screen. That’s what [Connor Taylor] is testing out with this project. He’s using a TEMT6000 light sensor to turn a white and black flashing monitor into binary data.

So far this is just a proof of concept that takes measurements from the light sensor which is held in front of a Macbook Retina display with different backlight levels. At 3/4 and full brightness it provides more than enough contrast to reliably differentiate between black and white when measuring the sensor with the Arduino’s ADC. What he hasn’t gotten into yet is the timing necessary to actually transfer data. The issue arises when you need to have multiple 1′s or 0′s in a row. We’ve tried this ourselves using an LDR with limited success. We know it’s possible to get it working since we’ve seen projects like this clock which can only be programmed with a flashing screen.

[Connor's] choice of the TEMT6000 should prove to be a lot more sensitive than using just an LDR. We figure he could find a way to encode using multiple colors in order to speed up the data transfer.

Easy IM-ME flashing

[Travis Goodspeed] wrote a guide to firmware flashing for the IM-ME. He’s using a GoodFET open-source JTAG adapter that he designed to do the programming. This is really taking [Dave's] work on the device and running with it.  The end goal being to develop an operating system for the device. If you haven’t read the past articles, once hacked this becomes a development board for the Chipcon CC1110 processor with keyboard, LCD screen, and wireless communications included.