[U-Boot] reverse engineering a Philips photoframe

chris warth cswarth at gmail.com
Fri May 5 18:15:05 UTC 2017


On Thu, May 4, 2017 at 12:58 PM, Walter Heck <walterheck at gmail.com> wrote:
> Hi all,
>
> I'm completely new to the world of U-boot, so please forgive me if I spout
> nonsense. I'm looking for a bit of guidance.
>
> I'm reverse engineering an old Philips 10FF2 Photoframe, hoping to one day
> customize it, just for the fun of it. I've been researching quite a bit
and
> after downloading an updated firmware from the philips site and unpacking
> it, I notice it contains (among a bunch of others) 3 files of interest:
> 1) UBLDM350.BIN, sized at about 23k. The binwalk utility tells me it
> contains "ARM executable code, 32-bit, little endian, at least 984 valid
> instructions". I'm guessing this is uboot, not sure how I can confirm?
> 2) A file called Philips.cmd, containing a very simple script which among
a
> lot of other stuff has a line that says: "//[UPDATE BOOTLOADER]"
> 3) A file called P350MAIN.BIN, which I have no real idea what it contains
> yet. It's about 2.3MB large and using a tool called mediaextract I was
able
> to extract at least some JPEGs that contain artwork for the menu of the
> picture frame.
>
> Now, I have a bunch of questions:
> 1) How can I confirm this is indeed uboot? How would I know if it's stock
> UBoot or a modified version?

I would run `strings` on the file. That should quickly spit out a
bunch of clues about its origin.  You might even be lucky enough to
get version information out of it.

> 2) Can I compile uboot myself and replace this one without bricking my
> frame?

Possibly.  First you would have to get a serial interface to the
board.  It is unlikely they left a connector on the production boards
so you might need to do some soldering.  You have to figure out what
processor they are using then configure uboot for that.  It would take
a good bit of persistance.  You might be really lucky and find someone
who has already done this for you.

> 3) As far as I understand Uboot loads the actual OS. Would it be possible
> the P350MAIN.BIN file is that OS?
>

It might be an OS, or it might be a standalone binary that runs on
bare metal.  Again, `strings` will help you here.

Good luck with your project,

-csw


More information about the U-Boot mailing list