Difference between revisions of "Zotac Zbox AD04"

From LinuxMCE
Jump to: navigation, search
 
(14 intermediate revisions by one other user not shown)
Line 1: Line 1:
 
[[Category: Hardware]]
 
[[Category: Hardware]]
 
[[Category: Media Directors]]
 
[[Category: Media Directors]]
[[Category: Nettops]]
+
{{versioninfo|1204Status=Works with some hacks|1204UpdatedDate=23rd Sept 2014|1204UpdatedBy=jamo}}
{{versioninfo|1004Status=Works with some hacks|1004UpdatedDate=05th December 2012|1004UpdatedBy=jamo}}
+
  
 
= Media Director General info =
 
= Media Director General info =
  
http://www.zotacusa.com/zbox-ad06.html
+
This is a great little media director. Very lightweight, quiet and reliable. I use it as a diskless MD. The only grumble is Radeon graphics that is still not well supported.
 +
 
 +
[[Image:Zotac_zbox_ad04.jpg|link=http://www.zotacusa.com/zbox-ad04.html]]
  
 
== Technical Details ==
 
== Technical Details ==
Line 24: Line 25:
  
 
=== Setting up PXE boot ===
 
=== Setting up PXE boot ===
 +
You have to press "Del" key during POST just after ZOTAC sign appears on screen to enter BIOS. In my system, you could use the keyboard to navigate BIOS but the highlighting didn't work well so when
 +
you went "down" a menu you had to count your keypreses to figure out which option you were on before pressing enter.
 +
 
=== First boot ===
 
=== First boot ===
 
Once PXE boot is working, device should happily boot from Gig NIC connected to internal linuxMCE network. It will follow the normal pattern of MD creation up to the third reboot where it gets into a loop trying to sort out the video card. You will be left at the last text message - "trying to load: pxelinux.cfg/xx-xx-xx-xx-xx-xx" or something as it flashes the screen clearly trying to start X, failing and dropping back to this point. This happens about 20 times before you miraculously end up in AVWiz.
 
Once PXE boot is working, device should happily boot from Gig NIC connected to internal linuxMCE network. It will follow the normal pattern of MD creation up to the third reboot where it gets into a loop trying to sort out the video card. You will be left at the last text message - "trying to load: pxelinux.cfg/xx-xx-xx-xx-xx-xx" or something as it flashes the screen clearly trying to start X, failing and dropping back to this point. This happens about 20 times before you miraculously end up in AVWiz.
Line 31: Line 35:
 
You may have a TV underscan black border, depending on your TV. My Hisense 40" LCD does require tweaking (see below).
 
You may have a TV underscan black border, depending on your TV. My Hisense 40" LCD does require tweaking (see below).
  
If you would like to upgrade the catalyst driver, follow the steps below:
+
However, I found that with the default driver installed above, there were the following issues:
 +
# youtube videos are extremely jerky
 +
# if screensaver kicks in when you're on firefox (youtube or other) you have to quick reload router to get out of it
 +
# playback of normal videos is slightly jerky
 +
# No nice alpha blending
 +
 
 +
I solved most of these issues by upgrading to the latest catalyst driver as outlined below. After doing this, video playback was noticably better, youtube was much better, certainly watchable, the screensaver issues were gone and I had alpha blending.
  
 
=== Install Latest Catalyst Driver (fglrx) ===
 
=== Install Latest Catalyst Driver (fglrx) ===
 +
Download the latest ATI driver for Linux. At the time of writing it was 14.4rev2 (download file is called amd-catalyst-14-4-rev2-linux-x86-x86-64-may6.zip)
 +
You need to get the zip file onto your MD- the way
 +
I did it was to sftp it to the core and then moved it into the root drive of the appropriate MD /usr/pluto/diskles/XX/root
 +
where XX is the media director number. You will need to do all this as root on the core.
 +
 
ssh into MD as root from core
 
ssh into MD as root from core
  
Download latest ati driver.
+
Unzip driver
At this time it (latest driver) was 13.12. It is available from ati site but not for wget so found this mirror.
+
 
<pre>
 
<pre>
wget http://geeko.ioda.net/mirror/amd-fglrx/raw-src/amd-catalyst-13.12-linux-x86.x86_64.zip
+
unzip amd-catalyst-14-4-rev2-linux-x86-x86-64-may6.zip
 
</pre>
 
</pre>
Unzip driver and make script executable
+
That creates a folder called fglrx-14.10.1006.1001
 +
Inside that folder is amd-driver-installer-14.10.1006.1001-x86.x86_64.run
 +
Make sure it is executable... if necessary add the executable bit:
 
<pre>
 
<pre>
unzip amd-catalyst-13.12-linux-x86.x86_64.zip
+
chmod a+x chmod a+x amd-driver-installer-13.35.1005-x86.x86_64.run
chmod a+x amd-catalyst-13.12-linux-x86.x86_64.run  
+
 
</pre>
 
</pre>
Now stop X before we fiddle with drivers
+
Stop X before purgin existing drivers
 
<pre>
 
<pre>
 
/usr/pluto/bin/Stop_X.sh
 
/usr/pluto/bin/Stop_X.sh
Line 52: Line 67:
 
Now we need to try to purge existing drivers
 
Now we need to try to purge existing drivers
 
<pre>
 
<pre>
apt-get --purge remove fglrx*
+
apt-get remove --purge fglrx fglrx_* fglrx-amdcccle* fglrx-dev*
 
</pre>
 
</pre>
 
On my system this threw errors which meant fglrx wasn't completely removed so I had to use the force option when running the installer:
 
On my system this threw errors which meant fglrx wasn't completely removed so I had to use the force option when running the installer:
 
<pre>
 
<pre>
./amd-catalyst-13.12-linux-x86.x86_64.run --force
+
./amd-driver-installer-13.35.1005-x86.x86_64.run --force
 
</pre>
 
</pre>
 
Takes a while... just follow the prompts and accept the licence.
 
Takes a while... just follow the prompts and accept the licence.
Then, when done, configure. Not sure if this is still necessary but I did it
+
Then, when done, configure:
 
<pre>
 
<pre>
 
aticonfig --initial -f
 
aticonfig --initial -f
 
aticonfig --sync-vsync=on
 
aticonfig --sync-vsync=on
 +
aticonfig --set-pcs-u32=MCIL,HWUVD_H264Level51Support,1
 
</pre>
 
</pre>
Now, if you had black borders (underscan) previously, do the following:
+
If your TV had black borders, like my Hisense, disable underscan:
 
<pre>
 
<pre>
 
aticonfig --set-pcs-val=MCIL,DigitalHDTVDefaultUnderscan,0
 
aticonfig --set-pcs-val=MCIL,DigitalHDTVDefaultUnderscan,0
Line 73: Line 89:
 
</pre>
 
</pre>
  
== Bundled MCE remote ==
+
Don't install xvba... it ends up uninstalling this driver.
 
+
== [[Zotac_MCE_Remote|Bundled MCE remote]]  ==
still working on this....
+
The bundled MCE IR remote comes with an IR receiver which I couldn't get to work nicely but I purchased a USB-UIRT and that receiver works well with this remote. The remote uses template #2287 and just adding this to your Media Director should have it working sweetly (provided you have the USB-UIRT receiver).
 
+
== Getting AD04 working under 10.04 ==
+
 
+
=== Setting up PXE boot ===
+
=== First boot ===
+
Once PXE boot is working, device should happily boot from Gig NIC connected to internal linuxMCE network. It will follow the normal pattern of MD creation up to the second or third reboot where it gets into a rebooting loop, ended by the error "firstrun exited outside normal code flow". I believe this is because the fglrx driver which is correctly installed for the video card, has a bug which makes it not recognise the video card. This is a bug of fglrx (catalyst) 2.6.
+
 
+
If you leave it, the reboot loop happens 4-5 times and then, surprisingly, goes to avwiz. However, avwiz won't let you get any better graphics than 720p UI1 which isn't very nice considering he capabilities of the graphics card and, probably your display. So,to sort this out, before running AVWiz* you need to get in and install the latest catalyst driver as described in the following section.
+
=== Install Latest Catalyst Driver (fglrx) ===
+
 
+
* At this point (before going through AVWiz) I ssh into the new MD from the core as root and run
+
<pre>
+
apt-get update
+
apt-get upgrade
+
</pre>
+
To bring all the updated packages in. But don't reboot yet or the system will try to sort itself out with L3's backport stuff which doesn't work at the moment, at least not for me. Rather manually remove as much of fglrx as you can and then install the latest catalyst driver.
+
<pre>
+
apt-get --purge remove xorg-driver-fglrx fglrx fglrx-modalias* fglrx-amdcccle fglrx-kernel-source xorg-driver-fglrx-dev
+
</pre>
+
There may be more you can remove... in the end I still ran the catalyst install with --force because it seemed to think there was an existing driver installed but this was all I could find.
+
Then download the latest catalyst driver, unzip and run it-
+
<pre>
+
wget http://www2.ati.com/drivers/linux/amd-driver-installer-catalyst-13-4-x86.x86_64.zip
+
unzip amd-driver-installer-catalyst-13-4.10-x86.x86_64.zip
+
chmod a+x amd-driver-installer-catalyst-13-4-x86.x86_64.run
+
./amd-driver-installer-catalyst-13-4-x86.x86_64.run
+
</pre>
+
Go through the install... next next next essentially. If it whines about existing install and you feel you've removed all fglrx packages you can, then
+
<pre>
+
./amd-driver-installer-catalyst-13-4-x86.x86_64.run --force
+
</pre>
+
Will prevent that check.
+
 
+
On some TVs, you get a black border around the picture. I gather this is caused by underscan. The aticonfig command allows you to disable underscan but this setting does not survive reboot unless you do it while X is not running! Tricky...  so you have to ssh into the MD from somewhere (as root) and then run
+
<pre>
+
/usr/pluto/bin/Stop_X.sh
+
aticonfig --set-pcs-val=MCIL,DigitalHDTVDefaultUnderscan,0
+
</pre>
+
That should sort it out. Reboot the machine and the black border should be gone!
+
 
+
=== Sound over HDMI ===
+
To get this to work I had to set
+
<pre>
+
AlternateSC = 1</pre> in /etc/pluto.conf
+
 
+
== Bundled MCE remote ==
+
 
+
Remote appears to emulate a USB keyboard out the box. This has limited use in UI2 as only the arrow keys, "ok" = click, and "enter" are useful.
+
Experimenting with steps from the following thread: http://wiki.xbmc.org/index.php?title=HOW-TO:Install_XBMC_on_Ubuntu_with_AMD_GPU#Step_13:_Configuring_Remote_Control
+
to try to get it working. Steps followed (ssh to MD as root):
+
 
+
* Install requirements
+
<pre>
+
apt-get install automake dialog libtool
+
</pre>
+
* Download the version from FernetMenta
+
<pre>
+
wget https://github.com/FernetMenta/lirc/tarball/master -O lirc.tar.gz
+
</pre>
+
* Extract, configure and install:
+
When you will run setup.sh, choose select driver "zotac" under usb, then save & configure
+
<pre>
+
tar -xvf ./lirc.tar.gz
+
cd FernetMenta-lirc-c336b00/
+
./autogen.sh
+
./setup.sh
+
make
+
make install
+
</pre>
+
* Create links /usr/sbin:
+
<pre>
+
cd /usr/sbin
+
ln -s ../local/sbin/lircd lircd
+
ln -s ../local/sbin/lircmd lircmd
+
</pre>
+
* Stop X11 from registering device as keyboard  <== I haven't been able to do this because I couldn't find the file mentioned below. Included for later.
+
IMPORTANT INFORMATION!!!
+
Xorg update could overwrite this file, if you later experience some kind of strange key repeating, sometime infinite and always boring, it may have been overwritten! In this case, just redo this step and you're done ^^
+
Edit "/usr/share/X11/xorg.conf.d/10-evdev.conf" and place the following code at the begining of the file: <=== I couldn't find this file
+
<pre>
+
Section "InputClass"
+
  Identifier "PHILIPS MCE USB IR Receiver- Spinel plus"
+
  MatchProduct "PHILIPS MCE USB IR Receiver- Spinel plus"
+
  MatchIsKeyboard "true"
+
  Option "Ignore" "true"
+
EndSection
+
</pre>
+
* Find vendor and product ids for remote from the appropriate section
+
<pre>
+
cat /proc/bus/input/devices
+
 
+
.
+
.
+
I: Bus=0003 Vendor=0471 Product=20cc Version=0100
+
N: Name="PHILIPS MCE USB IR Receiver- Spinel plus"
+
P: Phys=usb-0000:00:12.0-1/input0
+
S: Sysfs=/devices/pci0000:00/0000:00:12.0/usb4/4-1/4-1:1.0/input/input4
+
U: Uniq=
+
H: Handlers=kbd event4
+
B: EV=120013
+
B: KEY=c0000 400 0 0 0 0 58000 8001f8 4000c004 e0beffdf 1cfffff ffffffff fffffffe
+
B: MSC=10
+
B: LED=1f
+
.
+
.
+
</pre>
+
 
+
* Add a alias in udev to /dev/remote by creating a new file at /etc/udev/rules.d/10-local.rules with the following:
+
<pre>
+
SUBSYSTEM=="usb" , ATTRS{idVendor}=="0471", ATTRS{idProduct}=="20cc", SYMLINK+="remote", ACTION=="add", RUN+="/sbin/initctl --quiet emit --no-wait ir-ready"
+
</pre>
+
* Replace (in my case create) the current version of /etc/lirc/hardware.conf with:
+
<pre>
+
# hardware.conf for Zotac
+
#
+
REMOTE="Zotac MCE Remote"
+
REMOTE_MODULES=""
+
REMOTE_DRIVER="zotac"
+
REMOTE_DEVICE="/dev/remote"
+
REMOTE_SOCKET=""
+
REMOTE_LIRCD_CONF="zotac/lircd.conf.zotac"
+
REMOTE_LIRCD_ARGS=""
+
TRANSMITTER="None"
+
TRANSMITTER_MODULES=""
+
TRANSMITTER_DRIVER=""
+
TRANSMITTER_DEVICE=""
+
TRANSMITTER_SOCKET=""
+
TRANSMITTER_LIRCD_CONF=""
+
TRANSMITTER_LIRCD_ARGS=""
+
START_LIRCD="true"
+
LOAD_MODULES="true"
+
LIRCMD_CONF=""
+
FORCE_NONINTERACTIVE_RECONFIGURATION="false"
+
START_LIRCMD=""
+
</pre>
+
* Replace (in my case not necessary, it already existed and was much the same!) the current version of /etc/lirc/lircd.conf with:
+
<pre>
+
# Please make this file available to others
+
# by sending it to
+
#
+
# this config file was automatically generated
+
# using lirc-0.9.1-git(zotac) on Mon Apr  2 14:10:29 2012
+
#
+
# contributed by
+
#
+
# brand:                      zotac.conf
+
# model no. of remote control:
+
# devices being controlled by this remote:
+
#
+
 
+
begin remote
+
 
+
  name  zotac.conf
+
  bits          32
+
  eps            30
+
  aeps          100
+
 
+
  one            0    0
+
  zero            0    0
+
  gap          100123
+
  min_repeat      9
+
#  suppress_repeat 9
+
#  uncomment to suppress unwanted repeats
+
#  toggle_bit_mask 0x7004F
+
 
+
      begin codes
+
          KEY_SLEEP                0x00010082
+
          KEY_WAKEUP              0x00010083
+
          KEY_RECORD              0x000C00B2
+
          KEY_PAUSE                0x000C00B1
+
          KEY_STOP                0x000C00B7
+
          KEY_REWIND              0x000C00B4
+
          KEY_PLAY                0x000C00B0
+
          KEY_FORWARD              0x000C00B3
+
          KEY_LEFTSHIFT            0x000C00B6
+
          KEY_RIGHTSHIFT          0x000C00B5
+
          KEY_BACK                0x000C0224
+
          KEY_INFO                0x000C0209
+
          KEY_MENU                0xFFBC000D
+
          KEY_UP                  0x00070052
+
          KEY_LEFT                0x00070050
+
          KEY_RIGHT                0x0007004F
+
          KEY_DOWN                0x00070051
+
          KEY_OK                  0x00070028
+
          KEY_VOLUMEUP            0x000C00E9
+
          KEY_VOLUMEDOWN          0x000C00EA
+
          KEY_MUTE                0x000C00E2
+
          KEY_CHANNELUP            0x000C009C
+
          KEY_CHANNELDOWN          0x000C009D
+
          KEY_1                    0x0007001E
+
          KEY_2                    0x0007001F
+
          KEY_3                    0x00070020
+
          KEY_4                    0x00070021
+
          KEY_5                    0x00070022
+
          KEY_6                    0x00070023
+
          KEY_7                    0x00070024
+
          KEY_8                    0x00070025
+
          KEY_9                    0x00070026
+
          KEY_0                    0x00070027
+
          KEY_NUMERIC_STAR        0x10070025
+
          KEY_NUMERIC_POUND        0x10070020
+
          KEY_CLEAR                0x00070029
+
          KEY_TEXT                0xFFBC005A
+
          KEY_TITLE                0x000C008D
+
          KEY_ENTER                0x00070028
+
          KEY_RED                  0xFFBC005B
+
          KEY_GREEN                0xFFBC005C
+
          KEY_YELLOW              0xFFBC005D
+
          KEY_BLUE                0xFFBC005E
+
      end codes
+
 
+
end remote
+
</pre>
+
 
+
* reboot
+
I then followed the steps in
+
http://wiki.linuxmce.org/index.php/Adding_iMON_PAD
+
 
+
and pasted the config file (lircd.conf) into the configuration data I added in the new template. Then chose "Spine 1 plus" as remote for my MD.... still waiting to see if it works.
+
 
+
= Current issues on 10.04 =
+
 
+
*Radeon HD6320 graphics does not work out of the box - no avwiz, vesa gfx pop up
+
** See forum post:http://forum.linuxmce.org/index.php/topic,12993.0.html
+
 
+
*HDMI sound does not work out of the box (in fact no sound does)
+
** See forum post:http://forum.linuxmce.org/index.php/topic,12993.0.html
+
  
= Links =
+
Buttons work pretty much as expected. The skip-track button works nicely to page down and up through the media grids. Green button selects the menu, Red exits (like Esc)
 +
[[Image:Zotac_zbox_ad04_mce_remote.jpg|link=http://www.zotacusa.com/zbox-ad04.html]]

Latest revision as of 01:53, 28 September 2015

Version Status Date Updated Updated By
710 Unknown N/A N/A
810 Unknown N/A N/A
1004 Unknown N/A N/A
1204 Works with some hacks 23rd Sept 2014 jamo
1404 Unknown N/A N/A
Usage Information

Media Director General info

This is a great little media director. Very lightweight, quiet and reliable. I use it as a diskless MD. The only grumble is Radeon graphics that is still not well supported.

Zotac zbox ad04.jpg

Technical Details

  • CPU - AMD E-450 APU 1.65GHz Dual-Core
  • AMD Radeon HD 6320 GPU
  • HD Analog Audio, Optical digital S/PDIF output
  • Onboard Gb LAN
  • 802.11b/g/n wifi
  • Bluetooth
  • 1 2.5-inch SATA 6.0 Gb/s hard drive connection, 2 204-pin DDR3-1333 SO-DIMM slots - up to 8Gb memory
  • HDMI (1080p with 8-channel audio), Dual-link DVI, HDCP compliant, VGA (with DVI-to VGA adapter)
  • Compatible, DirectCompute ready, OpenGL 3.2 compatible, OpenGL compatible, Integrated 802.11n WiFi
  • 2x USB 3.0, 4x USB 2.0

Getting AD04 working under 12.04

Setting up PXE boot

You have to press "Del" key during POST just after ZOTAC sign appears on screen to enter BIOS. In my system, you could use the keyboard to navigate BIOS but the highlighting didn't work well so when you went "down" a menu you had to count your keypreses to figure out which option you were on before pressing enter.

First boot

Once PXE boot is working, device should happily boot from Gig NIC connected to internal linuxMCE network. It will follow the normal pattern of MD creation up to the third reboot where it gets into a loop trying to sort out the video card. You will be left at the last text message - "trying to load: pxelinux.cfg/xx-xx-xx-xx-xx-xx" or something as it flashes the screen clearly trying to start X, failing and dropping back to this point. This happens about 20 times before you miraculously end up in AVWiz.

AVWiz will let you choose 1080p, UI2 (medium), sound over HDMI with no issues.

You may have a TV underscan black border, depending on your TV. My Hisense 40" LCD does require tweaking (see below).

However, I found that with the default driver installed above, there were the following issues:

  1. youtube videos are extremely jerky
  2. if screensaver kicks in when you're on firefox (youtube or other) you have to quick reload router to get out of it
  3. playback of normal videos is slightly jerky
  4. No nice alpha blending

I solved most of these issues by upgrading to the latest catalyst driver as outlined below. After doing this, video playback was noticably better, youtube was much better, certainly watchable, the screensaver issues were gone and I had alpha blending.

Install Latest Catalyst Driver (fglrx)

Download the latest ATI driver for Linux. At the time of writing it was 14.4rev2 (download file is called amd-catalyst-14-4-rev2-linux-x86-x86-64-may6.zip) You need to get the zip file onto your MD- the way I did it was to sftp it to the core and then moved it into the root drive of the appropriate MD /usr/pluto/diskles/XX/root where XX is the media director number. You will need to do all this as root on the core.

ssh into MD as root from core

Unzip driver

unzip amd-catalyst-14-4-rev2-linux-x86-x86-64-may6.zip

That creates a folder called fglrx-14.10.1006.1001 Inside that folder is amd-driver-installer-14.10.1006.1001-x86.x86_64.run Make sure it is executable... if necessary add the executable bit:

chmod a+x chmod a+x amd-driver-installer-13.35.1005-x86.x86_64.run

Stop X before purgin existing drivers

/usr/pluto/bin/Stop_X.sh

Now we need to try to purge existing drivers

apt-get remove --purge fglrx fglrx_* fglrx-amdcccle* fglrx-dev*

On my system this threw errors which meant fglrx wasn't completely removed so I had to use the force option when running the installer:

./amd-driver-installer-13.35.1005-x86.x86_64.run --force

Takes a while... just follow the prompts and accept the licence. Then, when done, configure:

aticonfig --initial -f
aticonfig --sync-vsync=on
aticonfig --set-pcs-u32=MCIL,HWUVD_H264Level51Support,1

If your TV had black borders, like my Hisense, disable underscan:

aticonfig --set-pcs-val=MCIL,DigitalHDTVDefaultUnderscan,0

That should sort it out. Reboot the machine with AVWiz and it should work!

/usr/pluto/bin/RebootWithAVWizard.sh

Don't install xvba... it ends up uninstalling this driver.

Bundled MCE remote

The bundled MCE IR remote comes with an IR receiver which I couldn't get to work nicely but I purchased a USB-UIRT and that receiver works well with this remote. The remote uses template #2287 and just adding this to your Media Director should have it working sweetly (provided you have the USB-UIRT receiver).

Buttons work pretty much as expected. The skip-track button works nicely to page down and up through the media grids. Green button selects the menu, Red exits (like Esc) Zotac zbox ad04 mce remote.jpg