User Tools

Site Tools


doc:appunti:hardware:lacie_d2_network

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
doc:appunti:hardware:lacie_d2_network [2010/06/19 09:05] niccolodoc:appunti:hardware:lacie_d2_network [2014/03/01 06:29] (current) – [Compiling the Linux kernel] niccolo
Line 666: Line 666:
  
 Here it is the binary and the source code of **{{:doc:appunti:hardware:lacie:eeprom_write_byte.tar.gz|eeprom_write_byte}}**. Here it is the binary and the source code of **{{:doc:appunti:hardware:lacie:eeprom_write_byte.tar.gz|eeprom_write_byte}}**.
 +
 +===== The EEPROM =====
 +
 +With a proper kernel (2.6.32 with the above patch, or 2.6.37) the EEPROM content is exposed for read and write via the pseudo file **''/sys/bus/i2c/devices/0-0050/eeprom''**. This is what I know about its content:
 +
 +^ Offset  ^ Length  ^ Content  ^
 +|       0 |       6 | Ethernet MAC address.  |
 +|       6 |       1 | Power flag.\\ If set to **''LACIE_POWER_OFF''** (0), U-Boot will stop the boot process and wait for Wake-on-LAN.\\ If set to **''LACIE_POWER_ON''** (1), U-Boot will reboot.  |
  
 ===== Disassembling the LaCie d2 Network ===== ===== Disassembling the LaCie d2 Network =====
