Buildroot XBMC on the Mele A1000 (Allwinner A10)
Gimli recently decided to push his XBMC port to the public, so we now have a Buildroot XBMC on the mele A1000. Some of you are already knew about the port empatzero decided to release. This port is around for a while now and it does look like the same decoding gitches appear to happen. For some reason sometimes the decoding times show peaks in decoding time, up to the point it results in glitches.
As both ports show similar bugs, Gimli decided to push it out in the open. Communication with Allwinner was still going on but progress was at a very slow rate. Having two different ports / approaches showing similar bugs kind of proof it is most likely something in the cedarX libraries. Hence the reason Gimli decided to release it.
Up till this point I have been following the progress from the sideline. I saw the port of empatzero popping up, but never actually decided to give it a go. I did not really liked the full blown linux OS for only one program (XBMC).
I compiled the minimalistic buildroot envirnment (same as Gimli used for the RPi), compiled XBMC and merged them together with the necessary tweaks to get it running.
- 3.0.42 kernel (just before the update to 3.0.52).
- Buildroot environment.
- No window manager (X11). XBMC runs straight onto the framebuffer.
- Couple of tweaks here and there as this is not even an alpha release.
- All armhf compild with Linaro toolchain.
Created a bootable SD card with a ext2 partition containing the rootfs and xbmc binaries and started it up. There appears to be a memory leak in samba armhf compiled, so disabled that for now (server, not the client). Further more there is nothing really included. No LIRC remote support or other side hardware for that matter.
Inserted the SD card and turned on the Mele A1000. After a good couple of seconds the XBMC start splash appeared and the GUI showed up. GUI speed is fast enough and rendered at around ~40 FPS, similar as Empatzero his port.
As there is a video file testing matrix on linux-sunxi.org, I decided to give the same files a test run. Here are the results;
| Yes | MPEG-4 | 1920×1080@25fps | [1] | None | ||||||
| Yes | Matroska | 1280×720@25fps | [2] | None | ||||||
| No | AVI | 1920×1080@25fps | [3] | None | ||||||
| Yes | MPEG-4 | 1280×720@25fps | [4] | Jerky / Rubberbanding playback | ||||||
| Yes | MPEG-PS | 1920×1080@25fps | [5] | None | ||||||
| Yes | MPEG-PS | 1280×720@25fps | [6] | Jerky playback. Smooth after 5 seconds | ||||||
| Yes | MPEG-4 | 720×304@25fps | [7] | Audio is smooth. Playback sticks to about 1 FPS | ||||||
| Yes | MPEG-4 | 720×[email protected] | [8] | Lots of artifacts. To my mind the underlying issue may be the wpredp=2 setting as all AVC video with this setting seem to exhibit the same troubles). |
Exactly the same performance and issues as Empatzero his port. The only difference is the AVI playback, but it should be noted that the test results on linux-sunxi (at this moment) are done without empatzero his last commit and support for AVI and other missing codecs.
There are still small issues here and there, but all with all not bad for a initial pre-alpha release. I will to some more testing, tweaking and adjustments. I will upload the rootfs tarbal and full SD card image a bit later, for the people that want to test for themself. People that want to do it themselfs can already do so. Everything can be found on Gimli his github account.
Downloads;
Flashable image
Rootfs+kernel



