User:Jeroen

From The Neuros Technology Wiki

Jump to: navigation, search
Jeroen
Image:Duckling_head.jpg
Other Names:
Where to Find: mailing list, wiki
Areas of Expertise: MythTV
Secondary Expertise: lirc,raid
Member Since: 2008
Group Membership:
Accomplishments:
Primary Products: LINK
Other Communities:
Location: Amsterdam, Netherlands
Website:

Contents

[edit] Intro

I decided to try the Neuros Link after my Epia SP8000 diskless mythtv frontend minimyth gave up after approx. 3 years. I like the Neurostechnology's 'open' development method so in steda of building my own I bought a Neuros Link at Thinkgeek. Since I live in Amsterdam I had to pay $61 dollars to have it shipped and pay another $68 import tax at the door. After 5 days the Link arrived and couldn't wait to have it connected to my modest 22" Samsung but I first had to buy a HDMI cable. The shop 'expert' told me I needed a high quality HDMI cable to connect a computer to my television so I bought the cheapest they had.

[edit] unboxing

While unboxing I noticed some dents in the outer box but the inner box and the thinkgeek 'airbags' would have protected the precious Link ? Wrong ! It seems the DHL guys took my $61 and kicked the box all the way from the US to Amsterdam. When I found the Neuros Link DOA I decided to open it up and find the DRAM module shaken out of it's socket ! Also the wireless keyboard was damaged although Thinkgeek did their best to pack it with lots of protection.

I wanted to RMA the Link at first but I'm afraid this will add more cost (shipping+tax) and probably make DHL earn even more money for their shitty job. I can probably get the tax and shipping cost back but feel reluctant to get into this process. And the Link is working after putting the DRAM back into place.

[edit] first impression

  • It's a little bigger then expected but not a problem for me, I'm just used to my tiny miniETX board.
  • The fan noise is way to loud can't really believe this is less then 27dB ? There are 3 fans in the Link but the PSU fan is causing most of the noise. Although the PSU fan is temperature controlled it makes a lot of noise. I think I'll try to put a fanless PSU + external adapter in from my old system.
  • As expected the Hulu videos wont work outside of the US. I hope I can use my companies US proxy for that.
  • The wireless keyboard seems to disconnect and can only reconnect after removing the batteries ?

[edit] mythtv

The main use for the Link for me would be running a mythtv frontend. My backend is a separate machine.

[edit] enble TV functionality

Neuros disabled the TV functionality on mythtv but it's easy to re-enable it.

  • Add to /usr/share/mythtv/mainmenu.xml
  <button>
     <type>TV_WATCH_TV</type>
     <text>Watch TV</text>
     <text lang="IT">Guarda la TV</text>
     <text lang="ES">Ver la TV</text>
     <text lang="CA">Veure la TV</text>
     <text lang="NL">TV Kijken</text>
     <text lang="FR">Regarder la TV</text>
     <text lang="DE">Fernsehen</text>
     <text lang="DK">Se TV</text>
     <text lang="IS">Horfa á sjónvarp</text>
     <text lang="PT">Ver Televisão</text>
     <text lang="SV">Se på TV</text>
     <text lang="JA">TV放送</text>
     <text lang="FI">Katso Televisiota</text>
     <text lang="ZH_TW">觀看電視</text>
     <text lang="SI">Glej TV</text>
     <text lang="ET">Vaata telerit</text>
     <text lang="NB">Se på TV</text>
     <text lang="CZ">Sledovat TV</text>
     <text lang="RU">Смотреть ТВ</text>
     <text lang="AR">شاهد التلفاز</text>
     <text lang="PL">Oglądanie TV</text>
     <text lang="HE">צפיה בטלויזיה</text>
     <action>TV_WATCH_LIVE</action>
  </button>
   <button>
     <type>MENU_MANAGE_RECORDINGS</type>
     <text>Manage Recordings</text>
     <text lang="IT">Programma Registrazioni</text>
     <text lang="ES">Programar Grabaciones</text>
     <text lang="CA">Programar Gravacions</text>
     <text lang="NL">Opnames Beheren</text>
     <text lang="FR">Gérer les enregistrements</text>
     <text lang="DE">Aufnahmen verwalten</text>
     <text lang="DK">Optag udsendelse</text>
     <text lang="IS">Upptaka útsendinga</text>
     <text lang="PT">Gerir Gravações</text>
     <text lang="SV">Hantera inspelningar</text>
     <text lang="JA">録画予約</text>
     <text lang="FI">Hallitse Nauhoituksia</text>
     <text lang="ZH_TW">管理電視錄影</text>
     <text lang="SI">Posnetki</text>
     <text lang="ET">Salvestamine</text>
     <text lang="NB">Behandle opptak</text>
     <text lang="CZ">Spravovat nahrávky</text>
     <text lang="RU">Управление записями</text>
     <text lang="AR">أدر التسجيلات</text>
     <text lang="PL">Zarządzaj nagraniami</text>
     <text lang="HE">ניהול הקלטות</text>
     <alttext lang="DE">Verwaltung</alttext>
     <alttext lang="SV">Hantera</alttext>
     <alttext lang="ES">Programar</alttext>
     <alttext lang="PT">Programação</alttext>
     <alttext lang="RU">Записи</alttext>
     <alttext lang="AR">التسجيلات</alttext>
     <action>MENU manage_recordings.xml</action>
  </button>
  • uncomment the <type>SETTINGS_TV</type> block in main_settings.xml
  • uncomment <type>TV_SETTINGS_PROGRAM_GUIDE</type> and <type>TV_SETTINGS_PLAYBACK_OSD</type> block in tv_settings.xml
  • uncomment menu items for watching recordings library.xml ?