Line 815: Line 823:
  
 ===== Compiling the Linux kernel ===== ===== Compiling the Linux kernel =====
 +
 +You can download the custom kernel I compiled (vanilla with patches for LEDs) here: [[http://www.rigacci.org/pub/Linux/kernel-lacie/]]
  
 After several tries, I compiled a **2.6.32 kernel** suitable to boot the LaCie from an **ext3 Debian Lenny partition**. No initrd is required to boot (this is fortunate FIXME, because I don't know how to install initrd with U-Boot). Here it is the **[[http://www.rigacci.org/pub/Linux/kernel-lacie/config-2.6.32-lacie.0.10|config file]]**. After several tries, I compiled a **2.6.32 kernel** suitable to boot the LaCie from an **ext3 Debian Lenny partition**. No initrd is required to boot (this is fortunate FIXME, because I don't know how to install initrd with U-Boot). Here it is the **[[http://www.rigacci.org/pub/Linux/kernel-lacie/config-2.6.32-lacie.0.10|config file]]**.
Line 1009: Line 1019:
  
 Once **''init(8)''** will start, other devices will be created by **''udev(7)''**. Once **''init(8)''** will start, other devices will be created by **''udev(7)''**.
 +
 +===== USB Sound =====
 +
 +When I attached an **USB audio stick**, this is what the ''lsusb'' command says:
 +
 +<code>
 +Bus 001 Device 002: ID 0c76:1607 JMTek, LLC.
 +</code>
 +
 +Then the kernel loads the proper drivers:
 +
 +<code>
 +usb 1-1: new full speed USB device using orion-ehci and address 2
 +usb 1-1: New USB device found, idVendor=0c76, idProduct=1607
 +usb 1-1: New USB device strings: Mfr=0, Product=1, SerialNumber=0
 +usb 1-1: Product: USB Headphone Set
 +usb 1-1: configuration #1 chosen from 1 choice
 +usbcore: registered new interface driver hiddev
 +input: USB Headphone Set as /devices/platform/orion-ehci.0/usb1/1-1/1-1:1.3/input/input1
 +generic-usb 0003:0C76:1607.0001: input,hidraw0: USB HID v1.00 Device [USB Headphone Set] on usb-orion-ehci.0-1/input3
 +usbcore: registered new interface driver usbhid
 +usbhid: v2.6:USB HID core driver
 +usbcore: registered new interface driver snd-usb-audio
 +</code>
 +
 +Playing some mp3 tracks with **''mpg321''** via Alsa resulted in annoying **audio glitches**; strange enough the glitches tend to disappear if the LaCie is under heavy load. Fortunately there is a workaround: load the Alsa OSS compatibility layer and use OSS output instead:
 +
 +<code>
 +modprobe snd_pcm_oss
 +mpg321 -o oss track1.mp3
 +</code>
 +
 +Playing mp3 takes about 16% of CPU, 2% of memory and system load average remains near to zero.
 +
 +==== USB Audio volume problem ====
 +
 +On Linux kernel 2.6.32 (providing Alsa sound drivers 1.0.21) **the following USB audio dongle works as expected**, including the volume control:
 +
 +<code>
 +Bus 001 Device 003: ID 0c76:1607 JMTek, LLC. audio controller
 +</code>
 +
 +There is a problem with some **other USB chips**, where **the volume control does not work**. When the volume control is set to the lower position, the audio is muted, but at any other position the audio is set to its maximum value. This is a chip wich has the problem:
 +
 +<code>
 +Bus 001 Device 002: ID 1130:f211 Tenx Technology, Inc. TP6911 Audio Headset
 +</code>
 +
 +Here there is a [[https://bugs.launchpad.net/ubuntu/+source/alsa-driver/+bug/559939|bug report #559939]] reported to the Ubuntu distribution.
  
 ===== Other NAS comparison ===== ===== Other NAS comparison =====
Line 1021: Line 1080:
 | LaCie Network Space 1 TB  | 400 Mhz Marvell 88F6082 Feroceon  |     16/64 Mb |       ? |   1 |  No     ?   | | LaCie Network Space 1 TB  | 400 Mhz Marvell 88F6082 Feroceon  |     16/64 Mb |       ? |   1 |  No     ?   |
  
 +===== Backporting minidlna =====
 +
 +We run **Debian 6 Squeeze** on our LaCie d2 Network and we want it to be a [[wp>Digital_Living_Network_Alliance|DLNA]] server. We choosed [[https://packages.debian.org/search?keywords=minidlna|minidlna]] because it is targeted to embedded systems. The package exists for **Debian 7 Wheezy**, so we have to backport it.
 +
 +Into a **[[..:prog:qemu_arm|Qemu armel virtual machine]]** we installed the packages required for Debian developing and build dependencies, we need also debhelper from backports.
 +
 +
 +<code>
 +apt-get install build-essential dh-make debhelper dpatch
 +apt-get install libavcodec-dev libavformat-dev libavutil-dev libexif-dev \
 +    libflac-dev libid3tag0-dev libogg-dev libsqlite3-dev libvorbis-dev libjpeg-dev
 +wget http://ftp.at.debian.org/debian-backports//pool/main/d/debhelper/debhelper_9.20120909~bpo60+1_all.deb
 +dpkg -i debhelper_9.20120909~bpo60+1_all.deb
 +</code>
 +
 +Then we downloaded the minidlna sources and compiled the sources:
 +
 +<code>
 +mkdir /usr/local/src/minidlna
 +cd /usr/local/src/minidlna
 +wget http://ftp.de.debian.org/debian/pool/main/m/minidlna/minidlna_1.0.24+dfsg-1.dsc
 +wget http://ftp.de.debian.org/debian/pool/main/m/minidlna/minidlna_1.0.24+dfsg.orig.tar.gz
 +wget http://ftp.de.debian.org/debian/pool/main/m/minidlna/minidlna_1.0.24+dfsg-1.debian.tar.gz
 +dpkg-source -x minidlna_1.0.24+dfsg-1.dsc
 +cd minidlna-1.0.24+dfsg
 +dpkg-buildpackage -rfakeroot
 +cd ..
 +</code>
 +
 +The resulting **{{.:lacie:minidlna_1.0.24_dfsg-1_armel.deb|minidlna_1.0.24+dfsg-1_armel.deb}}** package installed fine into the LaCie, just make a symlink ''/run -> /var/run''.
  
 +Configuration file is **''/etc/minidlna.conf''**, default share directory is **''/var/lib/minidlna''**, used ports are **8200/TCP** (http and media transfer), **3307/UDP** and **1900/UDP**.
 ===== Web Links ===== ===== Web Links =====
  
Line 1027: Line 1117:
   * [[http://wiki.nas-portal.org/index.php/LaCie|Lacie @ NAS-Portal]]   * [[http://wiki.nas-portal.org/index.php/LaCie|Lacie @ NAS-Portal]]
   * [[http://www.lacie-nas.org/doku.php|LaCie NAS]] another Wiki, with U-Boot NetConsole   * [[http://www.lacie-nas.org/doku.php|LaCie NAS]] another Wiki, with U-Boot NetConsole
 +  * [[http://lacie-nas.org/doku.php?id=nastools|Project nas-tools]]
   * [[http://www.steppen-wolf.eu/blog/2009/11/18/lacie-2big-network-hack-telnet-openssh-ntpd-cups-and-more/|LaCie 2Big Network hack: telnet, openssh, ntpd, cups and more..]] in Italian.   * [[http://www.steppen-wolf.eu/blog/2009/11/18/lacie-2big-network-hack-telnet-openssh-ntpd-cups-and-more/|LaCie 2Big Network hack: telnet, openssh, ntpd, cups and more..]] in Italian.
   * [[http://luon.net/~admar/journal/LaCieEthernetDiskMini.html|LaCie Ethernet Disk mini]]. Interesting part on how to install a Debian into a chroot.   * [[http://luon.net/~admar/journal/LaCieEthernetDiskMini.html|LaCie Ethernet Disk mini]]. Interesting part on how to install a Debian into a chroot.
doc/appunti/hardware/lacie_d2_network.txt · Last modified: 2014/03/01 06:29 by niccolo