I soon set out to compile it for use with Linux, with some help from fellow developer Omegamoon, who is also doing a great work on OpenELEC XBMC Linux for RK devices.
Then, after adding some of the kernel fixes I've published in previous blogposts (to me the most important is the one that fixes support for 1080p monitors) as well as adding Mali 3D HW acceleration support (thanks Olegk0 for your great work!) I tested this kernel and it's more stable than the previous.
I've also noticed that an issue with USB has disappeared (on kernel 3.0.8 I experienced USB dis-/re-connects very often, which disabled USB devices for several seconds).
Please note that I am so in love with the extreme low power nature of these devices and their noiselessness that I am using my Measy U2C as a "PC stick" and work with it as much as I can (using the excellent lightweight XFCE windows manager), since you can install all the SW in the Ubuntu Software Center plus any other programs can be compiled straight away for ARM from within Picuntu itself (no need for cross-compilers).
Xubuntu on kernel 3.0.36+ running with Mali 3D on my RK3066 stick |
All my code changes and fixes are publicly available in my github repositories (in this case here) but, since many people are not too comfortable compiling the kernel from sources, I've decided to release a generic 3.0.36+ image and modules+firmware so you can enjoy too this new level of stability and performance with your Linux.
You can find the 1080p kernel 3.0.36+ for RK3066 recovery image here (compressed with .7z)
and the 720p kernel 3.0.36+ for RK3066 recovery image here (compressed with .7z)
And the modules+firmware here (also .7z to be decompressed in the root folder of your Picuntu MicroSD).
My recommendation is to also install the following enhancements to your MicroSD filesystem:
- Flash support for Chromium web browser
- Mali 3D HW XF86 drivers (the above kernel includes the necessary Mali modules, but to enable them you also need these steps, except the last step of kernel compilation!)
- If you are going to use your stick as a PC, I strongly recommend adding a swap file to avoid "deadlocking" your Linux due to lack of RAM, look for "swap" here
BTW, I've enabled RK903 Wifi driver on the kernel configuration. However, I don't own a stick with the RK903, so I can't test if it works. In any case don't expect Wifi chips that didn't work with previous kernel to work with this one, since nothing has changed there, afaik.
If you find any troubles, I usually answer questions on Miniand's Linux forum, so don't hesitate to post your issues there :)
Galland-
ReplyDeleteI recently came across your discovery of some MT5931 source code. I grabbed an archive of your fork, how well has that been compiling against the current kernel release in 3.0.8? I bought an MK802 IIIS (also listed as MK802 IIIB, or MK802 III w/ bluetooth) which doesn't contain the truly supported Realtek chipset.
Of course, just as picuntu-da-server.sh describes, the Linux stick is pretty useless without a wifi driver. I am reluctant to purchase a separate card.
Looking forward to hearing more from you in the world of the MT5931. I'll try compiling it on the stick tonight either way. Let me know if I can be of any help with the Picuntu project or any of your own endeavors.
Best,
Aaron
GMail account: aaronthesilber
I've smashed my head in both kernels 3.0.8 and 3.0.36 against the 3 different source codes I've found for those Mediatek chips, but they are isolated from the kernel, I'm missing the connection with the RK3066 SoC's pins.
ReplyDeleteTruth be told, I'm not an expert, by any means, in most parts of the kernel related to making this BT+Wifi through SDIO work, so I may very well be missing something (apart from Mediatek's documentation!!!!:)
If you look at the 3.0.36 commit history you'll see part of my struggle :)
https://github.com/Galland/rk3x_kernel_3.0.36/commits/master
Thank you very much for your help! :)
Could this help....
ReplyDeletehttps://www.dropbox.com/s/gepvwaqeb45ut6v/TAB%2010IS%28RK3066%2BMT5931%2BMT6622%29.pdf
I have kernel 3.0.36+ with the modules installed on a UG-802.
ReplyDeleteI need to compile a driver for my USB-LAN adapter (HG20G9.ko).
I downloaded the 3.0.36 source code for rk3066 in my UG802, I compiled the source code but couldn't execute the insmod command because the compiled module wasn't for kernel 3.0.36+ but for 3.0.36.
Could you please tell me where I can find the source code for UG-802 3.0.36+ kernel ?
Thanks in advance
Look for the link "(in this case here)" above, where it says:
Delete"All my code changes and fixes are publicly available in my github repositories (in this case here)"
Hi Galland,
ReplyDeletethanks for putting all this RK3066 related info together!
I installed 3.0.36+ on my UG802. This stick is equipped with RTL8188EU WiFi chip and it seems that built-in driver doesn't recognize it. I had to revert to original Picuntu RTL8188EU driver to get it working. Basically I did step 4 from this post: http://www.rikomagic.co.uk/forum/viewtopic.php?f=6&t=3299#p9313 - modified /drivers/net/wireless/Kconfig and Makefile, disabled new rtl8188eu driver and reenabled old one.
Thank you very much for sharing this info and your fix!
DeleteRight now I'm working on getting Linux to work on the latest kernel (one step ahead of the one in this post, and with RK3066/RK3188 support), and hope to blog about it when it works... but can't tell when, this one is difficult!
I'll follow your indications for this wifi chip's driver! :)
Hi Galland,
DeleteThanks for everything. I managed to install everything but now I am facing RTL8188CUS driver issues (wifi usb dongle).
I tried to download the driver from realtek website but can't compile at all (I am quite a newbie here).
Is there an easy way to add the driver for this wifi chipset?
My stick is CX-803 II (http://www.radiolocman.com/news/new.html?di=148118).
As you'll notice, the wifi chipset for the stick is also RTL8188.
Thanks again for the good work and for sharing!
Jon
Hi,
DeleteI was wondering if someone is using RTL8188cus and if it is the case, can anyone share ko file? That would be terrific ;)
Thanks again for the great work!
Jon
Thank you jerry.tk and thank you a lot Galland for your kernel and all your wonderfull posts !
DeleteTo enable wifi on chipsets with 8188eu, don't forget before the compiling process after commenting new drivers and uncommenting old drivers in /drivers/net/wireless/Kconfig and Makefile as stated by jerry.tk to modify your .config file and replace this line
# CONFIG_RTL8188EU is not set
with this one :
CONFIG_RTL8188EU=m
to be able to have the module compiled !
To enable this wifi I followed http://hwswbits.blogspot.in/2013/03/compiling-picuntu-kernel-ubuntu-linux.html and made the corrections stated in this comment before launching the compiling.
The first time I compiled the kernel and modules I couldn't find the module for my wifi chip... So I had to change the .config file and now it works !
Hi Galland,
ReplyDeleteI wanna try this kernel on my mk808, but the wifi is not working, I got eth0 while the mac address is 0:0:0:0:0:0, any idea how to fix this?
Thank in advance.
I think that for the MK808 it's enough with compiling the kernel with RK901 as Wifi.
DeleteHi Galland, thanks for this! Got 3.0.36 running on my UG802 and so far so good. I'm not using it with Picuntu though, it's fairly easy to put your own root filesystem on the MicroSD so I'm currently using Debian Wheezy.
ReplyDeleteuname -a
Linux ug802 3.0.36 #1 SMP PREEMPT Sat Jun 15 18:38:15 CEST 2013 armv7l GNU/Linux
I noticed that you didn't state if one needed to have their device rooted. - I have an MK809 II and haven't noticed it being mentioned in many posts, so I'm feeling a little wary of trying to root it, if I need to.
ReplyDeleteYou may need to root your device's Android in order to do a "reboot recovery" (or use an app that executes that command for you, like "Autorun Linux") to boot into Picuntu.
DeleteHi Galland,
ReplyDeleteWould it be possible to make VGA version of kernel available in addition to 720p & 1080p?
Many thanks!
Can you compile this kernel for mk802 iiis?
ReplyDeleteThx
You should be able to flash the above kernel in your stick. Though internal Wifi is not supported.
DeleteIt doesn't boot, with ug802 kernel from http://home.g8.net/index.php/downloads it's ok.
DeleteCan somebody give kernel working with mk802 iiis w/o bluetooth with hw acceleration?
ReplyDeleteGalland please add this drivers
ReplyDeletehttps://docs.google.com/file/d/0B4NgnJBkcMWfaDJpbTBGWER3MW8/edit?usp=sharing
This comment has been removed by the author.
ReplyDeletesorry for my english :(
ReplyDeletei have problem with (Motorola)-Lapdock Resolution (and Lapdock hangs on boot), can you help? omegamoon "Black Screen" fix(?) for Android kernel, this works, but i do not know how i do this in kernel 3.0.36 for picuntu? see: "video: Fix 'Black screen'/'No signal' problem" : https://github.com/omegamoon/rockchip-rk30xx-mk808
or how i can omegamoon android Kernel compiled for picuntu? except cmdline and initrd adaptable in config., what i need more to change? i tried but it does not boot (PL330 error...) :(
I understand you have flashed the 720p kernel (does the lapdock allow this resolution?)
DeleteDoes your stick boot this kernel when connected to an HDMI screen (not the Lapdock)?
If no: then your stick is not supported by this kernel
If yes: let me know
Thanks for reply ...
ReplyDeleteyes, i've tried 720p and 1080p kernel.
Lapdock can 720p (orig resolution from Lapdock is 1366x768 with Atrix Smartphone)
Stick boot with your kernel when connected to an HDMI screen, no problem....
with Lapdock boot only when LID closed and reopened after boot...when LID open and boot, i have only 720x576p@50Hz and hangs.. :( with omegemoon kernel (for Android) i have boot 1080p with LID open, no hangs...
Omegamoon's kernel was 3.0.8
DeleteRockchip may have changed the way this is handled in 3.0.36, though it looks like the Lapdock doesn't report well its capabilities (EDID info).
Sorry that I can't be of more help, I don't have a lapdock myself
dmesg: http://pastebin.com/GaykdgEd
ReplyDeleteok thanks.... you might know what I need to do to omegamoon (Android) kernel to compiled for picubuntu?
ReplyDeletehi galland,
ReplyDeleteI flashed your kernel in to mk808,find the bcm40181 wifi notwork,then I try to compiled driver by my self,and the wifi still can't run
finally, I edit the code (see below) of confing.galland and the wifi is working now
however,thanks for your great works and sorry about my english ^^"
CONFIG_BCMDHD_FW_PATH="/system/etc/firmware/fw_bcmdhd.bin"
CONFIG_BCMDHD_NVRAM_PATH="/system/etc/wifi/bcmdhd.cal"
change to
CONFIG_BCMDHD_FW_PATH="/lib/firmware/fw_RK901a2.bin"
CONFIG_BCMDHD_NVRAM_PATH="/lib/firmware/nvram_RK901.txt"
Thanks for your contribution! And glad it works now :)
Deleteyes!
ReplyDeletefor all Lapdock users with this Kernel and picuntu! no problem at boot more!
you do not need to open and close LID! Kernel boots directly in 720p! here is the recovery.img: https://docs.google.com/file/d/0B5rgrQkNmPhuVGwxZ1NBcFBqS2s/edit?usp=sharing
Have fun! :)
cool! what did you change to make it work?
Deletethank you very much lapdock fix works great
Deleteyes!
ReplyDeletefor all Lapdock users with this Kernel and picuntu! now with 1366x768 resolution!
https://docs.google.com/file/d/0B5rgrQkNmPhuYVo0WnR5V3NTeG8/edit?usp=sharing
sudo /etc/rc.local and Add only:
fbset -rgba 8/16,8/8,8/0,8/24 -a
see also xorg.conf
sudo nano /etc/X11/xorg.conf
...
SubSection "Display"
Depth 24
Modes "1366x768"
EndSubSection
...
have fun! :)
Hey Joy,
DeleteWill this work with a 1366x768 resolution ordinary TV monitor? To try it out, is it enough to change the /etc/rc.local and /etc/X11/xorg.conf files as above, or does your google docs kernel need to be flashed as well?
Thanks for your post
I tried this, flashing the 1366 recovery and modifying the files, and it worked when plugged directly into the TV, nice work Joy.
DeleteHowever, it actually helped me diagnose the issues with my AV unit - turns out it will only pass through a 1080p input, so I actually needed the 1080 recovery instead of the 720 I was using. Thank you Galland for putting up both versions.
Hello Galland,
ReplyDeletehave tested several Kernels right now, from RC2.2, RC3.0 and homeio, but none of them allowed to scan wlan networks and after a couple of hours the static configured WLAN connection is broken (all very unstable).
Would like to give your Kernel a try, since you made several patches to the MicroSD also, is there a possibility to get a dump of your working MicroSD?
Best wishes,
Mark
Actually the kernel is, more exactly, what you flash into recovery, whereas the MicroSD contents are the OS files (Picuntu == Xubuntu).
DeleteWlan issues are driver related, so that's a kernel thing, or, more likely, the stick's wifi is low quality (as happens to most of us)
Kernel compilation and flashing to kernel and/or recovery space works fine - I am using MK808 (not b). Problem occurs during bootup, it stops with ureadahead termination. After putting files from different sources into /lib folder it finally booted - then the rgba and wlan issue appeared so I tweaked some kernel config, e.g. 720p, RK901 and switching to fw_RK901a2.bin. But actually fw_RK901a2.bin is not available, any git repo to take it from (since I dropped android completely)? Do you think boot probs could occur due to timing issues also, e.g. DDR 400 on MK808?
DeleteI've answered exactly this same problem to "Gabriel Schanuel" on "Full RK3066 Technical Reference Manual found" blogpost (from June)
DeleteHi galland,
ReplyDeletewhat is the easiest way to install linux (picuntu) on measy u2c for noobs?
I ve found this tutorial:
http://www.slatedroid.com/topic/77977-ubuntu-1210-complete-armmk808rk3066-desktop-solution-new-homeio-release-chromiumtrue-flash-gles-goodies-xbmc-easy-setup-and-much-more/
but I think we need specific file for measy (driver, rom, kernel?)
i've forgot to post this... android 4.2 seems to work on measy u2c, but driver for webcam is missing:
Deletehttp://www.freaktab.com/showthread.php?5386-android-4-2-for-imito-on-u2c
Assuming your Measy U2C is already ROOTED (or else see http://hwswbits.blogspot.com/2013/03/ubuntu-linux-picuntu-rc3-on-measy-u2c.html):
DeleteDownload Picuntu 0.9 RC3 from here:
https://www.dropbox.com/s/0rm8i7mohgyhws6/picuntu-linuxroot-0.9-RC3.tgz
Follow ONLY this page's instructions to create the uSD with the above file:
https://www.miniand.com/wiki/Part+2b-Creating+the+linuxroot+filesystem+manually
Copy the modules+firmware of this blogpost into the uSD from your PC
Flashing the recovery kernel in this blogpost
Insert uSD into U2C and boot into recovery (Autorun Linux is a nice and simple app for that), you should get to a login, pwd is 12qwaszx
Run ./picuntu-da-server.sh to install XFCE and other packages
I STRONGLY recommend applying the fixes in these posts:
http://hwswbits.blogspot.com/2013/03/picuntu-09-rc3-crash-in-xfce-dbus.html
http://hwswbits.blogspot.com/2013/03/picuntu-xfce-problems-fixes.html
Remember there is no internal wifi support, so an usb dongle with wifi or eth is required.
Hi Galland..
ReplyDeleteI have a MK808b "original" Finless 2.1 Kernel 3.0.36+ WiFi+Bluethoot working for the droid side....working GPU/VPU etc.
but in Picuntu side with Kernel 3.0.8+ Olek0's Recovery img + homeoi.rc1.tar.gz...booting with USB or SD no WiFi and Blu
I flashed your 720 3.0.36+ img and unzip .7z file in USB with kernel 3.0.8+. Updating some folder and files in /LIB. But now stops after loading SWAP partition and loop forever.
I just want to know one thing my Wifi'/Blu's ONLY works with Android NEVER with Picuntu or maybe in the near future when I compile my own kernel on my old p4 fedora core 10 with your source code of course.
Thanks for your time.
I don't have that stick, so no idea, sorry. If you want to try for yourself, the RK903 drivers are part of the 3.0.36 source code.
DeleteHello, Galland!
ReplyDeleteThanks for your work.
I do see rndis_host module in modules list.
Do I understand you correctly, that it is possible to connect the dongle by usb with windows machine and after boot is finished, we can establish communication with windows over usb network ?
If it works on a typical Linux setup, it should also work here.
DeleteHi Galland, I was wondering if you plan on building the 3.11 kernel now that it officially has RK3xxx support and is in the RC stage.
ReplyDeleteUnfortunately that support is still very primitive, doesn't get you to a system you can work with. I'm heading more towards using RK official code, turning it into a patchset to android-3.0 (very similar but not exactly equal to Linux kernel 3.0.x) and then trying to go up the ladder to android-3.4
DeleteHello Galland,
ReplyDeleteThanks again for your work.
I am still trying to get my wifi dongle work (RTL8188CUS) and everything I try goes wrong.
I even tried to compile de driver from Realtek, but I have the following problem: arm-linux-gnuabihf-ld not found
As far as I know, this file is missing from your source files. Also note that I had to convert your source files to unix format (dos2unix), because it wouldn't let me compile at all, stating "\r" problem (if it can help others).
Could anyone give me any instructions or help regarding driver compilation under picuntu? I would really like to use this dongle and access to my network with my picuntu installation! ;)
See http://hwswbits.blogspot.com/2013/03/compiling-picuntu-kernel-ubuntu-linux.html
DeleteCan someone compile a 3.0.36 kernel from Galland's sources and include this patch
ReplyDeletehttp://www.freaktab.com/showthread.php?6454-Temporary-RK903-Wifi-Patch-for-MK808B and also the mali overclocked to 400 mhz for a MK808B and tests if it works.
Read more here, last 3 posts
http://www.armtvtech.com/armtvtechforum/viewtopic.php?f=115&t=1587&start=60
Thanks
wifi patched Kernel Download https://docs.google.com/file/d/0B5rgrQkNmPhuX1J6WUlSaGxhdXM/edit?usp=sharing
DeleteModules:
https://docs.google.com/file/d/0B5rgrQkNmPhuTGZMUUJDVzhXaEE/edit?usp=sharing
now I do not know what is different? the wifi works without patch and with this patch ...? all you have to do; https://www.miniand.com/forums/forums/18/topics/mk808-b-picuntu-kernel-3-0-36-for-motorola-lapdock-with-1366x768-resolution#post-8670
for mk808b/rk903 Firmware Download: https://docs.google.com/file/d/0B5rgrQkNmPhuX2FESVh5NE5jUXM/edit?usp=sharing
https://docs.google.com/file/d/0B5rgrQkNmPhuSnNVS2JzdTEtSDA/edit?usp=sharing
copy to /lib/firmware/
sudo modprobe bcm40181 and then see iwconfig...
Thanks Joy
DeleteBut it seems I can't get the kernel boot up.
Are you also using Finless2.1 and flash the kernel above to the recovery partition?
Thanks
Um..
DeleteIf I understand it correctly, you can make the RK903 module works correctly without my patch?
How is it done?
see here: "WLAN (MK808B/Joy-IT Version 2.0/...RK903)"
Deletehttps://www.miniand.com/forums/forums/18/topics/mk808-b-picuntu-kernel-3-0-36-for-motorola-lapdock-with-1366x768-resolution#post-8670
I just tried the kernel, lib, firmware and cal files provided in the fourth post but it only booted to the kernel messge page and immediately rebooted to my android.
DeleteNo log was written.
Any clues?
hmm....there are differences between mk808 B version...?
ReplyDeletemy kernel config is optimized for tps65910 Power Controller...
maybe you have WM831X Power Controller?
or why does not work for you
Hi, Michael C, I didn't know that the 3.0.36 kernel worked for mk808b rk903 wifi without the patch.
ReplyDeletePerhaps the GPIO dump posted by A-wen at http://www.freaktab.com/showthread.php?6454-Temporary-RK903-Wifi-Patch-for-MK808B is for a clone mk808b, as it seems that 3.0.36 kernel enables your mk808b rk903 wifi.
I don't own a MK808B but some friends do, so perhaps I'll test this some time later.
Hi.
ReplyDeleteHow i can compile the driver for usb wifi rtl8188cu. Make modules and editing config got many errors... Anyone has it ?¿
type "lsusb" before and after plugging in the wifi, there should be one new line, paste it here
DeleteThis comment has been removed by the author.
ReplyDeleteroot@picuntu:~# lsusb
ReplyDeleteBus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 002: ID 1a40:0101 Terminus Technology Inc. 4-Port HUB
Bus 002 Device 003: ID 1d57:0008 Xenta
Bus 002 Device 004: ID 046d:c313 Logitech, Inc. Internet 350 Keyboard
Bus 002 Device 005: ID 148f:5370 Ralink Technology, Corp. RT5370 Wireless Adapter
--------------------------------------------
root@picuntu:~# lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 002: ID 1a40:0101 Terminus Technology Inc. 4-Port HUB
Bus 002 Device 003: ID 1d57:0008 Xenta
Bus 002 Device 004: ID 046d:c313 Logitech, Inc. Internet 350 Keyboard
Bus 002 Device 005: ID 0bda:8171 Realtek Semiconductor Corp. RTL8188SU 802.11n WLAN Adapter
Bus 002 Device 006: ID 148f:5370 Ralink Technology, Corp. RT5370 Wireless Adapter
Here is....My RT5370 continues disconnect i dont know why.....
which one is the problem? RT5370 or RTK8188SU?
DeleteIf the problem is the RTL8188SU, then download this file:
Deletehttps://www.dropbox.com/s/nixx71ffwwhkwqt/8712u.ko
and in a terminal do:
sudo cp 8712u.ko /lib/modules/3.0.36+/kernel/drivers/net/wireless/8712u.ko
sudo depmod -a
wget http://svn.debian.org/wsvn/kernel/dists/trunk/firmware-nonfree/realtek/RTL8192SU/rtl8192sfw.bin
sudo mkdir /lib/firmware/RTL8192SU
sudo cp rtl8192sfw.bin /lib/firmware/RTL8192SU
reboot and then
sudo modprobe 8712u.ko
ifconfig -a
and see if you get a new wlan interface
Hi Galland.
ReplyDeleteMy problem is with RTL8188SU.
First probe in a home:io --> When i plug usb-wifi, picuntu freeze. When i boot picuntu with usb-wifi got a error and not boot picuntu....
Hi, I'm trying to make picuntu ( home://io version) work on my mk802iiis with a usb wifi dongle that has the realtek 8187 chipset, so far, I have flashed the 3.0.36 kernel into the recovery partition. Under iwconfing I can see a wlan interface named wlan2 which corresponds to the wifi dongle but when I open wpa_gui there's no adapter listed... what am i doing wrong?
ReplyDeleteThanks!
OK, I have run picuntu-da-server script where I can choose the wlan interface and rebooted and now it appears at the adapter combo in wpa_gui (also, i ran ifconfig up but I'm not sure if that is really neccesary). Now I can scan but I'm not being able to connect to the network, it keeps disconnecting and it never gets an ip...
DeleteThis comment has been removed by the author.
ReplyDeleteAloha Galland,
ReplyDeleteThanks for all your hard work in this area. If I understand you correctly, with this kernel wifi ought to work on RK903-equipped devices, like my MK808B.
Other than the instructions you provided above (flash the kernel and copy the mod+fw files to the linuxroot volume, and depmod), is there anything else that should be required to get RK903 wifi working? Because I still have no wifi with this :-(
And - my screen has a distinct cyan tint with this kernel!
Peace,
Rasha
Hi Galland,
ReplyDeleteThanks very much for your hard work.I want to make my MK802 IIIS with MT5931 work,has both Mali400 3D acceleration and the internal MT5931 chip wifi, what should I do then?
Should I use your 3.0.36+ kernel and find some ways to make MT5931 work or use your RK3188 kernel and just follow this http://hwswbits.blogspot.jp/2013/04/3d-hw-acceleration-on-picuntu-linux.html to make a new kernel(or maybe it called modules?), which way is available or faster?
Thanks!
You should use the rk3x_... kernel (still my recommended one for rk3066 devices) and find your way to the mt5931. For this, people have been able using this procedure: https://github.com/aloksinha2001/picuntu-3.0.8-alok/issues/2
DeleteThank you so much for your quick response.I'll try it...
DeleteThermal Management
ReplyDeleteHi Galland. Thank you very much for your great kernel. I am using it on a bog-standard MK808 with Picuntu 4.5 RFS on microSD and, after a great deal of perseverance, the machine boots and runs reliably for hours on end. Of course, the WiFi does not operate but my USB/RJ45 adapter works well.
To reach this point, I had to research some thermal issues and find a way to prevent the RK3066 chip from overheating. I was not prepared to cobble together a heat sink.
1. The RK3066 has a specified operating temperature range of -40C to +85C.
2. Surprisingly, the "interactive" cpufreq governor does not prevent temperature rise beyond 85C.
3. Even when operating at the seemingly modest cpufreq of 816 MHz, temperature can exceed 85C.
I have never succeeded in booting your 720P kernel and, initially I had a lot of trouble booting your 1080P kernel. The boot process would stall at various stages depending on how hot the RK3066 was. Why was the RK3066 hot? Presumably, because Finless Bob's kernel (2.1 or 1.7c) did a pretty good job of preheating it and then your kernel's default cpufreq setting allowed further unregulated temperature rise during the boot process which is a fairly CPU intensive process.
I'm reluctant to criticise the heroic work of yourself and Finless Bob in making so much possible but I feel obliged to request that a little less emphasis be placed on speed and a bit more be placed on system stability and robustness, particularly during the boot process of machines that may not have been fitted with "special" heat sinking provisions.
I am of your view, and even went as far as adding a new lower power frequency for the CPU (126 MHz). Try cpufreq-info to check how long is your stick running at each freq.
DeleteHowever in your case there is at least one further problem: the MK808 is the cheapest stick because it doesn't have a PMIC (Power Management IC) so that all components run at the highest voltages (for 1.6 GHz) even at the lowest frequency (126 MHz), causing all that heat, no matter how low the frequency.
With a PMIC: lower freqs run at a lower voltage, meaning much less heat.
Try setting conservative CPU governor to diminish that disadvantage a bit.
Thanks for your prompt response. My cpufreq-info sheds some light but further confusion too!
Delete1. There is no "conservative" nor "powersave" governor listed among the "available cpufreq governors". Six governors are listed (some with bizarre names) but I have been unable to find any documentation about their operating algorithms in order to make a reasoned selection.
2. Although my machine has been operating at its maximum allowed cpufreq (816 MHz) for many hours, cpufreq-info indicates that it has been at 1.61 GHz for 100% of the time.
3. Thanks for adding 126 MHz to the list of possible cpufreqs. If only I can find a governor that knows how/when to use low cpufreqs.
4. Without compiling one's own kernel, is there any way for the user to specify the cpufreq to be used during boot?
Many thanks again.
cpufreq Governor Algorithms
DeleteI have just found a pretty decent description (http://forum.xda-developers.com/showthread.php?t=1663809) of many governors and so I can now investigate whether any of my available options is likely to work better than "interactive".
Postscript - My difficulties in booting the MK808 returned and worsened to the extent that I reverted to my backup RFS, which did not help. I then tried justintime4tea's installation without success. In desperation I tried olegk0's 3.0.8+ kernel with the Picuntu 4.5 RFS and found that the combination worked fine, booting first time every time and running dependably. The Picuntu official (ug802recovkernel.img) kernel also behaves solidly and allows a wider range of possible cpufreq's. Using 3.0.8+ kernels I was able to get WiFi working with both internal chip and USB dongle but performance was pathetic in both cases so instead I am using a USB/RJ45 (Asix) adapter which works well in combination with a cheap (A$22) WiFi repeater/range extender that has an RJ45 port. Can't help but be impressed by how sweetly the RK3066 can support the normal productivity apps (web browsers, LibreOffice etc).
DeletePost Postscript - Further testing of WiFi with a Ralink USB adapter has demonstrated acceptable performance with ping times of about 40ms to local ADSL2+ ISP and packet loss of 0% usually.
DeleteThermal Management Measures
ReplyDelete1. Disable the screensaver - the picture may seem "cool" but it will probably cause your CPU temperature to rise and may cause the device to stall.
2. After installing cpufrequtils (sudo apt-get install cpufrequtils), do use the sudo cpufreq-set -u 816000 command if you expect CPU load to be high for extended periods of time.
3. Instead of adopting the dual-boot mode of operation (which allows Android to preheat the CPU) you can use Finless Bob's Reboot app (1.7c ROM) to Reboot To Recovery which causes all subsequent boots to go directly to the recovery partition.
Hi Lloyd, I'd be very interested to learn more about your experience of booting 3.0.36 on mk808. I've been trying to revitalize this device for several weeks now, but really strange things happen. I use my own Ubuntu 12.04 rfs running unity. The only 3d accelerated kernel providing me internet access (asix) is jjhmod's from here:
Deletehttp://www.freaktab.com/showthread.php?5161-Updated-kernel-and-MicroSD-image-for-rk3066-ubuntu&p=69513&viewfull=1#post69513
It boots all right every time I flash this kernel no matter how hot my stick was.
However, this source is not available for tweaking, and also, 3.0.36 should provide better performance. And so I tried Galland's kernels (never managed to get his 720p to boot, and did get 3.0.36 to boot - sort of - with some really weird gui issues). Then I tried olegk0's 3.0.36 kernel (link provided on his github), and it is providing by far the best performance, same as jjhmod boots up at any time no matter what, however it doesn't provide internet access. But when I compile this same kernel from source (adding just asix support), it stalls same as Galland's 720p. It seems that current Oleg's source is for his experimental kernel (3.0.36_exp), rather than plain 3.0.36 one. I have some reason to believe that thermal issue was less pronounced with oleg's plain kernel, since when I reboot to recovery without sdcard inserted it gets me to initramfs. Upon inserting sdcard, I can execute: "exec switch_root -c /dev/console /mnt/root /sbin/init.sysvinit" which then mounts the rfs all right to gui. But when I repeat the same with my compiled kernel, it stalls the same way again. Any ideas would be greatly appreciated. Best regards, Goran Sevo
Hello
ReplyDeleteThanks for your effort..It is good for us to enjoy linux.
BTW I want to ask some help form you.I want to use the serial in MK808.
I want to use this serial to control my equatorial telescope.But the serial could not work..
It always says serial.0 timeout 1000000..
I just connect three wires to my equipment...(GND TXD RXD).
So,could you give me some advice?
I only know this: http://www.omegamoon.com/blog/static.php?page=mk808_serial_console
DeleteThank you very much..
DeleteHi Gallard!
ReplyDeleteThanks you very much for your work and awesome lectures.
Could you please compile the kernel on up to 1.2GHz and memory on 300 in order to run smootly on MINIX Neo G4? Thanks in advance!
Veso
MK902 eth0 issue.
ReplyDeleteHi all. I know that is not the right post (rk3188) but I dont know where to find help anymore. I have a problem with internal eth (ASIX AX8872CLF) and Picuntu. The Wifi it is working from startup, but the eth0 is not working. In Xubundu I managed to wake up the eth0 by putting in rc.local 3 lines (ifconfig eth0 down; ifconfig eth0 hw ether MAC; ifconfig eth0 up), but in Picuntu is not working (do nothing).
Hi Galland!
ReplyDeleteAt first, sorry for my bad english! I have a mk808(rk3066) with Finless 2.1 (Kernel 3.0.36+) and I'd like to if it works with wn823n usb wifi dongle (RTL8192cu).
Can you help me in this?
I have the kernel running nicely on a mk808ii but for the life of me I can't seem to get embedded GL and XV working together... Problem seems to be eGL, have XV going by allocating the framebuffers pre load.
ReplyDeleteNeed your help desperately!
Hi Galland
ReplyDeleteI know the rk3066 is getting old, but i'm doing a science fair project, and i really need 1280x800 linux support for my mk802 iiis. If you, or anyone u know could help me out that would be appreciated soooo much!
PLz and thanks a million
Johan
hi galland
ReplyDeletei suppose you are not working on this chip for a while but maybe you can help me
i have an imito mx1 device with ubuntu 14.04 your 1080p kernel and the hardware acceleration is not working
i followed your tutorial to enable it but when i'm lauching glesmark i get errors to initialise opengl es
sudo glmark2-es2
Error: eglInitialize() failed with error: 12291
Error: Error: Could not get a valid XVisualInfo!
Error: Error: Couldn't create X Window!
Error: main: Could not initialize canvas
but my mali and ump seems to be enabled
test@ubuntu:~$ dmesg | grep -i mali
[ 5.711687] Mali: init_mali_clock mali_clock c0e259c0
[ 5.713953] Mali: Mali device driver loaded
[ 5.815627] DRM: mali_platform_drm_probe()
[ 5.815636] mali_drm_init(), driver name: mali_drm, version 0.1
[ 5.816352] DRM: mali_driver_load()
[ 5.816400] [drm] Initialized mali_drm 0.1.0 20100520 on minor 0
test@ubuntu:~$ ^C
test@ubuntu:~$ dmesg | grep -i ump
[ 5.631887] UMP: UMP device driver loaded
do you have any idea about the issue ?
anyway thanks for your work !
Help, I can't get working wifi module, 8188eu chip. I tried different builds(linux), different drivers, does not work, if look in the output of lsusb shows the module. prompt how to force to work Wi-Fi? give a link to a working driver or image with a working linux build (img), thanks.
ReplyDeleteI have ug802
to collect himself probably can't, so I'm not deeply versed in linux
module 8188cus, 0bda:8179
DeleteThis comment has been removed by the author.
DeleteI have radxa lite board
DeleteWant to update kernel to 3.12 or above
How to do that...?
Can I use this kernel to replace a kernel in Android running on RK3066?
ReplyDeleteAny chance to have the new kernel 4.10 https://kernelnewbies.org/Linux_4.10
ReplyDeleteIt can be now RK3066 MK808 compatible and maybe with UG802
Hi Galland, I know i am writing a bit late :)
ReplyDeleteI have GoClever Hybrid tablet with rk3066, I have flashed many kernels, even builded by myself, but everytime i try to reboot to recovery from terminal or adb, screen is black for few seconds and then charging screen appear, nothing more, really i have no idea what could i do next, maybe you have some idea?
Hi Galland, i know this is old thread :)
ReplyDeleteI have tablet with RK3066, GoClever Hybrid
I am trying every kernel i found, even compiled by myself but cannot get it to work, every time after reboot to recovery from terminal or adb i just got black screen for few seconds and then it turn off. I really have no idea what can i do, maybe you can help me? :)