Posts with «reverse engineering» label

Arduino into NAND Reader

[James Tate] is starting up a project to make a “Super Reverse-Engineering Tool”. First on his list? A simple NAND flash reader, for exactly the same reason that Willie Sutton robbed banks: because that’s where the binaries are.

As it stands, [James]’s first version of this tool is probably not what you want to use if you’re dumping a lot of NAND flash modules. His Arduino code reads the NAND using the notoriously slow digital_read() and digital_write() commands and then dumps it over the serial port at 115,200 baud. We’re not sure which is the binding constraint, but neither of these methods are built for speed.

Instead, the code is built for hackability. It’s pretty modular, and if you’ve got a NAND flash that needs other low-level bit twiddling to give up its data, you should be able to get something up and working quickly, start it running, and then go have a coffee for a few days. When you come back, the data will be dumped and you will have only invested a few minutes of human time in the project.

With TSOP breakout boards selling for cheap, all that prevents you from reading out the sweet memory contents of a random device is a few bucks and some patience. If you haven’t ever done so, pull something out of your junk bin and give it a shot! If you’re feeling DIY, or need to read a flash in place, check out this crazy solder-on hack. Or if you can spring for an FTDI FT2233H breakout board, you can read a NAND flash fast using essentially the same techniques as those presented here.


Filed under: Arduino Hacks, hardware

Reverse-Engineering a Superior Chinese Product

It makes an Arduino look like a 555.  A 364 Mhz, 32 bit processor. 8 MB RAM. GSM. Bluetooth. LCD controller. PWM. USB and dozens more. Smaller than a Zippo and thinner than corrugated cardboard. And here is the kicker: $3. So why isn’t everyone using it? They can’t.

Adoption would mandate tier after tier of hacks just to figure out what exact hardware is there. Try to buy one and find that suppliers close their doors to foreigners. Try to use one, and only hints of incomplete documentation will be found. Is the problem patents? No, not really.

[Bunnie] has dubbed the phenomenon “Gongkai”, a type of institutionalized, collaborative, infringementesque knowledge-exchange that occupies an IP equivalent of bartering. Not quite open source, not quite proprietary. Legally, this sharing is only grey-market on paper, but widespread and quasi-accepted in practice – even among the rights holders. [Bunnie] figures it is just the way business is done in the East and it is a way that is encouraging innovation by knocking down barriers to entry. Chinese startups can churn out gimmicky trash almost on whim, using hardware most of us could only dream about for a serious project.

He contrasts this with the West where only the big players like Apple and Google can step up to the plate. Everyone else is forced to use the embarrassingly obsolete hardware we are all familiar with. But [Bunnie] wants to get his foot in the door. “Can we find a way to still get ahead, yet still play nice?” he asks.

Part of his solution is reverse engineering so that hardware can simply be used – something the EFF has helped legally ensure under fair use. The other half is to make it Open Source. His philosophy is rooted in making a stand on things that matter. It is far from a solid legal foundation, but [Bunnie] and his lawyers are gambling that if it heads to a court, the courts will favor his side.

The particular board targeted is the one described above – the MT6260. Even spurred by the shreds of documentation he could gather, his company is a 2-man team and cannot hope to reverse engineer the whole board. Their goal is to approach the low-hanging fruit so that after a year, the MT6260 at least enters the conversation with ATMega. Give up trying to use it as a phone; just try to use like the Spark Core for now.

He is already much of the way there. After telling you what is on board and why we would all want to use it, [Bunnie] shows how far he has gone to reverse engineering and describes his plans for the rest. From establishing an electronic “beachhead” base of operations to further probe the device, to X-rays, photos, diagrams and the beginnings of an OS. If this type of thing interests you at all, the meticulous approach and easy-reading of this tech teardown will surely impress and inspire you. Every step of progress requires a new hack, a new solution, a new ingenious way to pry information out.

We’ve featured some awe-inspiring reverse engineering attempts in the past, but this is something that is still new and relevant. Rather than only exploit his discoveries for himself, [Bunnie] has documented and published everything he has learned. Everyone wins.

Thanks [David] for the tip.


Filed under: Cellphone Hacks, hardware, slider, teardown

Stepping Through Code on a Pace 4000 Set Top Box

[Lee] wrote in to tell us about a Set Top Box he hacked. Before the cable industry lawyers get out their flaming swords… he’s not stealing cable, or really doing much of anything. This is a hack just for the adventure and thrill of making someone else’s hardware design do your bidding without any kind of instructions.

He posted about the adventure in two parts. The first is finding the JTAG header and identifying the pins. Arduino to the rescue! No really, and this is the type of Arduino use we love. Using a package called JTAGenum the board becomes a quick tool for probing and identifying JTAG connections.

The image above shows a different piece of hardware. From looking at it we’re pretty sure this is a Bus Blaster which is specifically designed for JTAG debugging with ARM processors. This is the beginning of the second part of his documentation which involves code dumping and stepping through lines code (or instructions) using OpenOCD and GDB. It’s a chore to follow all that [Lee] discovered just to write his name to the display of the box. But we certainly found it interesting. The display has a convoluted addressing scheme. We assume that there are cascading shift registers driving the segments and that’s why it behaves the way it does. Take a look for yourself and let us know what you think in the comments.


Filed under: ARM, classic hacks

Enabling F-bus communications with Arduino

It’s always nice to see how creative makers approach communication issues in DIY projects, and today we would like to highlight the approach followed by Alex, from InsideGadgets.

On his website, he provides a detailed tutorial on how to use an old Nokia 6110 (or any derivatives) to send SMS messages by exploiting the Nokia’s F-bus, a simple bi-directional and full-duplex serial protocol.

After considerable reverse engineering work, made possible by useful online documentation, Alex finally managed to send a SMS from his Arduino board, connected to the phone, thanks to AVR libraries made available by AVRFreaks.

More information can be found on InsideGadget.

[Via: Inside Gadgets]

An Arduino-based ADB-to-USB adapter for NeXT keyboards

Have you ever wondered to use your old-fashioned NeXT keyboard with your current, non-ADB computer? The main issue that needs to be solved regards how to interface this ADB keyboard (standing for Apple Desktop Bus, an old protocol used in former NeXT and Apple computers) with a standard USB interface.

In this nice tutorial, Ladyada and Pt describe the approach they have used, based on an Arduino Micro board and… some luck in searching for the right information about the scancode table of the keyboard  ^^.

More information can be found here.

[Via: Adafruit Learning System]

 

Arduino Blog 10 Jan 11:40