Difference between revisions of "HP Z556 Media Center"

From MythTV Official Wiki
Jump to: navigation, search
(updating filename)
 
(13 intermediate revisions by 3 users not shown)
Line 1: Line 1:
 
This HOWTO is a step-by-step guide to getting the HP Z556 Media Center setup for use with Ubuntu 7.04 & MythTV.
 
This HOWTO is a step-by-step guide to getting the HP Z556 Media Center setup for use with Ubuntu 7.04 & MythTV.
  
 +
[[Image:Hpz556.jpg|frame|HP Z556]]
 
== Hardware Overview ==
 
== Hardware Overview ==
  
=== Disable NFS file attribute caching ===
+
This HOWTO aims to collect the multitude of tips regarding optimizing performance of your system for use with MythTV.
 +
 
 +
== Installing the OS ==
 +
 
 +
=== Download / Burn / Boot ===
 +
 
 +
This walk through is based on Ubuntu 7.04 "Fiesty Fawn"
 +
 
 +
Download from here: http://www.ubuntu.com/news/Ubuntu704Beta
 +
 
 +
 
 +
'''Good Guide to follow for install of system & mythtv'''
 +
 
 +
https://help.ubuntu.com/community/MythTV_Feisty_Backend_Frontend_Desktop
 +
 
 +
=== Installation Tips ===
 +
   
 +
For you file system choose XFS file system
 +
 
 +
Setting up 2.6.20 with the ck patchset (optional this really helps with performance)
 +
 
 +
    http://ubuntuforums.org/showthread.php?p=2511000
 +
 
 +
After you boot into your desktop open a console and type
 +
 
 +
    restricted-manager
 +
 
 +
and check the nvidia display drivers let it go through its process and then restart
 +
 
 +
== Getting the hardware to work ==
 +
 
 +
=== PCI Bus output ===
 +
 
 +
This is a lspci of the system
 +
 
 +
    01:00.0 VGA compatible controller: nVidia Corporation NV43 [GeForce 6600] (rev a2)
 +
    02:00.0 Ethernet controller: Marvell Technology Group Ltd. 88E8053 PCI-E Gigabit Ethernet Controller (rev 19)
 +
    03:01.0 FireWire (IEEE 1394): VIA Technologies, Inc. IEEE 1394 Host Controller (rev 80)
 +
    03:03.0 Multimedia video controller: Conexant CX23880/1/2/3 PCI Video and Audio Decoder (rev 05)
 +
    03:03.2 Multimedia controller: Conexant CX23880/1/2/3 PCI Video and Audio Decoder [MPEG Port] (rev 05)
 +
    03:04.0 PCI bridge: Hint Corp HB6 Universal PCI-PCI bridge (non-transparent mode) (rev 11)
 +
    03:05.0 Ethernet controller: Atheros Communications, Inc. AR5006X 802.11abg NIC (rev 01)
 +
    04:08.0 Multimedia video controller: Internext Compression Inc iTVC16 (CX23416) MPEG-2 Encoder (rev 01)
 +
    04:09.0 Multimedia video controller: Internext Compression Inc iTVC16 (CX23416) MPEG-2 Encoder (rev 01)
 +
 
 +
All the hardware works with the default install of Ubuntu 7.04 except for the HD Tuner which needs a little tweak to
 +
get it to work. After hours of reading I find out HP modified this card to fit in the case and for some reason it doesn't auto detect the card and tuner.
 +
 
 +
 
 +
=== PVR-500 (IVTV Drivers) ===
 +
 
 +
I am going to go out on a limb and do a walk through with the HG repo's of LinuxTV just for the fact that IVTV is integrated directly into this branch and plays well with all the other devices. IVTV integrated separately tends to break DVB cards supported by LinuxTV. This does require some compiling but it was very easy to do and aloud me to install a 2nd & 3rd USB HDTV tuner the (HVR-950). That way if you decide to add any USB v4l devices chances are they will work.
 +
 
 +
The Old way: https://help.ubuntu.com/community/Install_IVTV_Feisty
 +
 
 +
 
 +
 
 +
My way from HG repos
 +
 
 +
    sudo su
 +
    apt-get install mercurial linux-headers-$(uname -r) linux-source build-essential
 +
 
 +
