Accessing the Skylight picture frame
Over the holiday, we received a Skylight picture frame, a wifi-connected picture frame with an accompanying app. As soon as it arrived, I noticed there was a micro USB plug in the back and got curious. Can we “hack” into the device and get a better peek?
Attaching it to my computer and using lsusb
shows it has a Rockchip in it. I feel like Rockchips will either be running some slim Linux distro or something Android-based. I ran adb devices
and sure enough, it’s just a slimmed-down Android-based tablet,
$ adb devices
List of devices attached
3431A0008409 device
Opening a shell, we can see it has a Rockchip RK3128, a fairly high-performance chip for something so innocuous. I’m presuming the designers chose this for its FPU/GPU, since this picture frame supports video playback.
Packages
Running pm list packages
, we can see there’s a handful of apps installed. Mainly, it looks like the company installs com.skylight
and a watchdog skylight.watchdog
. It looks like the apps listen for the android.intent.action.BOOT_COMPLETED
to launch the app. Interestingly, looking at the dump, the MainActivity is com.skylight/odesk.johnlife.skylight.activity.MainActivity
, maybe based on this repo or the parent repo. (As an aside, what’s with these plaintext creds?).
Since the Android browser is still installed, we can launch it using monkey -p com.android.browser 1
:
Launching the settings, monkey -p com.android.settings -c android.intent.category.LAUNCHER 1
, we can see it’s running Android 5.1.1. It has a few GB of storage. It’s a bit outdated, so I think I’ll be keeping this on an isolated network.
Summary
The Skylight is a cute little picture frame. I’m glad it was a gift because there’s no way I would’ve paid for it. The screen is adequate but is not worth over a hundred bucks, but the combination of the hardware and software is worth it for many people.
It looks like somebody could easily create their own app to take place of the default Skylight app, which could be a fun little project.