The Flaming Yinlips

furan-yinlips

No, that’s not a Playstation Vita up there, it’s a “Yinlips YDPG18A” portable game system. [Ian] found that his Yinlips was lacking in the flash memory department, so he fired up his soldering iron. The Yinlips is based on an Allwinner Sunxi series processor, and uses a standard TSOP48 footprint flash. There is some standardization in flash pin out and packages, so [Ian] picked up the largest pin compatible chips he could find – a pair of 256 gigabit (32 gigabyte) chips from Micron. Desoldering the existing flash proved to be a bit of an adventure as the flash was glued down. [Ian] also didn’t have his hot air gun handy, making things even more interesting. Careful work with a razor blade broke the glue bond.

It turns out that the soldering was the easy part. All flash chips have geometry, die count, page size, block count, sector size, etc. The geometry is similar to the geometry in a hard drive. In fact, just like in modern hard drives, a system will read some basic information before accessing the full storage array. In the case of NAND flash, the processor can access the first page of memory, and query the flash for its part number. Once the part number is known, the geometry can be determined via a lookup table. [Ian] checked the NAND table on github, so he knew going in that his flash chips were not supported. Due to the complexities of booting Allwinner processors into Linux or Android, the table and the NAND driver that uses it exist in several places. The bootloader’s axf file, U-Boot, and several flash application binaries sent from the PC based LiveSuit flash app all required modification. Most of these files were packed into a single flash image. [Ian] used imgrepacker to unpack the image, then opened the hex files. The fact that he knew what the original flash parameter tables looked like was key. He searched for an existing Micron flash table entry, and replaced the parameters with those of his new chips.

With all the files modified, [Ian] re-packed his flash image and sent it over. The Yinlips rewarded his hard work by continually resetting in a bootloop. [Ian] wasn’t going to give up though. He wired into the boot console, and discovered that a CRC check failure on one of his modified files was causing the reset. He then disassembled binary issuing the reset. Changing the return value of the CRC to always pass fixed the issue. [Ian's] now has a collagen infused Yinlips with 58GB of internal storage. Pretty good for a device that only started with 2GB.

Comments

  1. v00 says:

    “Due to the complexities of booting Allwinner processors into Linux or Android”

    Implying that booting Allwinner devices is in any way difficult…

    Still, nice hack! I’ve wanted to do this before myself on occasion, but didn’t have the balls.

  2. Ryoku says:

    I have had my eye on that thing for a while. I wish I was smart enough to do that hack. Other than the clock speeds standard flash size is the deal breaker on that thing. Now if only Sony would make an official phat PSP/xperia they could shame this clone.

    Can’t argue that its an awesome hack though, good for him… I wonder if he’d sell it…

  3. Torque says:

    A similar PSP clone, except with the A20 chip would be juicy.

  4. Restecp!

    Having once gone through the agonies of creating a usable Livesuit image, I can appreciate what he’s doing. “All” I had to do was “just” package the partitions from a working tablet into a single Livesuit image, but that took a lot of experimenting, since the tools that were available seemed to come in different versions, and I didn’t really have much idea what I was doing.

    A neat trick I saw somewhere is reconfiguring the processor pinout so that an RS232 serial port is mapped to the SD card connector – a simple breakout board, and you’ve got a nice serial interface!

  5. strider_mt2k says:

    How is keymapping on that thing?

  6. Barbara says:

    A vacuum-cleaner is the top of cleaning tools; it can be the higher priced.
    You will find many different types of hoover with many different features.
    So prior to purchasing a top-rated vacuum-cleaner ensure you
    know what type of vacuum is perfect to your requirements.

    Choosing the best vacuum can be confounding. To simply help
    make issues better you should be aware of what the
    different types of hoover are, what the key characteristics it is possible to
    find on a vacuum cleaner, and want you variety of flooring you’ll be using a vacuum-cleaner on.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Follow

Get every new post delivered to your Inbox.

Join 91,828 other followers