IVTV Firmware
 +
    wget http://dl.ivtvdriver.org/ivtv/firmware/ivtv-firmware.tar.gz
 +
    tar xvzf ivtv-firmware.tar.gz
 +
 
 +
Optional Extract Firmware for v4 V4L devices like (HVR-950)
 +
    cd /lib/firmware
 +
    wget http://konstantin.filtschew.de/v4l-firmware/firmware_v4.tgz
 +
    tar xvzf firmware_v4.tgz
 +
 
 +
Compile the latest V4L-dvb tree with IVTV drivers
 +
    cd /usr/src/
 +
    hg clone http://mcentral.de/hg/~mrec/v4l-dvb-experimental/
 +
    cd v4l-dvb-experimental
 +
    make
 +
    make install
 +
   
 +
'''Reboot'''
 +
 
 +
 
 +
 
 +
 
 +
==== Testing NTSC Tuner Cards ====
 +
 
 +
in a console type
 +
 
 +
    dmesg | grep ivtv | grep 'video' | grep 'MPEG'
 +
 
 +
which should output something similar to:
 +
 
 +
    [  23.520549] ivtv0: Registered device video1 for encoder MPEG (4 MB)
 +
    [  30.070392] ivtv1: Registered device video2 for encoder MPEG (4 MB)
 +
 
 +
this means your 1st NTSC tuner card is set at /dev/video1 and your 2nd at /dev/video2
 +
*this will be needed for mythtv down the road so write it down.
 +
 
 +
=== ATI HDTV Wonder (CX23880/1/2/3 Chipset) ===
 +
   
 +
we need to extract the nxt2004 firmware
 +
 
 +
in a console type:
 +
   
 +
    sudo apt-get install linux-doc-2.6.20
 +
   
 +
    cd /usr/share/doc/linux-doc-2.6.20/Documentation/dvb
 +
   
 +
    sudo gzip -d get_dvb_firmware.gz
 +
   
 +
    sudo chmod +x get_dvb_firmware
 +
   
 +
    sudo ./get_dvb_firmware nxt2004
 +
   
 +
    sudo cp dvb-fe-nxt2004.fw /lib/firmware/
 +
 
 +
    sudo gedit /etc/modprobe.d/options
 +
 
 +
Add the following to the file:
 +
 
 +
    options cx88xx card=34 tuner=68
 +
 
 +