I’m thinking about getting a mele a1000g (note the g) to test this.
I don’t really care about wifi or ethernet drivers, but I do want to be able to run linux on it.
Do you believe I will encounter some difficulties getting linux running on the device?
No problems. Others have already used it for development. This version will boot, although you will have to tweak the script.bin file a bit. Nothing difficult.
But keep in mind, this is pre-alpha and if the cedarx issues are not resolved by Allwinner it will stay pre-alpha
Thanks,
I well aware about possibility of never getting hardware acceleration.
I’ll have to try that image. I tried about 2 XBMC Linux images and I also built it myself. XBMC can run, but the UI is rather slow (12 fps) and I can’t play videos at all.
Hopefully, your image will work on my Mele…
I can’t download the flashable image, as it will always stop in the middle of the download (it must be my internet connection, since this happens on some other servers).
But I managed to download the rootfs + kernel. I deleted my rootfs, and copied your rootfs files, and updated uImage.
It boots and tries to start XBMC, but fails with:
0:25 T:1075752960 ERROR: EGL error in InitDisplay: 3003
0:25 T:1075752960 ERROR: InitWindowSystem: Could not create display
0:25 T:1075752960 FATAL: CApplication::Create: Unable to init windowing system
Do I need a specific bootloader as well? I’m using the Mele A1000 and script.bin is set to VGA (1024×768).
https://github.com/huceke/xbmc/commit/65d5a95cfb29b271acbde50aeec4f496a5d7522e
As you run on VGA, change the modes. The important changes are the fb_pixel and scaler options
Then in the rootfs check the S99xbmc init script to change the resolution.
Thanks!
By changing XRES/YRES in S99xbmc init, the UI can start, but it is stretched as it is still reported to be 1280×720 in the system settings and I get 12 fps.
By modifying script.bin (fb0/1_pixel_sequence & fb0/1_scaler_mode_enable), I can decode one video frame before xbmc crashes. It’s still progress, as I only had black screen before.
Anyway, I suppose for now, we should really just run it with HDMI output and 720p resolution.
Hmm, then it really looks like your performance issues are related to the VGA output.
When I have time later this week, I will hook up to a VGA screen to confirm.
Can I install this on my Mele A2000?
Most likely, but use your mele a2000 script.bin. Decode it and change the framebuffer parameters as described above (link to github commit)
Should script.bin from guillaume’s ubuntu do the job? It’s the only image that works with my mele. Or I should be prepared to to some further improvements?
I managed to run your build on mele a2000. No VGA display yet, but I was able to log on with ssh. The file script.bin seems to be some binary format, which I don’t know how to edit. Any quick tip?
Search for bin2fex and fex2bin on cnxsoftware.com
How do I install this? Would I need both Flashable image and Rootfs+kernel or do I just need flashable image? thanks!
Either you flash the image to a 4GB SD card and boot from it or, you create your own bootable sd card and extract the rootfs to the second partition.
The second option is for the advanced users who know what they do, but just don’t want to go through the efforts of compiling everything themselfs.
- The systems needs some script.bin changes.
- First partition is a std VFAT with the boot.scr, script.bin and uImage
- Second partition is a ext2 partition containing the rootfs.
Can I install this to my Oval Elephant device?
Johan will have a look on this later.
As soon as I got my OE device back from Daniel, I will have a look as well.
I don’t have much time, because I really want to get cracking on the AmLogic stuff. This is just a fast and intermediate check on the CedarX libs.
I hope with the two versions out there, with the exact same decoding issues (hence even the VLC port has I think the same decoding issues) it is enough “prove” to Allwinner, that there are still some bugs/issues to fix in their linux version of CedarX.
Thanks
For Oval Elephant, you could try: http://forum.xbmc.org/showthread.php?tid=126995&pid=1241037#pid1241037
I’ve tried it on Smallart U-Host (same as Oval Elephant). It starts, but I can’t control it with either USB mouse or keyboard.
The earlier Linaro edition on this site has in the vfat partition script.bin for the OE and the MK802 these should work on this edition as well.(Same Kernel and stuff) Even on the HackBerry version it works. Same issue with 512 MB Ram as well. Later today i will check more.
Hi Peter, I bought an a10 allwinner android box thinking on the posibility of open source projects such as xbmc or custom linux builds booting from SDcard, but I saw the news that the allwinner developers are not releasing the code needed for GPU/VPU acceleration… so is there a way of buying the code from them? or they don´t want the code to be avaliable? I can´t think on any reason why they wouldn´t release it because that will improve the sales of the hardware.
Allwinner will not release or sell their code. They consider it to be their unique selling point.
They do however release and (kind of) support their closed source library. This is similar like AmLogic is doing.
[...] I managed to have XBMC Linux running & playing videos on Mele A1000 by using j1nx image (rootfs + kernel). I would first exhibit the exact same issue I had, but those where [...]
Small update, as promised.
Yester j1nx and i had a try to set a few things up.
First of all we for the OE we had a modded script.bin (file from linaro 12.8 beta release) only there changed some frame settings. With this script.bin the 8192cu drivers went to work… manualy we could with iwconfig connect with an WEP or open network. So peter quick & dirty compiled a rootfs with network-manager support as intermediate solution. This works and also with the script-nm for xbmc we could configure wifi settings. (However it does not find any networks.)
https://github.com/vikjon0/script.linux.nm/downloads (XBMC network manager plugin)
http://www.j1nx.nl/downloads/?did=19 (Updated rootfs + network-manager system)*
http://www.sendspace.com/file/dw0yv9 (script.bin for OE 720p50wifi)
*remove the smb.conf for now because it has a mem leak in armhf by “rm /etc/smb/smb.conf”
We did choose for this kind of solutions, because this version is verry tiny without gcc, make or apt-get. So wicd / wicd-devel is no option. It in the end allows easy WiFi configuration from within XBMC.
I was able to play on wifi with good quality 720p HD streams from the Polish weeb.tv and dutch TV streams even as 1channel and icefilms where ok. Those who have a mele have more performance on ethernet then wifi.
Another issue what is open is the RAM issue, i formated earlier my nand flash so could not check on the android version of the OE the “a10-meminfo-master”, these shows the ram allocation wrong. Later Peter can have a look if he got his OE back from Daniel, or if somebody want to look for us? (past-bin is a nice site for these things)
Later this week i will have another look, today i dont feel well and was late home.
Hi !
How do i write the full sd card image on a usb stick ? I did update my mele to ics with phoenix card utility but i can t do the same with this img.
Can you explain quickly ?
thanks
The sd card image is a raw disk image. Use a raw disk image writer to write it to a SD card, insert it into your mele and start it up.
That’s it.
I write it with Win32DiskImager, The mele does not boot on the usb stick, still load android.
I’m on win7, do you have a software to make it work ?
You need to flash it to a SD card, not an usb stick
Flash it to a 4gb SD card, insert it into the box and start it up.
hey i compiled xbmc manually for mele a2000 if run xbmc on melea2000 it shows the error like a unable to handle kernel null pointer to dereference at virtual address pls help me to resolve the error
I am more then happy to help you out, but you have to give me more information.
Explain the exact steps you have taken and at which step your are stuck.
Is there a specific reason to use 3.0.42 kernel?
Yes. Allwinner originally released the 3.0 sources. The linux-sunxi community has been building upon that sources since then.
My last build uses the 3.0.52 version.
Hi, I have just bought the allwinner A10 cortex A8. I have installed XBMC 12 Frodo beta 2. When I try and watch 1channel or navi-X the video keeps slowing down then speeds up to normal play. I don’t know why it’s doing it. Can anyone help please.
Linux or Android?
Video codec?
Video resolution?
Sorry beta 1 not 2.
Hello, great to see some progress!
i flashed the flashable iamge which seems to work great, now my only question remains how to connect to wlan?
I tried copying over the files for networkmanager etc but now xbmc wont even start and all i get is a standard linux login prompt
I got the same actually!
I compiled the networkmanager version very quick & dirty, for Johan his OE stick. He reported he was able to boot it, but NM did not yet work.
When I later got the time to look at it myself on the Mele, I also experienced problems.
Did not yet investigated the cause.
I guess this issue we should ask by the devoloper of NetworkManager for XBMC? Also this experience could be useful on the AMLogic build.
Hi there,
I just booted up my Z902 Allwinner A10 device to the buildroot image here, and it looks great – UI rendering at 40+ fps. Haven’t tested playback yet because I had to go to work
One question – how to configure wireless in this build? I don’t have easy access to wired internet where this device is set up. I haven’t tried ssh’ing into the device yet, I’m guessing it may be possible to set up wicd-curses. I was going to copy the .xbmc folder from my AppleTV running OpenELEC to get access to the OpenELEC preferences which allow configuration of WLAN through XBMC and will see if that works.
Very much looking forward to trying out playback and networking! If the Cedar libraries work well for HD decoding I will most likely poop briquettes.
OK … I copied over the .xbmc folder from the AppleTV and booted up the Z902. I immediately saw a difference in how fluid the UI was. Checked the System Info and the GUi was pushing 60+ fps. Whatever optimizations were done in the xbmc config for the AppleTV were extremely beneficial for this build as well.
Unfortunately, that’s not where the OpenELEC-specific addons are stored. I found them in /usr/share/xbmc/addons and I copied over the 3 files that had “openelec” in the name to the Z902 at /usr/share/xbmc/addons but it acted erratic on first boot and then I didn’t get video on second boot.
Next step is I’m going to copy the entire contents of /usr/share/xbmc/addons/ from the AppleTV to the Z902 and see what happens.
Still haven’t tried any playback (was tinkering on my lunch break), but the 60+ fps GUI looks very promising.
Can you share those files? So that we can use them with the XBMC A10 build with a higher FPS rate?
Turns out I had some incorrect permissions after cp’ing the /usr/share/xbmc/addons files. Fixed those, then did a diff between the guisettings.xml of the AppleTV and the Z902. I kept some from both depending on whether or not I wanted the same customizations. I deleted all of the from the ATV version and also most of the info as well, and changed the default audio output, turned on the webserver, and a few other things. I suspect this will fix the no video issue and erratic behavior I saw after the first attempt. Will post back later after giving this a shot.
@Peter, I guess here ends our hope, energy about Allwinner.
Last mail of Eva from Allwinner: “It seems that someone has already ported XBMC to A10 HDMI Dongle successfully. The link below for your reference.”
Perhaps we should leave that crap as it is, and concentrate, look around for something what works, is opensource and recently new or comming up to work with.
I also got email with ‘It seems that someone has already ported XBMC to A10 HDMI Dongle successfully’ and link to online store with mk802.
But nothing mentioned about xbmc on that site!
I’ve tried to get it working on a 7″ A10 tablet (Eken A70 clone) without success.
I also changed screen settings to enable internal LCD (script.bin->fex->bin).
When a TF is inserted, the tablet won’t boot (stuck on black screen; though, with LCD enabled in script.bin, I can see that the backlight goes on).
Any advice?
Is any keypress required in order to boot from TF?
Hi,
I’m awaiting my Mele A2000 order- should be here in the next week or 2.
I’m hoping to do a little testing – trials with xbmc to use it as a tv box in the bedroom- watch movies from XBMC on my Mac mini.
Any tips or hints would be appreciated
Have basic programming ability however from what I have seen its pretty simple code.
Cheers!
Browse the linux-sunxi.org wiki first to get a global idea of what the device can do.
Thanks! I will take a look.
Hey J1nx, i know this is a mele thread but Im hoping to get some general android box feedback from you.
ive been thinking about getting an android tv box or stick for a while. I want to connect it to either an old monitor (VGA/DVI) or preferably this old CRT I have (A/V input).
I ruled out sticks because of the heating up, no power button and only HDMI.
So Im left with boxes which is okay since space isn’t an issue, and some seem to have a/v out which is essential
Im trying to figure out which android box to buy. What I want to do is: browse the web, play videos (Youtube or full AVI, MKV formats), maybe some light games and email etc.. I understand that I cant expect pc or even ipad 3 level performance from these boxes, but I don’t want it to be painfully slow.
Is an AMLogic box (seem to all be manufactured by GeniaTech with various branding like PIVOS or SumVision) the best box to buy right now? Like the 1600 model?
I keep waiting for things like Allwinner to introduce a new chip or AMLogic to bring quad core to the box format or even someone to bring a 2GB freescale quad core to the bix format, but Ive come to conclusion that there is always something better. I just don’t want a horrible UI experience.
Im in Pakistan so I would be ordering from China and probably wont be able to get a fully rebranded version.
Any advice?
First of all, you are right. Don’t wait for the last version, because you will wait forever.
Secondly, I have not tested any of the boxes hooked up to a old CRT screen. I tried it once with the amlogic box, but failed and gave up rather quickly without putting in efforts.
I think the Amlogic M3 boxes and the Mele A1000g/A2000g boxes will do what you want.
Hey J1nx, thanks for the feedback.
Ack, if it doesnt work on a CRT it would be useless as I would have to buy a new TV (which I dont want to do). And yeah this is an old CRT with 2 AV input sets and 1 Coaxial (??) input only.
Also are these 1200/1600 M3 ? I read somewhere else that these were M6 (i assume that M6 = equals better performance, so Im wondering if there is another uber model with M6 currently available).
I went to the China MyGica site ,
. Very confusing even with Google translate as it seems they dont have the same models (only 1 AML android STB is shown there) in China that they offer internationally.
Cheers.
The 1200/1600 are indeed Meson 6 – dual core boxes.
But again, I have no confirmation if the Coaxial connection do work. Anybody else tested this?
Hey J1nx, Ive left you (co-directed) a looong suggestion type question on Cnx’s board. Wondering if you can take a look or whether you would prefer if I reposted here.
Thanks, replied over there.
I dd’ed xbmc_buildroot.img on a 4GB SD card and running on mk802+ stick. The xbmc launches fine and the FPS in system->system info displays 40+ fps.
I have two question:
1. How do I play files from a USB stick ? When I plug in a USB stick, I dont see it under the storage or dont see under /media/usb[0-7].
2. Any way to setup wireless config by some setup file(s) ? I saw some discussions above but didn’t get it how to do it
Thanks
Mudit
In order to mount usb stick or smb shares you should try this :
https://play.google.com/store/apps/details?id=ws.plattner.cifsmanager
@DGAK — i thout this image is based on Linux/XBMC. What will google play app help me ?
Mudit,
1) The released binary is a very minimal version. More of a prove of concept. Now all development for this is pauzed untill Allwinner decides to fix their libary and release a proper version. Nobady want to put in time if in the end it will never be any good.
Relating to your question, we have not looked into any hotplugging and udev rules. What you can try is to plugin the devices before booting.
2) You have to manualy change all the files related to wifi. Best thing for you to do is to quickly disable/move the S99xbmc init script to make sure XBMC does not start. You will then have CLI access. Google for “linux wifi cli manual” or something to see how to get it going. As soon as you got it working, you can move back the S99xbmc script and reboot with wifi.
But again; This version is more a “proof of concept” / alpha version then the real deal.
Hi Admin
I really appreciate the effort which went in. I just wanted to see some files which I can play. I thought I can plugin the USB stick and play from it. Booting with USB plugged in still doesn’t show up the USB anywhere in the system. May be it needs to be explicitly mounted.
I will remove the S99xbmc and try to mount from the shell along with the wifi.
BTW – does this xbmc has h/w acceleration builtin ?
Thanks
Mudit
For wireless, does it have all the right drivers bundled in the image?
One more question: what is the username/passwd ? I am at the login prompt and I tried root/root and username/secret etc.
Thanks
Mudit
Same question regarding to username pw combo
User = root
Passwd = xbmc
HW acceleration: Yes, BUT the borked version of Allwinner. x264 has artifacts, other formats might works or fail completely.
Could you perhaps write a little how to enable the wlan?
i added the needed wpa supplicant conf and added this to s99xbmc:
wpa_supplicant -B -iwlan0 -c/etc/wpa.conf -Dwext
dhclient wlan0
tried it with eth0, without a shell it’s kinda hard to debug?
Kind Regards, Nicky
@Nicky: I got sort of a command line prompt by adding a line in passwd and shadow files from an existing linux box. But I cant still sudo in the box. If I run ifconfig command, I dont see any wlan0, probably some sort of kernel module has to be loaded.
BTW – check this site http://linux-sunxi.org/Main_Page , it should answer most of the questions. I am digging it up now.
Indeed that wiki page is the best to start with. It also has a CedarX page, where you can see what works and what not.
All drivers are included, wifi is rtl8144cu (or something)
@Admin
Thanks for the help. I am able to setup my wireless (WPA) and setup NFS etc. I can *play* a file from NFS but it bombs most of the time (hangs or the box crashes). Also, the nfs setting is not being stored between reboots, I may have to probably save it in config somewhere.
But you were right, the xbmc runs but the playback is whole another issue.
If Allwinner decides to admit they have a borked Linux library and are able to fix it (which they can’t themselfs at the moment) development will be picked up.
After some time I now have XBMC loaded and running on my Mele A200 running Android 4.0 !
Still a lot to fiddle with.
Many thanks to all the hard work done by people here and elsewhere.
Frame rate is around maybe 20-30 fps, a little choppy in the beginning but plays well after buffering for a couple minutes.
Havent tested any HD stuff, only 480p.
Looks promising though!
Tried 720p last night- streaming Breaking Bad from my Mac Mini using NFS.
It plays like crap.
Audio out of sync and frame rate is pathetic.
SD stuff seemed to play half alright once it had streamed a short while, but HD no chance.
I’m keen to use this box to stream to the bedroom over my network.
Lockyc, VidOnMe has made a XBMC android app with they on libaries, with they android version of the A10 and this APP they promised by selling that Full HD content would play smootly. However I did not test that or even seen a review of that. On the XBMC Forums theyre closed the rip-off threat of that.
The recent buildroots none of them is capable to watch streaming video, the audio is not synchrome with the video content, however they still hopeing that something would be happen. If i may give an advice, its better to use the Mele as NAS or something else at this moment then as STB.
If you ask me Allwinner does not deserves our attention, however the hardware looks nice, but if you cant use it, and they do not cooperate in development then its a waste of time.
In our common projects we will look further on AMLogic and STBs with the Exynos SoC whats looks very promising.
After testing the AMLogic M3 gives us hope to get this work in near future, and we’ve learned of those company’s like Allwinner.
For now if somebody really wants a working product with XBMC then only the AppleTV STB’s and the Pivos are fully supported for XBMC, other stuff is hackable, but Peter and others any kind of help with this.
Also i wish you all the best for 2013, it would be an innovative year
In the table on http://linux-sunxi.org/CedarXVideoRenderingChart there are some issues resolved. Is it possible to create a new image?
Is there any update on this? Did Allwinner ever fix their messed up libs? Is XBMC running decent on the A10?
Nope, nope and nope… (sorry)
Allwinner in uncapable to sort their library. Their Cedar develop ran, and they have no clue how it works either. We reached out to help, but they refused, telling us they will find another developer.
We are still waiting for that to happen …..
Thanks for the answer admin! What would you suggest for a hardware solution if I’m only interested in running XBMC? I bought a cubieboard but didnt do enough research into it running XBMC
Amlogic M3 hardware. Checkout the Smart TV Box in the shop.
Together with the beta2 community build, it will kick Allwinner’s ….
Is there any plans of running just linux on the gbox midnight/smart tv box, rather than the xmbc linux buildroot j1nx?
It was originally planned, but as the kernel is not armhf (easy) compatible, it doesn’t bring you that much.