Wednesday, January 09, 2013

Android Stick PC (mk808)

We recently moved so I decided to change things up a bit.  In my old house every hdtv had a pc hooked up to it.  This added a lot of flexibility but also quite a bit of bulk, kind of messy, and unwieldy.  I'm trying the opposite this time using WD TV Live (3rd gen) and now these cheap android stick PCs to add a bit  more general computing.  The mk808 is basically a dual core android device without the screen.  It has hdmi out that you hook up to your TV.

Here are the critical items I think you need to get started:

$56 MK808 - At the time I ordered it from the seller: Sain Store which had it in stock and was fulfilled by amazon so you got prime shipping.  Since then it seems they have sold out.  I know geekbuying is a pretty major seller of these devices but it gets shipped from China so it will take several weeks to get it.  I have no experience with geekbuying).

$17 USB to RJ45 Ethernet Adapter - Some people report issues with wifi dropping in and out.  It worked fine for me for the couple of hours I tested on wifi.  Still, if you plan to stream HD content it's best to go wired.  This works great with the mk808.  Just plug and play.  No drivers to deal with.

$35 Logitech K400 Wireless keyboard with multitouch pad - This is a great compact wireless keyboard with a multitouch touchpad (2 finger scrolling, etc) that is still easy to type on.  It has some nice dedicated keys that work with android like home and the power button will sleep the android pc.  It also duplicates the left mouse button in the upper left corner.  This is handy for clicking and holding and dragging.

$3 Mini hdmi to hdmi cable - The one included is a bit crap and way too short.  Get a nice one that works with all TV's and resolutions at monoprice.

$1 Mini usb cable - You should grab this too since the one included is also a bit cheap.  This will prevent any issues if you plan to flash a custom rom using the OTG usb port.

$19 2 amp USB Power Supply - The apple iPad one is recommended because it's very well built if a bit expensive.  Mine came with a cheap 1 amp power supply.  Highly recommended if you plan to overclock.

Total: $131

So what starts off as being a cheap $55 ish android stick pc over doubles in price if you want to go for a good quality and highly reliable/usable setup.  It also has a microSDHC slot.  I dropped in a 32GB class 6 ($22) just for kicks.  It's not really needed unless you need more local storage or you want to use something like Titanium Backup between rom flash upgrades to quickly restore your apps.  With finless 1.6 you get 2GB internal app storage space and 4GB internal SD.

The first thing I did was install a full rooted custom rom: finless 1.6.  The process was pretty easy.  Just follow the instructions in the readme carefully.  The only thing I got stuck on was getting it into flash mode.  I ended up having to do the alternative paperclip method but that was easy enough.  After that flashing went smoothly.  I did play with it briefly with the factory default rom.  Google play store seemed to work fine.  I was even able to install onlive from the play store just fine.  Still, I wanted to take advantage of some of the neat apps out there that require a rooted system like being able to safely shutdown. I've been reading pulling the power isn't generally a good idea with some risk of corruption.  You also get 2GB of app install space which is nice.