After a reboot this card should be working and "dmesg | grep cx" should output something like this:
 +
 
 +
    [  16.852541] ivtv0: Autodetected Hauppauge card (cx23416 based)
 +
    [  17.048053] cx2388x cx88-mpeg Driver Manager version 0.0.6 loaded
 +
    [  17.062557] cx2388x v4l2 driver version 0.0.6 loaded
 +
    [  17.563559] ivtv0: loaded v4l-cx2341x-enc.fw firmware (262144 bytes)
 +
    [  17.911550] cx25840 1-0044: cx25843-23 found @ 0x88 (ivtv i2c driver #0)
 +
    [  22.975399] cx25840 1-0044: loaded v4l-cx25840.fw firmware (16382 bytes)
 +
    [  23.556039] ivtv1: Autodetected Hauppauge card (cx23416 based)
 +
    [  24.219067] ivtv1: loaded v4l-cx2341x-enc.fw firmware (262144 bytes)
 +
    [  24.485478] cx25840 2-0044: cx25843-23 found @ 0x88 (ivtv i2c driver #1)
 +
    [  29.459922] cx25840 2-0044: loaded v4l-cx25840.fw firmware (16382 bytes)
 +
    [  30.103888] CORE cx88[0]: subsystem: 1002:a103, board: ATI HDTV Wonder [card=34,insmod option]
 +
    [  30.228420] tuner 3-0061: chip found @ 0xc2 (cx88[0])
 +
    [  30.284210] cx88[0]/2: cx2388x 8802 Driver Manager
 +
    [  30.284244] cx88[0]/2: found at 0000:03:03.2, rev: 5, irq: 18, latency: 64, mmio: 0xce000000
 +
    [  30.284351] cx88[0]/0: found at 0000:03:03.0, rev: 5, irq: 18, latency: 64, mmio: 0xcd000000
 +
    [  30.290183] cx88[0]/0: registered device video3 [v4l2]
 +
    [  30.290215] cx88[0]/0: registered device vbi2
 +
    [  30.332260] cx2388x dvb driver version 0.0.6 loaded
 +
    [  30.332266] cx8802_register_driver() ->registering driver type=dvb access=shared
 +
    [  30.332272] CORE cx88[0]: subsystem: 1002:a103, board: ATI HDTV Wonder [card=34]
 +
    [  30.332276] cx88[0]/2: cx2388x based dvb card
 +
    [  30.358398] DVB: registering new adapter (cx88[0])
 +
 
 +
==== Testing ASTC Tuner Card (ATI HDTV Wonder) ====
 +
 
 +
in a console type
 +
 
 +
    ls /dev/dvb/
 +
 +
you should see something similar to:
 +
 
 +
    adapter0
 +
 +
if you see this all is well for now and we can test all the card functionality later once myth is setup
 +
 
 +
 
 +
=== Wireless Card ===
 +
 
 +
    03:05.0 Ethernet controller: Atheros Communications, Inc. AR5006X 802.11abg NIC (rev 01)
 +
 
 +
This uses the Madwifi Drivers which are installed by default with Ubuntu 7.04
 +
 
 +
If you need to compile them see : http://www.madwifi.org
 +
 
 +
'''this is an output of what modules are loaded: lsmod | grep ath'''
 +
 
 +
    ath_rate_sample        14080  1
 +
    ath_pci                97312  0
 +
    wlan                  204484  4 wlan_scan_sta,ath_rate_sample,ath_pci
 +
    ath_hal              192592  3 ath_rate_sample,ath_pci
 +
 
 +
=== Memory card reader ===
 +
 
 +
Works with stock ubuntu kernel
 +
 
 +
=== Remote Control ===
 +
 
 +
Uses the MCE2 USB modules wonderful how-to here: http://www.mythtv.org/wiki/index.php/Ubuntu_lirc_install
 +
 
 +
'''this is an output of what modules are loaded: lsmod | grep mce'''
 +
    lirc_mceusb2          14084  0
 +
    lirc_dev              15988  2 lirc_i2c,lirc_mceusb2
 +
    usbcore              134280  11 em2880_dvb,em28xx_audio,usb_storage,em28xx,xpad,libusual,lirc_mceusb2,usbhid,ehci_hcd,uhci_hcd
 +
 
 +
 
 +
=== VFD LCD Front Panel ===
 +
 
 +
'''Front Panel Buttons'''
 +
 
 +
The buttons on the front can be mapped with xmodmap
 +
 
 +
    sudo cat /proc/bus/input/devices
 +
 
 +
To find what event interface your VFD shows up on. This is an example of where mine is:
 +
 
 +
    I: Bus=0003 Vendor=1460 Product=0024 Version=0100
 +
    N: Name="HP HP VFD Front Panel Board"
 +
    P: Phys=usb-0000:00:1d.7-5.2/input0
 +
    S: Sysfs=/class/input/input3
 +
    H: Handlers=kbd event3
 +
    B: EV=3
 +
    B: KEY=8000 68 4000 800000 0 0 0
 +
 
 +
'''LCD Display'''
 +
 
 +
Unknown, I am playing with some custom stuff with LCDd i will post any findings
 +
 
  
This can be added to /etc/fstab, for example:
 
  
    /dev/hdd1  /video    xfs    defaults,allocsize=512m 0 0
 
  
  
00:00.0 Host bridge: Intel Corporation 82915G/P/GV/GL/PL/910GL Memory Controller Hub (rev 0e)
 
00:01.0 PCI bridge: Intel Corporation 82915G/P/GV/GL/PL/910GL PCI Express Root Port (rev 0e)
 
00:1b.0 Audio device: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) High Definition Audio Controller (rev 03)
 
00:1c.0 PCI bridge: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) PCI Express Port 1 (rev 03)
 
00:1d.0 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #1 (rev 03)
 
00:1d.1 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #2 (rev 03)
 
