Difference between revisions of "Zotac Zbox AD04"

From LinuxMCE
Jump to: navigation, search
(Media Director General info)
 
(18 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}}
[[Category: ION]]
+
{{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|Manufacturer link]
+
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 22: Line 22:
 
*2x USB 3.0, 4x USB 2.0
 
*2x USB 3.0, 4x USB 2.0
  
== Getting AD04 working under 10.04 ==
+
== Getting AD04 working under 12.04 ==
  
 
=== 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 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.
+
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.
  
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.
+
AVWiz will let you choose 1080p, UI2 (medium), sound over HDMI with no issues.
=== 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
+
You may have a TV underscan black border, depending on your TV. My Hisense 40" LCD does require tweaking (see below).
<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
+
However, I found that with the default driver installed above, there were the following issues:
<pre>
+
# youtube videos are extremely jerky
/usr/pluto/bin/Stop_X.sh
+
# if screensaver kicks in when you're on firefox (youtube or other) you have to quick reload router to get out of it
aticonfig --set-pcs-val=MCIL,DigitalHDTVDefaultUnderscan,0
+
# playback of normal videos is slightly jerky
</pre>
+
# No nice alpha blending
That should sort it out. Reboot the machine and the black border should be gone!
+
  
=== Sound over HDMI ===
+
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.
To get this to work I had to set
+
<pre>
+
AlternateSC = 1</pre> in /etc/pluto.conf
+
  
== Bundled MCE remote ==
+
=== 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.
  
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.
+
ssh into MD as root from core
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
+
Unzip driver
 
<pre>
 
<pre>
apt-get install automake dialog libtool
+
unzip amd-catalyst-14-4-rev2-linux-x86-x86-64-may6.zip
 
</pre>
 
</pre>
* Download the version from FernetMenta
+
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>
wget https://github.com/FernetMenta/lirc/tarball/master -O lirc.tar.gz
+
chmod a+x chmod a+x amd-driver-installer-13.35.1005-x86.x86_64.run
 
</pre>
 
</pre>
* Extract, configure and install:
+
Stop X before purgin existing drivers
When you will run setup.sh, choose select driver "zotac" under usb, then save & configure
+
 
<pre>
 
<pre>
tar -xvf ./lirc.tar.gz
+
/usr/pluto/bin/Stop_X.sh
cd FernetMenta-lirc-c336b00/
+
./autogen.sh
+
./setup.sh
+
make
+
make install
+
 
</pre>
 
</pre>
* Create links /usr/sbin:
+
Now we need to try to purge existing drivers
 
<pre>
 
<pre>
cd /usr/sbin
+
apt-get remove --purge fglrx fglrx_* fglrx-amdcccle* fglrx-dev*
ln -s ../local/sbin/lircd lircd
+
ln -s ../local/sbin/lircmd lircmd
+
 
</pre>
 
</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.
+
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:
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>
 
<pre>
Section "InputClass"
+
./amd-driver-installer-13.35.1005-x86.x86_64.run --force
  Identifier "PHILIPS MCE USB IR Receiver- Spinel plus"
+
  MatchProduct "PHILIPS MCE USB IR Receiver- Spinel plus"
+
  MatchIsKeyboard "true"
+
  Option "Ignore" "true"
+
EndSection
+
 
</pre>
 
</pre>
* Find vendor and product ids for remote from the appropriate section
+
Takes a while... just follow the prompts and accept the licence.
 +
Then, when done, configure:
 
<pre>
 
<pre>
cat /proc/bus/input/devices
+
aticonfig --initial -f
 
+
aticonfig --sync-vsync=on
.
+
aticonfig --set-pcs-u32=MCIL,HWUVD_H264Level51Support,1
.
+
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>
 
</pre>
 
+
If your TV had black borders, like my Hisense, disable underscan:
* 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>
 
<pre>
SUBSYSTEM=="usb" , ATTRS{idVendor}=="0471", ATTRS{idProduct}=="20cc", SYMLINK+="remote", ACTION=="add", RUN+="/sbin/initctl --quiet emit --no-wait ir-ready"
+
aticonfig --set-pcs-val=MCIL,DigitalHDTVDefaultUnderscan,0
 
</pre>
 
</pre>
* Replace (in my case create) the current version of /etc/lirc/hardware.conf with:
+
That should sort it out. Reboot the machine with AVWiz and it should work!
 
<pre>
 
<pre>
# hardware.conf for Zotac
+
/usr/pluto/bin/RebootWithAVWizard.sh
#
+
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>
 
</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)
+
Don't install xvba... it ends up uninstalling this driver.
** See forum post:http://forum.linuxmce.org/index.php/topic,12993.0.html
+
==  [[Zotac_MCE_Remote|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).
  
= 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