- If you want full screen youtube app grab this version (though it doesn't seem to see the ethernet connection).  I just use the desktop version of the website which still lets you go full screen.  UPDATE: Grab the APK mentioned in this thread for the best full screen HD youtube experience.
- This thing is pretty tiny.  I stuck a killawatt on it.  1w sleep, 2w idle (screen on), 4w under max load (AnTuTu benchmark cpu).
- Performance isn't too bad.  9827 on AnTuTu benchmark.  Think Galaxy S2 speeds.
- Heat doesn't seem to be much of an issue.
- Only does 720p native and scales up to 1080p.  Native 1080p coming in 1.7.  Still, 720p upscaled looks pretty good and text is quite legible on the TV.
- If you completely shutdown the device there is no way to power it back up except unplugging it and plugging it back in.  That is why I'm choosing to just sleep it when not in use (1w of power I can live with) and hooking it up to a UPS I had laying around for safety.  Of course you could also try one of these IR controlled AC outlets.
- Boot time is around 30 sec.  Finless seems to take quite a bit longer than the stock rom.  This is another reason I choose to just sleep the device so it's truly instant on.
- Keyboard support is a bit inconsistent out of the box.  Depending on the app, sometimes the virtual keyboard still pops up and sometimes it doesn't.  When entering URLs into the default browser the enter key launches the site.  In chrome enter does nothing and you have to click on the GO button on the virtual keyboard.  After buying External Keyboard Helper app things work much better as you can actually select external keyboard as your input device.  Before, external keyboard wouldn't even show up as an option.
- No gameloft game support out of the box without some hacking.
- I think ethernet support feels a bit like a hack.  I've come across a few apps now (like the older full screen version of youtube, 1 password, and some games) that don't detect a network connection if wifi is turned off.  That means they won't work over an ethernet connection.
- When you cold boot the device ethernet usually doesn't work until you toggle it off and back on again.

Things you can do with this thing:
- Competent mobile Chrome browser with flash support.  It's still a bit clunky.  Scrolling is still pretty jerky and page load times are longer than I like but it is serviceable.  Do NOT expect iPad like silky smooth scrolling and responsiveness.
- All the usual streaming services like netflix, hulu,  pandora, spotify, etc are there.  You have the entire google play store of apps to explore.
- Stream local content either directly using es file explorer and the built in video player or something like plex or xbmc ( which is not hw accelerated yet so hd is choppy. You need to configure it to work with an external player like mx player.  I haven't tried this yet).  Subsonic is nice for audio.  I found the built in video player to handle 1080p mkv just fine natively.  Even subtitles worked.  Playback was smooth over ethernet but hitched over wifi (even in the same room as the router).  Seeking to different points in the MKV while streaming over a network share was quick and responsive.
- Play games that don't require multi-touch like angry birds.
- Use rkremote.  RKRemote.APK is in the finless distribution.  Just side load it on your android phone or tablet to control your mk808.
- Skype if you hook up a compatible web cam.
- Hook up an xbox 360 controller and load up a bunch of emulators and play a bunch of retro classic games from atari 2600 up through playstation one. (Going to dig into this next.  Will update post when I do.).
- Remote into your desktop using splashtop, teamviewer, etc.
- Tried out Airtight which is an airplay receiver so you can stream from your iOS devices to the mk808.  It works fine with audio and some video.  The built in video player works and so dies air video but goodplayer, netflix, slingplayer do not work.  All audio works fine though.  It's pretty limited but for 99 cents it isn't too bad.

I have one question for those of you more experienced with the MK808. Is there any way to output AC3 or DTS bitstream so I can get true 5.1 sound out of my receiver? Right now 720p MKVs decode just fine but all audio gets down sampled to 2 channel audio. It kind of defeats the purpose of having a nice home theater setup. I have mine hooked up to a pioneer VSX-1021-k receiver. I've tried a variety of players like mx player, xbmc, and plex. Nothing seems to work. When I set xbmc to output ac3/dts over hdmi all I get is static. So I'm just wondering if it's my pioneer being picky (and I know it's a bit finicky with some sources) or the mk808 just doesn't support what I'm trying to do.

Recommended.  It's a fun relatively inexpensive android hacking box dream if you don't mind spending time fiddling with things.  It's definitely not for the type of user that just wants to plug something in and just start using it expecting everything to work.  Without 5.1 audio support I can't recommend this for streaming video.  It's fine for more general purpose use but for media streaming the wd tv live beats the pants off of this thing in overall usability and capability.

UPDATE: 2/25/2013
- XBMC Revisted.
Installed the neon version of mx player and xbmc neon set top box.  Make sure you launch mx player once before installing xbmc.  This new build is suppose to use mx player as an external player for hw accelerated video right out of the box.  This is partially true.  It doesn't work with files streamed over shares (internal player still gets used).  The work around is pre-mount all your shares outside of xbmc using cifsmanager.  So install that first.  Use your favorite file explorer app (I use root explorer) and head over to /mnt/cifs and create a directory for each share you plan to mount.  Once that is done fire up cifsmanager and create all your mounts.  Make sure you click on the share to mount after you create it.  Now that is done head back into xbmc and when you add video source pick root file system instead of network share and browse to /mnt/cifs/yourmount.  That basically tricks xbmc to think the content is local so mx player gets proper launched.  Just remember if you reboot your android you will need to head back into cifsmanager and mount all your shares again.  Performance is pretty solid.  I tried MKV 720p/1080p, mov, avi, divx, flv, mp3, wmv, mp4, ts and pretty much everything plays (granted with 2 channel sound only UGGGG).  DVD iso's don't seem to work.  HD Mpeg2 .ts recordings from hdhomerun play but not 100% smooth.  It's very close but just slightly off.  It's still very watchable.  Plugins are hit and miss with this weird external player version.  Make sure you go into android settings | display | zoom it so there is NO overscan.  Also, hide the bottom menu bar before firing up xbmc and you'll get 16:9 video that nicely fills the entire screen.  UI is nice and responsive.  This really isn't a bad setup if all you need is 2.0 sound.  Unfortunately that doesn't cut it for me.

UPDATE: 2/10/2014
- Updated to finless ROM 2.1 using 6gb app space and 1080p kernal patch.  Used titanium backup pro to help with app migration.  Do not try and flash on windows 8.1 specifically and waste hours of time like I did.  Find a win 8 or win 7 machine.
- Man, I forgot how sluggish these things feel.  I haven't used it in ages.  Cold boot times are really long now too.
- Stopped working with one of the hdmi ports on my pioneer receiver.  Swapped ports with my 360 and both devices work now.  I'm not sure what's going on.  Everything goes pink once in a while now and I have no idea why (happens when hooked directly to the TV too and also on my asus monitor).  Unplugging and replugging in the hdmi fixes it or sometimes it fixes itself after a while.  UPDATE:  pink issue seems to be mostly gone now.
- I'm kind of done with this device.  It just screams cheap flakey Chinese junk.  I wasted a weekend hoping 1080p and the new ROM would help with hdmi compatibility but it hasn't.  I'm using a monoprice hdmi cable (I have 2 of them and tried both) so I know it's not the cable.  If I want to share a browser on the big screen chromecast + chromebook works about 100000X better.  This device really doesn't add any functionality I can do better with other devices.  The only thing that is kind of handy is airtight but when the new appletv finally gets released I'll probably just pick up one of those.


Unknown said...


JONATAN said...

Did you have a chance to test the slingplayer app?

i'm trying to buy an all in one device, and trying that XBMC and Slingplayer works on the same device...

Thanks for your review

Unknown said...

I see that you had Hindi movie app, I was wondering if there are any good way to watch some Indian/Pakistani channels using this device ? something of good quality.
If you have been interested just click