00:1d.2 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #3 (rev 03)
 
00:1d.3 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #4 (rev 03)
 
00:1d.7 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB2 EHCI Controller (rev 03)
 
00:1e.0 PCI bridge: Intel Corporation 82801 PCI Bridge (rev d3)
 
00:1f.0 ISA bridge: Intel Corporation 82801FB/FR (ICH6/ICH6R) LPC Interface Bridge (rev 03)
 
00:1f.1 IDE interface: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) IDE Controller (rev 03)
 
00:1f.2 IDE interface: Intel Corporation 82801FB/FW (ICH6/ICH6W) SATA Controller (rev 03)
 
00:1f.3 SMBus: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) SMBus Controller (rev 03)
 
01:00.0 VGA compatible controller: nVidia Corporation NV43 [GeForce 6600] (rev a2)
 
02:00.0 Ethernet controller: Marvell Technology Group Ltd. 88E8053 PCI-E Gigabit Ethernet Controller (rev 19)
 
03:01.0 FireWire (IEEE 1394): VIA Technologies, Inc. IEEE 1394 Host Controller (rev 80)
 
03:03.0 Multimedia video controller: Conexant CX23880/1/2/3 PCI Video and Audio Decoder (rev 05)
 
03:03.2 Multimedia controller: Conexant CX23880/1/2/3 PCI Video and Audio Decoder [MPEG Port] (rev 05)
 
03:04.0 PCI bridge: Hint Corp HB6 Universal PCI-PCI bridge (non-transparent mode) (rev 11)
 
03:05.0 Ethernet controller: Atheros Communications, Inc. AR5006X 802.11abg NIC (rev 01)
 
04:08.0 Multimedia video controller: Internext Compression Inc iTVC16 (CX23416) MPEG-2 Encoder (rev 01)
 
04:09.0 Multimedia video controller: Internext Compression Inc iTVC16 (CX23416) MPEG-2 Encoder (rev 01)
 
  
 
==External Links==
 