[edit] frontend not playing recordings

freakshow ! after hours of searching found you have to set the timezone for playing, like :

dpkg-reconfigure tzdata

[edit] pulseaudio

sound stops after playing mythtv recordings for aprox. 6 minutes. pulseaudio dies with :

Soft CPU time limit exhausted, terminating.
Hard CPU time limit exhausted, terminating forcibly.

for now disabled pulseaudio, probably need to configure pulseaudio to use dmix ?

[edit] audio sync

audio seems to lag about 70ms on playing mythtv (mpeg) recordings. but not on mplayer divx movies ?

[edit] bob deinterlacing

I ran into this ATI driver related problem, hopefully we're getting a better, OSS, drivers soon ? http://svn.mythtv.org/trac/ticket/2450#comment:1

[edit] lirc remote mod

I like to use a remote control to operate mythtv so I made a IR receiver mod for the Neuros Link.

[edit] hardware

I'll be using a Hauppauge remote as the main remote, I have a few laying around
My Samsung television remote has some PVR buttons which can be used for basic mythtv controls.
For the receiver I'll dust off my soldering iron and build one descibed here. Really easy to build if you know how to use a soldering iron, I exactly copied the "5x5 hole-matrix board" layout and used an 10-pin header with flatcable to connect it to the mainboard of the Link.
Then drilled a 5mm hole in the front and used some hotglue.

[edit] software

It was harder to get the software working. If you want to understand lirc please use google. The files you need for getting an hauppauge remote working with the serial receiver are :

you need to install setserial

apt-get install setserial

I copied some of these files from my previous mythtv system based on minimyth

[edit] using another remote

If you want to use another remote you better hope you find it here. You can then copy the remote description file to /usr/share/lirc/remotes/ and add a include line in you /etc/lirc/lircd.conf file. Next you have to edit your ~.lircrc file to bind (mythtv) commands the the remotes buttons. You can use multiple remotes together with your wireless keyboard.

[edit] result

The result is very satisfactory. I can use both the remote (wife) and the wireless keyboard. The sensitivity is perfect. I will be tinkering with the lirc configuration to get also other applications working with the remote.

[edit] PSU mod

To reduce noise I removed the complete PSU and replaced it with a picoPSU with external adapter. The picoPSU I used is the 90Watt version that comes with a 12v ATX (aka P4) connector which is needed by the Link's mainboard. The 120Watt version doesn't have this connector but can probably be used with a special extension cable.

I had to extend the 12v ATX (P4) connector, it's too short. I used a very inaccurate kWh meter to measure the power used by the Link. It never exceeded 50Watt and 'normal' use seems to be around 25-35 Watt's so the picoPSU-90 should be sufficient.

[edit] result

The noise is reduced dramatically. Still it makes a bit to much noise for me but I'm used/spoiled to a completely fanless system. The next step will be finding a CPU fan that makes less noise.

