10 10
mdel

rk3288 alternative boards (cheap tv boxes).

Recommended Posts

[ 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)

 

HTB10mZjGpXXXXbHXFXXq6xXFXXXG.jpg.6a47bba6d611646a31c3714ea9b9101e.jpg
 

 

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.

 

Share this post


Link to post
Share on other sites

@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..

Share this post


Link to post
Share on other sites
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 :)

Share this post


Link to post
Share on other sites

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.

 

Share this post


Link to post
Share on other sites

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. 

Share this post


Link to post
Share on other sites

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 :)

 

 

Share this post


Link to post
Share on other sites
(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 by clarkss12
added video link.

Share this post


Link to post
Share on other sites

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.

Share this post


Link to post
Share on other sites

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

 

 

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites
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.

Share this post


Link to post
Share on other sites
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.

Share this post


Link to post
Share on other sites

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.

Share this post


Link to post
Share on other sites

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.

Share this post


Link to post
Share on other sites

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.

Share this post


Link to post
Share on other sites

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.

Share this post


Link to post
Share on other sites
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).

Share this post


Link to post
Share on other sites

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.

Share this post


Link to post
Share on other sites
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 :)  

Share this post


Link to post
Share on other sites
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.

Share this post


Link to post
Share on other sites

@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.

Share this post


Link to post
Share on other sites
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.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
10 10