==External Links==
*[http://www.ati.com/products/hdtvwonder/index.html Manufacturer's website]
+
*[http://h10025.www1.hp.com/ewfrf/wc/document?docname=c00517814&lc=en&cc=us&dlc=en&product=1110864&lang=en Manufacturer's website]
  
 
*[https://help.ubuntu.com/community/MythTV_Edgy_hardware setup instructions in Ubuntu 6.10]
 
*[https://help.ubuntu.com/community/MythTV_Edgy_hardware setup instructions in Ubuntu 6.10]
Line 41: Line 226:
 
*[https://help.ubuntu.com/community/MythTV mythtv guide for Ubuntu]
 
*[https://help.ubuntu.com/community/MythTV mythtv guide for Ubuntu]
  
[[Category:HDTV capture cards]]
+
*[http://linuxslate.com/Review_z555.html  linuxslate.com] Detailed description of Linux on the HP z555 Media Center PC (Fedora, Outdated, but soon to be updated)
[[Category:Analog TV capture cards]]
+
 
 +
*Questions email : undertoe at chemlab dot org
 +
 
 +
[[Category:HOWTO]]

Latest revision as of 03:05, 10 May 2011

This HOWTO is a step-by-step guide to getting the HP Z556 Media Center setup for use with Ubuntu 7.04 & MythTV.

HP Z556

Hardware Overview

This HOWTO aims to collect the multitude of tips regarding optimizing performance of your system for use with MythTV.

Installing the OS

Download / Burn / Boot

This walk through is based on Ubuntu 7.04 "Fiesty Fawn"

Download from here: http://www.ubuntu.com/news/Ubuntu704Beta


Good Guide to follow for install of system & mythtv

https://help.ubuntu.com/community/MythTV_Feisty_Backend_Frontend_Desktop

Installation Tips

For you file system choose XFS file system

Setting up 2.6.20 with the ck patchset (optional this really helps with performance)

   http://ubuntuforums.org/showthread.php?p=2511000

After you boot into your desktop open a console and type

   restricted-manager

and check the nvidia display drivers let it go through its process and then restart

Getting the hardware to work

PCI Bus output

This is a lspci of the system

   01:00.0 VGA compatible controller: nVidia Corporation NV43 [GeForce 6600] (rev a2)
   02:00.0 Ethernet controller: Marvell Technology Group Ltd. 88E8053 PCI-E Gigabit Ethernet Controller (rev 19)
   03:01.0 FireWire (IEEE 1394): VIA Technologies, Inc. IEEE 1394 Host Controller (rev 80)
   03:03.0 Multimedia video controller: Conexant CX23880/1/2/3 PCI Video and Audio Decoder (rev 05)
   03:03.2 Multimedia controller: Conexant CX23880/1/2/3 PCI Video and Audio Decoder [MPEG Port] (rev 05)
   03:04.0 PCI bridge: Hint Corp HB6 Universal PCI-PCI bridge (non-transparent mode) (rev 11)
   03:05.0 Ethernet controller: Atheros Communications, Inc. AR5006X 802.11abg NIC (rev 01)
   04:08.0 Multimedia video controller: Internext Compression Inc iTVC16 (CX23416) MPEG-2 Encoder (rev 01)
   04:09.0 Multimedia video controller: Internext Compression Inc iTVC16 (CX23416) MPEG-2 Encoder (rev 01)

All the hardware works with the default install of Ubuntu 7.04 except for the HD Tuner which needs a little tweak to get it to work. After hours of reading I find out HP modified this card to fit in the case and for some reason it doesn't auto detect the card and tuner.


PVR-500 (IVTV Drivers)

I am going to go out on a limb and do a walk through with the HG repo's of LinuxTV just for the fact that IVTV is integrated directly into this branch and plays well with all the other devices. IVTV integrated separately tends to break DVB cards supported by LinuxTV. This does require some compiling but it was very easy to do and aloud me to install a 2nd & 3rd USB HDTV tuner the (HVR-950). That way if you decide to add any USB v4l devices chances are they will work.

The Old way: https://help.ubuntu.com/community/Install_IVTV_Feisty


My way from HG repos

   sudo su
   apt-get install mercurial linux-headers-$(uname -r) linux-source build-essential

IVTV Firmware

   wget http://dl.ivtvdriver.org/ivtv/firmware/ivtv-firmware.tar.gz
   tar xvzf ivtv-firmware.tar.gz

Optional Extract Firmware for v4 V4L devices like (HVR-950)

   cd /lib/firmware
   wget http://konstantin.filtschew.de/v4l-firmware/firmware_v4.tgz
   tar xvzf firmware_v4.tgz

Compile the latest V4L-dvb tree with IVTV drivers

   cd /usr/src/
   hg clone http://mcentral.de/hg/~mrec/v4l-dvb-experimental/
   cd v4l-dvb-experimental
   make
   make install
   

Reboot



Testing NTSC Tuner Cards

in a console type

   dmesg | grep ivtv | grep 'video' | grep 'MPEG'

which should output something similar to:

   [   23.520549] ivtv0: Registered device video1 for encoder MPEG (4 MB)
   [   30.070392] ivtv1: Registered device video2 for encoder MPEG (4 MB)

this means your 1st NTSC tuner card is set at /dev/video1 and your 2nd at /dev/video2

  • this will be needed for mythtv down the road so write it down.

ATI HDTV Wonder (CX23880/1/2/3 Chipset)

we need to extract the nxt2004 firmware

in a console type:

   sudo apt-get install linux-doc-2.6.20
   
   cd /usr/share/doc/linux-doc-2.6.20/Documentation/dvb
   
   sudo gzip -d get_dvb_firmware.gz
   
   sudo chmod +x get_dvb_firmware
   
   sudo ./get_dvb_firmware nxt2004
   
   sudo cp dvb-fe-nxt2004.fw /lib/firmware/
   sudo gedit /etc/modprobe.d/options

Add the following to the file:

   options cx88xx card=34 tuner=68

After a reboot this card should be working and "dmesg | grep cx" should output something like this:

   [   16.852541] ivtv0: Autodetected Hauppauge card (cx23416 based)
   [   17.048053] cx2388x cx88-mpeg Driver Manager version 0.0.6 loaded
   [   17.062557] cx2388x v4l2 driver version 0.0.6 loaded
   [   17.563559] ivtv0: loaded v4l-cx2341x-enc.fw firmware (262144 bytes)
   [   17.911550] cx25840 1-0044: cx25843-23 found @ 0x88 (ivtv i2c driver #0)
   [   22.975399] cx25840 1-0044: loaded v4l-cx25840.fw firmware (16382 bytes)
   [   23.556039] ivtv1: Autodetected Hauppauge card (cx23416 based)
   [   24.219067] ivtv1: loaded v4l-cx2341x-enc.fw firmware (262144 bytes)
   [   24.485478] cx25840 2-0044: cx25843-23 found @ 0x88 (ivtv i2c driver #1)
   [   29.459922] cx25840 2-0044: loaded v4l-cx25840.fw firmware (16382 bytes)
   [   30.103888] CORE cx88[0]: subsystem: 1002:a103, board: ATI HDTV Wonder [card=34,insmod option]
   [   30.228420] tuner 3-0061: chip found @ 0xc2 (cx88[0])
   [   30.284210] cx88[0]/2: cx2388x 8802 Driver Manager
   [   30.284244] cx88[0]/2: found at 0000:03:03.2, rev: 5, irq: 18, latency: 64, mmio: 0xce000000
   [   30.284351] cx88[0]/0: found at 0000:03:03.0, rev: 5, irq: 18, latency: 64, mmio: 0xcd000000
   [   30.290183] cx88[0]/0: registered device video3 [v4l2]
   [   30.290215] cx88[0]/0: registered device vbi2
   [   30.332260] cx2388x dvb driver version 0.0.6 loaded
   [   30.332266] cx8802_register_driver() ->registering driver type=dvb access=shared
   [   30.332272] CORE cx88[0]: subsystem: 1002:a103, board: ATI HDTV Wonder [card=34]
   [   30.332276] cx88[0]/2: cx2388x based dvb card
   [   30.358398] DVB: registering new adapter (cx88[0])

Testing ASTC Tuner Card (ATI HDTV Wonder)

in a console type

   ls /dev/dvb/

you should see something similar to:

   adapter0

if you see this all is well for now and we can test all the card functionality later once myth is setup


Wireless Card

   03:05.0 Ethernet controller: Atheros Communications, Inc. AR5006X 802.11abg NIC (rev 01)

This uses the Madwifi Drivers which are installed by default with Ubuntu 7.04

If you need to compile them see : http://www.madwifi.org

this is an output of what modules are loaded: lsmod | grep ath

   ath_rate_sample        14080  1 
   ath_pci                97312  0 
   wlan                  204484  4 wlan_scan_sta,ath_rate_sample,ath_pci
   ath_hal               192592  3 ath_rate_sample,ath_pci

Memory card reader

Works with stock ubuntu kernel

Remote Control

Uses the MCE2 USB modules wonderful how-to here: http://www.mythtv.org/wiki/index.php/Ubuntu_lirc_install

this is an output of what modules are loaded: lsmod | grep mce

   lirc_mceusb2           14084  0 
   lirc_dev               15988  2 lirc_i2c,lirc_mceusb2
   usbcore               134280  11 em2880_dvb,em28xx_audio,usb_storage,em28xx,xpad,libusual,lirc_mceusb2,usbhid,ehci_hcd,uhci_hcd


VFD LCD Front Panel

Front Panel Buttons

The buttons on the front can be mapped with xmodmap

   sudo cat /proc/bus/input/devices

To find what event interface your VFD shows up on. This is an example of where mine is:

   I: Bus=0003 Vendor=1460 Product=0024 Version=0100
   N: Name="HP HP VFD Front Panel Board"
   P: Phys=usb-0000:00:1d.7-5.2/input0
   S: Sysfs=/class/input/input3
   H: Handlers=kbd event3 
   B: EV=3
   B: KEY=8000 68 4000 800000 0 0 0

LCD Display

Unknown, I am playing with some custom stuff with LCDd i will post any findings




External Links

  • linuxslate.com Detailed description of Linux on the HP z555 Media Center PC (Fedora, Outdated, but soon to be updated)
  • Questions email : undertoe at chemlab dot org