[edit] USB Raid Array

This doesn't have to be utterly useless but most likely it is... I don't know exactly why I did this; maybe because 2GB USB sticks are cheap or maybe because I wanted to see it work. I can be used to :

  • make bigger storage in one logical volume
  • make more reliable storage, by using raid5
  • speed up storage

Anyway I decided it would be nice to have a RAID array running on USB sticks on the Link.

I bought 4 USB sticks, ripped of the casing because they were clunky and put them in a 4-port USB hub.

I then used my Ubuntu laptop to create the raid array and put the root filesystem of the latest (1.2 beta3) Link software on it. First I installed the 1.2beta3 on the regularUSB stick and copied it to the array. The regular stick is still needed for booting and I can multiboot into the regular stick as well.
Below there's a description what I did, unfortunatly due to some mistakes I needed to fix I'm not sure if it exact but you should only do this if you know what you're doing or you *will* break your filesystem(s)
you can't do this on the Link you'll need an other linux machine

[edit] install rootfs on raid

First stop HAL auto-mounting USB

/etc/init.d/hal stop

Insert Neuros stick and install 1.2beta3 :

./restore.sh sdb

mount brand new 1.2beta3 :

mkdir source
mount /dev/sdb2 source/ -o ro

remove all previous raid configs from array (sdb,sdc,sdd,sde) only need to d this if you previously screwed up.

mdadm --stop --scan
mdadm --zero-superblock /dev/sdb
mdadm --zero-superblock /dev/sdc
mdadm --zero-superblock /dev/sdd
mdadm --zero-superblock /dev/sde

nuke partition mbr/table this can damage your USB stick and is most likely not needed

dd if=/dev/zero of=/dev/sdb bs=512 count=256
dd if=/dev/zero of=/dev/sdc bs=512 count=256
dd if=/dev/zero of=/dev/sdd bs=512 count=256
dd if=/dev/zero of=/dev/sde bs=512 count=256

create initial empty partition table's

echo w | fdisk /dev/sdb
echo w | fdisk /dev/sdc
echo w | fdisk /dev/sdd
echo w | fdisk /dev/sde

create raid I created level-0 for speed and size

 mdadm --create --verbose /dev/md0 --level=0 --raid-devices=4 /dev/sdb /dev/sdc /dev/sdd /dev/sde

format raid partition

mkfs.ext2 /dev/md0

mount array:

mkdir target
mount /dev/md0 target/

copy original root to array

(cd source;  tar --one-file-system -cpf - .)|(cd target;  tar --one-file-system -xpvf -)

replace target/etc/fstab rootfs mountpoint to /dev/md0. There seems to be a strange bug that prevents using UUID's in both grub and fstab. [1]

unmount target

umount target
umount source

mount original /boot

mount /dev/sda1 source/

edit grub and add entry wit root=dev/md0

unmount source

umount source

[edit] internal raid

The Link has 12! USB ports in total, in the current configuration there are 6 ports at the back and 2 at the front, inside are 4 other ports available. I had two PCI brackets from another mainboard that fit on the internal USB ports.

[edit] raid 5

I changed to raid5 so I might survive a failure one one of the USB disks. This reduces the total storage size of the array. I've tested the failover by removing one of the USB sticks while running; the array continues to run on the remaining 3 sticks. You can add the removed stick by running :

sudo mdadm --add /dev/md0 /dev/sdd

Strange enough the speed increased after switching from raid0 to raid5.

neurostv@neurostv:~$ sudo hdparm -t /dev/md0
/dev/md0:
 Timing buffered disk reads:  104 MB in  3.06 seconds =  33.97 MB/sec

To reassemble to raid on an other system :

mdadm --assemble --scan

[edit] result

The read speed of the array is more than doubled

neurostv@neurostv:~$ sudo hdparm -t /dev/md0
Timing buffered disk reads:   92 MB in  3.01 seconds =  30.62 MB/sec
neurostv@neurostv:~$ sudo hdparm -t /dev/sda
Timing buffered disk reads:   40 MB in  3.01 seconds =  13.27 MB/sec

The boot time of the Link was reduced by 3 seconds compared to booting the original USB stick. The time taken by initialising all the USB sticks take more then the 3 seconds won.

Personal tools