mdel Posted April 7, 2017 Posted April 7, 2017 [ This thread started more or less here : And what do you think about porting to a cheap Android TVBox ] If anyone's interested we can discuss Armbian or linux for those rk3288 devices here. I'll start with mine (Q8 without front panel) which is the XT-Q8L-V10 from enybox (Chiptrip Q8 on gearbest or that other EKB328 on Aliexpress with front panel). I have a feeling that those boards are discontinued and being put on sale as end of stock. There are various other boxes with rk3288 which prices are pretty high (>80e) and were probably seen at some point as high end boxes. Other threads for that board can be found here : - freaktab.com serial header thread - Timp74 bitbucket.org (both pretty old sources from mid 2015) the board is the following : (front panel is optional) I already own and use many arm boards, regular ones like raspberry pi, odroid, orange pi and tv boxes mainly amlogic ones from s805 to s912. I favor amlogic for their large availability and good linux and armbian support (thx to @balbes150 ). My decision of trying to get a working rk3288 linux, is only driven by the high single core performance of that soc. Mostly in an (high speed >100Mbps) openvpn context (openssl), some figures showed it was 30-40% faster than the s905 which is already quite fast compared to other allwinner socs. I'm only looking for cheap tv boxes and for any price over 50e i would turn to dev boards with good support. The idea is to take advantage of the recent popularity of rk3288 dev boards, Miqi and asus tinker although other boards already existed which is not surprising considering that soc entered the market in 2014. Rockchip seems to be very active on the linux front and rk3288 is getting mainline uboot / kernel support. 2
mdel Posted April 7, 2017 Author Posted April 7, 2017 @jeanrhum thx for the links @Shimon Quote Meanwhile, you could try running a benchmark or two in termux, provided Android 4.4 is not a problem. edit: No, it's not supported. TerminalIDE or ZShaolin should be usable though. i have terminal installed but that android is not rooted so i need to do that first to get full access..
Shimon Posted April 7, 2017 Posted April 7, 2017 1 hour ago, mdel said: I have a feeling that those boards are discontinued and being put on sale as end of stock. Definitely, they were already available in 2015, however, they're probably the most powerful ARMv7 hardware we'll ever get for $37-40 shipped. Thanks for investigating the boards, it should really become interesting in a few months' time
James Kingdon Posted April 15, 2017 Posted April 15, 2017 Hi, I have a Chiptrip Q8 on order that I'm hoping to use to experiment with running a mainline kernel. For my use case I only need a headless server, so I'm not worried about gpu/drm issues. Looking forward to seeing how this goes.
Shimon Posted April 17, 2017 Posted April 17, 2017 Speaking of GPU's and binary blobs, I wonder if OpenCL and ARM's ComputeLibrary are going to be usable on these boxes.
Shimon Posted April 19, 2017 Posted April 19, 2017 Wait a sec, it seems UGOOS UT3S is even marketed as an Ubuntu 14.04 box, it would be great if someone owning/familiar with that box could describe the state of Linux as it existed before the arrival of these new RK3288 SBC's.
James Kingdon Posted April 20, 2017 Posted April 20, 2017 Mine arrived today. Power up with the reset button held makes it accessible to the Rockchip rkflashtool and upgrade_tool, which seems promising. Here's the cmdline section from the parameter data of the stock firmware CMDLINE:console=ttyFIQ0 androidboot.hardware=rk30board androidboot.console=ttyFIQ0 board.ap_has_alsa=0 init=/init initrd=0x62000000,0x00800000 mtdparts=rk29xxnand:0x00002000@0x00002000(uboot),0x00002000@0x00004000(misc), 0x00008000@0x00006000(resource),0x00008000@0x0000e000(kernel),0x00010000@0x00016000(boot), 0x00010000@0x00026000(recovery),0x0001a000@0x00036000(backup),0x00040000@0x00050000(cache), 0x00002000@0x00090000(kpanic),0x00280000@0x00092000(system),0x00002000@0x00312000(metadata), 0x00200000@0x00314000(userdata),0x00020000@0x00514000(radical_update),-@0x00534000(user) Inserting a tf card prevents it from booting up, suggesting that it might be possible to boot from tf card instead of getting straight into blowing away the stock firmware. However there's no sign of life trying to boot either the miqi or tinkerboard images from the card. Anyone know how to open the box? I'm guessing that serial connection is going to be needed 1
clarkss12 Posted April 20, 2017 Posted April 20, 2017 (edited) I have been running the Ugoos Ubuntu for quite awhile now, on my RK3288 Rbox (at least 3 years old). It is running Ubuntu 16.04.2 LTS, I am running Emby and Plex Servers on it, but it does not have enough processing power to transcode on the fly. Here is my video of it. https://www.youtube.com/watch?v=pbj5Dl9of5M Edited April 20, 2017 by clarkss12 added video link.
Shimon Posted April 20, 2017 Posted April 20, 2017 @James Kingdon Judging from the specs, Ugoos UM3 Ubuntu image might be your best bet: https://mega.co.nz/#!CotRiQII!4l2xX9sKHwsF7_QOdo_XWk7xWA4XRYDJkwnipfndG10 If it doesn't work, here's the mount command for a quick peek: sudo mount -o offset=$[81920*512] sdcard_Xubuntu_0.3.1_um3.img /mnt Nope, it couldn't possibly work, /boot is empty.
James Kingdon Posted April 22, 2017 Posted April 22, 2017 I tried following the instructions here but with no signs of life other than brief activity on the RJ45 leds. I'm obviously missing some part of the magic. I got the box open (remove the four rubber feet to access very small cross head screws and then gently ease the two halves of the case apart, the pcb comes with the top part of the case, so you don't need to worry about the connectors) so next I'll see if I can get the serial port connected.
James Kingdon Posted April 22, 2017 Posted April 22, 2017 OK, serial port works Boot doesn't get very far though... Quote U-Boot 2014.10-RK3288-02 (Nov 10 2014 - 03:41:49) CPU: rk3288 CPU's clock information: arm pll = 600000000HZ periph pll = 300000000HZ ddr pll = 200000000HZ codec pll = 594000000HZ Board: Rockchip platform Board DRAM: Found dram banks:1 Adding bank:0000000000000000(0000000080000000) 128 MiB SDCard Boot. storage init OK! Using default environment GetParam check parameter success Unknow param: MACHINE_MODEL:linuxium-sdcard-parameter! Unknow param: MACHINE_ID:007! Unknow param: MANUFACTURER:RK30SDK! Unknow param: PWR_HLD: 0,0,A,0,1! failed to prepare fdt from boot! power key: bank-0 pin-5 Enter power_led_init can't find dts node for ricoh619
clarkss12 Posted April 22, 2017 Posted April 22, 2017 For your RK3288 device, give this ubuntu for the UT3 a try. It works great for me. http://ugoos.net/blog/ubuntu1504-sdcard-arm7-rk3288-ugoos-ut3-ut3s-um3
James Kingdon Posted April 22, 2017 Posted April 22, 2017 5 hours ago, clarkss12 said: For your RK3288 device, give this ubuntu for the UT3 a try. It works great for me. http://ugoos.net/blog/ubuntu1504-sdcard-arm7-rk3288-ugoos-ut3-ut3s-um3 I haven't been able to get it to boot. What device are you running it on and how did you install it?
clarkss12 Posted April 22, 2017 Posted April 22, 2017 I am using an old Beelink Rbox, Rk3288 2/8 gig, non-gigabit Ethernet. Go to this link (http://ugoos.net/downloads) and download this Dualboot firmware v.0.3.1: Xubuntu 15.04/android 4.4 for UT3 firmware. Extract that Rar file using 7 zip or something similar, inside you will find the "Android Tool". Install the "Android Tool", if using Windows right click inside the "Android Tool" window and select "Load config", then select "config_Linux". Then just run the tool. You have to be in loader mode to run this tool. Not sure how your device gets into loader mode, but my box has small opening to use a paperclip to depress the reset button. Hold this reset button while connecting the power and OTG USB cable. Edit: here is some information on how to get into the "loader", using my particular device. http://freaktab.com/forum/tv-player-support/rk3288-devices/beelink-3288-devices/17093-beelink-r89-ubox-rom-tools-release
clarkss12 Posted April 22, 2017 Posted April 22, 2017 1 hour ago, James Kingdon said: I haven't been able to get it to boot. What device are you running it on and how did you install it? Looking at a picture of your device, I see a reset hole, so installing the Ubuntu image that I have linked to will be easy to do. Just follow the instructions that I have posted. I do apologize that I am using a Ugoos Ubuntu image, I could not get an Armbian image to install on my Rockchip device. Also, I see a micro USB port, so that should be your OTG port for flashing the firmware.
jeanrhum Posted April 23, 2017 Posted April 23, 2017 Maybe this thread can help you : http://freaktab.com/forum/tv-player-support/rk3288-devices/eny-3288-devices/21763-howto-enable-maskrom-mode-perhaps-unbrick-your-device
James Kingdon Posted April 23, 2017 Posted April 23, 2017 14 hours ago, clarkss12 said: I do apologize that I am using a Ugoos Ubuntu image, I could not get an Armbian image to install on my Rockchip device. No judgement from me here, I'd just like to get the board up and running. An Armbian mainline build would be my eventual goal, but I'm quite happy to get there step by step. Thanks for the pointers. I haven't tried doing anything with the board from windows, so I'll give that a go.
James Kingdon Posted April 23, 2017 Posted April 23, 2017 OK, I wouldn't recommend trying the Ugoos firmware linked above. It looked promising, but failed to download the boot partition. After that the board won't go back into the normal loader mode. I haven't tried for maskrom mode yet as shorting out those tiny footprints seems like asking for trouble. The board will go into loader mode if I put a TF card in the slot, so there still may be room to make progress that way, although now the serial log is indicating SDCard Update instead of SDCard boot, which doesn't seem like a good thing. Overall, it does feel like I'm digging myself further into the hole rather than making any useful progress.
James Kingdon Posted April 24, 2017 Posted April 24, 2017 A little more progress - I did some debugging on the create-linux-sdcard script from and found that the assumptions it was making about the device naming scheme for the sd card reader didn't match my build environment (it assumed a root device such as sda with partition sda1, where as I have a root device mmcblk0 and partition mmcblk0p1). After fixing that the resulting sd card gets further into the boot process and starts bringing up the kernel. Unfortunately the boot appears to hang with no network or screen. The serial log stops at what looks like random places on each attempt, I'm not sure if this reflects the boot crashing randomly or if it's just the non-flow-controlled serial connection overflowing. This all has the feeling of re-discovering what other people did two or three years ago, but at least it doesn't look like I've completely trashed the system yet. 1
Shimon Posted April 25, 2017 Posted April 25, 2017 Do any of you know of an Android 5 ROM for this box? That way, we could run a few benchmarks under termux, at least.
James Kingdon Posted April 27, 2017 Posted April 27, 2017 Still no luck getting the Q8 to boot linux, it seems all roads lead to frustration at the moment. The furthest I've got so far has been with the Tim Potter kernel from https://bitbucket.org/DengueTim/q8-rk3288-kernel/overview That kernel seems to get quite a long way into the boot sequence, bringing all four processors up and probing a lot of hardware. It even brings up the firefly splash screen on the monitor, but then it starts hitting kernel oops and eventually seems to lock up solid. I confirmed that shorting pins 7 & 8 on the flash chip can bring it into maskrom mode, but I haven't figured out what to do with it from there. 1
Shimon Posted April 27, 2017 Posted April 27, 2017 @James Kingdon Could you give us a quick recap of the steps necessary to get the Q8 to boot that kernel? Which image did you use as your base?
James Kingdon Posted April 27, 2017 Posted April 27, 2017 52 minutes ago, Shimon said: @James Kingdon Could you give us a quick recap of the steps necessary to get the Q8 to boot that kernel? Which image did you use as your base? Ok, bear in mind that there have been a lot of mis-steps along the way, and I wasn't keeping notes, so it's possible that the following may not be sufficient to reproduce the current state of my Q8. It's also the case that my Q8 isn't currently usable for anything. I don't think the following steps were the cause, but it's possible that trying this will also cause problems. The key steps are: get Ian Morrison's tools from Follow his instructions to flash the RK3288Loader_uboot_V2.17.02.bin into the Q8 (I'm still not convinced this worked, so it may be unnecessary. the version number doesn't match what comes up on the serial log). Get a rootfs from somewhere (Ian gives some suggestions, and there are others that can be found with google. I'm not sure if the kernel ever gets as far as mounting the rootfs). I recommend editing create-linux-sdcard to remove all the redirecting stdout and stderr to /dev/null, as that isn't exactly helpful. If your linux distro uses /dev/mmcblk style names for the sd card you need to edit the places where the script accesses partitions because it assumes /dev/sda0 /dev/sda1 naming where new kernels use /dev/mmcblk0 for the root and /dev/mmcblk0p0 /dev/mmcblk0p1 etc for partitions (i.e. you need to add the 'p' to the script) You can try running the script at this point with the kernel that Ian included. Make sure to unmount the sdcard in the file browser if it was automatically mounted when you inserted it. Keep an eye on the speed reported after writing each part to the SD card. If something goes wrong the data ends up on your hard disk and typically gets written much faster than when writing to the SD card, so if you see most of the writes at 2MB/s and one at 100MB/s you know something went wrong. The default kernel didn't get very far at all for me, and stopped producing output at different points each time, so... Go to Tim Potter's repo on bit bucket ( https://bitbucket.org/DengueTim/q8-rk3288-kernel/overview ) Clone it, compile the kernel to get a zImage, process the zImage with rkcrc -p zImage timp-kernel.img (I think, memory is a little fuzzy here), link or copy timp-kernel.img to kernel-linux.img in Ian's create-sdcard directory and run create-linux-sdcard to write it all out to the SD card. This is all done on a linux amd64 host, and there's been a lot of installing tool-chains and supporting tools, so doubtless there are gaps in the above description. At the moment, my best guess for a possible problem area is that I might have used the wrong cross compiler tool chain (I think I used arm-linux-gnueabihf-gcc-4.8 when compiling Tim's kernel).
James Kingdon Posted April 27, 2017 Posted April 27, 2017 Forgot to mention, I also tried installing the armbian build system and building the miqi image from scratch, but my Linux setup seems to be way too old and I ran into endless problems. I did get a kernel zImage out of it, but there were no signs of it booting when I put it into Ian's sd card setup in place of the Tim P' kernel. So many attempts, so little progress! I'm still reluctant to give up on this board, given that the SOC is high end and Q8s are half the price of anything else with that chip.
Shimon Posted April 27, 2017 Posted April 27, 2017 11 minutes ago, James Kingdon said: At the moment, my best guess for a possible problem area is that I might have used the wrong cross compiler tool chain (I think I used arm-linux-gnueabihf-gcc-4.8 when compiling Tim's kernel). Thanks for the detailed write-up! I could build the kernel for you natively, if you think that really was the problem area. Which gcc branch should I use? (the repo says `at least gcc 3.2) 3 minutes ago, James Kingdon said: the SOC is high end and Q8s are half the price of anything else with that chip. Indeed, mine should be arriving next week
James Kingdon Posted April 27, 2017 Posted April 27, 2017 Quote Thanks for the detailed write-up! I could build the kernel for you natively, if you think that really was the problem area That's an interesting idea. I have some other ARM boards, so I could give that a try.
Shimon Posted April 27, 2017 Posted April 27, 2017 @James Kingdon Ah, ok, thought you had no choice but to cross-compile. BTW, could you post a link to your kernel .config and the dtb file used? edit: Unless make q8-rk3288_defconfig was enough.
James Kingdon Posted April 27, 2017 Posted April 27, 2017 1 hour ago, Shimon said: Unless make q8-rk3288_defconfig was enough. Yes, that's all I did. Can't remember how to process the .dtb into the resource.img off the top of my head though. Ah, just resource_tool q8-rk3288.dtb according to Tim's page.
Shimon Posted April 27, 2017 Posted April 27, 2017 @James KingdonI've just realised the q8-rk3288 wiki mentions the 2 boxes from @mdel's first post. Which implies it should probably have worked OOTB?
James Kingdon Posted April 27, 2017 Posted April 27, 2017 Yes, that's what I was expecting. I obviously messed up somewhere along the way.
Recommended Posts