[Discuss] picture frame

Ben Kallus benjamin.p.kallus.gr at dartmouth.edu
Sun Nov 26 16:19:14 EST 2023


Hi,

You're probably better off returning it to the store and getting a dumber
one that can't connect to the internet and reads the pictures off of an SD
card.

But if you're looking for a fun project...

Most of the time, if the frame can connect to the internet, then its OS is
based on Android and easily rooted.

Getting a shell on these picture frames is often pretty straightforward. If
you have `adb` on your laptop, and the frame has a {micro-,mini-,C-,}USB
port, try connecting it to your laptop and see if it shows up under `adb
devices`. If it does, then you can use `adb shell` and `adb push` the
photos from your laptop.

If that doesn't work, try digging around in settings for a "USB debugging"
option and try again. (It's unlikely that you'll find one, but you never
know!)

If that doesn't work, try `watch -n 0.2 adb shell` and reboot the thing.
Sometimes there's a small window during which adb will work during the boot
process.

If that doesn't work, try doing the same thing while factory resetting the
device.

If that doesn't work, try the last two things but while running `fastboot
reboot recovery`. This will get you into recovery mode, from which adb
access is often enabled.

If that doesn't work, try booting the thing while holding each combination
of buttons. Usually there's a button combination that will get you into
recovery mode, and from there you can use adb.

If that doesn't work, take the thing apart, and scour the board for a UART
header. This might be labelled "RX TX GND" or something along those lines.
(I have seen digital photo frames with root shells exposed over these) If
you see one, test with a multimeter, and if it's 3.3V, then try connecting
to it with a USB-UART cable. You'll need to guess the baud rate, but most
of the time, it's 115200.

On the 6 of these frames that I've picked up, only one of them was
resistant to all of these techniques.

Good luck and have fun!

-Ben


More information about the Discuss mailing list