Download H0416E Ethernet Network Interface - User Guide
Transcript
H0416E Ethernet network interface for the H0420 MP3 controller User Guide ITB CompuPhase Tel.: +31 (0)35 6939261 Eerste Industriestraat 19-21 Fax.: +31 (0)35 6939293 1401 VL Bussum, The Netherlands [email protected] www.compuphase.com 2008-02-01 1 Table of Contents Preliminary...........................................................................................................2 Anti-static handling precautions...............................................................................2 Power supply voltage range.......................................................................................2 Legal disclaimer........................................................................................................2 Overview of the H0416E........................................................................................3 Network functionality...............................................................................................3 MP3 audio streams...................................................................................................3 Streaming with progressive HTTP.............................................................................4 Prepare a memory card for audio streaming..............................................................4 Streaming via TFTP...................................................................................................5 Streaming with RTP..................................................................................................5 Installing the H0416E...........................................................................................6 Network connector....................................................................................................7 Connection to the MP3 controller.............................................................................7 Firmware update......................................................................................................7 MAC address............................................................................................................7 Specifications........................................................................................................8 General.....................................................................................................................8 Network....................................................................................................................8 Mechanical...............................................................................................................8 Preliminary Anti-static handling precautions Please observe anti-static handling precautions when handling the device, as it contains components that are sensitive to static discharges. Power supply voltage range The H0416E network interface gets its power supply from the H0420 MP3 controller, via the extension bus. The power supply must be able to supply at least 0.5A (at 5V). Legal disclaimer ITB CompuPhase shall not be liable for the incidental or consequential losses or damage to tangible property, injury or death of a person in connection with the use of this device. Although the examples in this guide have been tested with care, they may contain errors and they are not guaranteed for any particular purpose. 2 Overview of the H0416E The H0416E Ethernet interface is a combination of an extension board (hardware) and extended firmware (software). The extension board plugs onto the H0420 MP3 controller and it runs on the same 5V power supply as the H0420 controller. The board has an RJ-45 connector for CAT-5 twisted-pair cables, for a 10 Mbps physical link. The extended firmware contains a set of network functions that you can use from the script. Network functionality No network functionality is hard-coded in the H0416E Ethernet interface. All network functionality is under control of the PAWN script. In its current release, the network interface supports the TCP/IP protocol suite with the following functionality: ● TCP/IP core protocols (IP version 4), including the ARP, ICMP and UDP protocols. ● Support for dynamic configuration through DHCP, and AutoIP (link-local addresses) in absence of a DHCP server; lease times are handled. ● Handling of multicast IP addresses and group memberships. ● For interoperability with Microsoft Windows hosts, NetBIOS Name Server requests are handled; DNS look-up is also present. ● PING transmit & response handling, for network diagnostics. ● SYSLOG client, for sending informational messages. ● Support for the SNTP (network time) protocol for synchronizing the internal clock (the firmware supports both a time client and a time server). ● Flexible and extensible SNMP agent support. ● TFTP client and server for simple file transport (as well as a simple form of “push” streaming). ● HTTP client, for downloading files; HTTP server (single session) for status or configuration. ● Shoutcast / Icecast client for streaming MP3 audio from the network (“pull” streaming). ● RTP protocol for “push” streaming of MP3 audio from the network. The functions provided to the PAWN script are documented in an addendum to the H0420 reference manual. MP3 audio streams The H0416E/H0420 combination can play MP3 audio that is streamed to the device. There are three protocols for streaming: buffered streaming with a progressive HTTP protocol (e.g. Shoutcast), direct streaming via RTP and direct streaming via TFTP. TFTP streaming and HTTP streaming can be used concurrently. Streaming with progressive HTTP The most common streaming method is a variation on the protocol used by all web browsers (Mozilla Firefox, Internet Explorer, Opera, etc.): the HTTP protocol. For 3 MP3 streaming, ubiquitous stream servers are Shoutcast and Icecast, both of which use the progressive HTTP protocol. Progressive HTTP is more suitable for streaming over a WAN or the Internet because it is buffered. This, in turn, requires that a suitable buffer is prepared on the CompactFlash card. You can optionally also monitor the buffer status to decide when to start playing the stream. Progressive HTTP is a “pull” protocol: the H0420 initiates the connection to a stream server. To use HTTP streaming, first the CompactFlash card must be prepared. The card must contain a file called “stream.swp”' of an appropriate size (512 kiB works well in most cases) and this file must be unfragmented. The H0416E product comes with a utility, PrepareStream, that creates a stream file of an appropriate size that complies with the requirements for progressive HTTP streaming, see the following section. You connect to a stream with the function netstream() or function play(). Both functions start filling the stream buffer and both start playing audio from the stream buffer when it reaches a certain level. Function netstream() allows you to specify how many kilobytes must be in the stream buffer before starting to play the stream (function play() fixes this at 128 kiB). In addition, netstream() can buffer (or re-buffer) a stream while audio is still playing —play() will stop audio output before starting up the stream. A large stream buffer is relatively insensitive to network stalls (due to congestion or bad reception), but it has a high “latency” between the connection to the stream and the audio actually coming out of the speakers. This latency is because the buffer needs to be filled first. There is therefore a trade-off to make between stability and latency in choosing a stream buffer. The number of seconds in the stream buffer depends on the amount of data in the buffer and the bit rate. At the common MP3 bit rate 128 kb/s, the player processes 16,000 bytes per second. Please see the User Manual for details on progressive HTTP streaming, stream buffers sizes and latency, and details on netstream() and play(). Prepare a memory card for audio streaming The H0420 MP3 controller/player supports playing Shoutcast and Icecast audio streams (“web radio”) with the help of the H0415E Ethernet board. Streaming with the Shoutcast / Icecast protocols require a large buffer (typically 512 kiB to 1 MiB in size). The H0420 requires that this buffer is set aside on the CompactFlash memory card. That is, the memory card must be “prepared” for streaming. To prepare a card, insert a CompactFlash card in the card reader of your PC and start the PrepareStream program. This utility can be found on the CD-ROM that comes with the product. 4 In the “drive” list, select the drive for the CompactFlash memory card. If the drive is not present in the list, please verify that the card reader is correctly connected. For the stream buffer size, recommended settings are 512 kiB or 1024 kiB. Then, click on the “Generate” button and wait for PrepareStream to finish. PrepareStream is done when the hourglass cursor disappears. You can now close the PrepareStream program. Streaming via TFTP The simplest way to “stream” and MP3 file to the H0420 is to transfer it to the H0420 with the TFTP protocol and the destination filename “stream:” Note that the trailing colon in the name is required. For streaming over TFTP, all that is required is a TFTP client that allows you to set a specific target filename and a script that accepts incoming TFTP connections. TFTP streaming is practical to send announcements over the network to players that normally play tracks from a CompactFlash card. Since the TFTP streaming method is non-buffered, it is not suitable for networks with a high latency, such as a WAN or the Internet. TFTP streaming, as implemented in the H0420, is a “push” protocol, which means that the remote host initiates the streaming connection. In other words, you tell the H0420 MP3 controller what file to stream in (by starting a TFTP session); the controller does not ask for the stream. In contrast to progressive HTTP streaming, audio data that is streamed over TFTP does not pass through the CompactFlash card. The TFTP server implemented in the H0420 uses the lock-step mechanism in the TFTP protocol to accept the audio data when needed and at the right pace. Streaming with RTP The “Real-time Transport Protocol” (RTP) is designed for quick transfer of multimedia data, where transfer speed is more important than integrity of the data. Occasionally, a packet with audio information may get lost with RTP. On the other hand, latency is much lower than in reliable transport protocols such as HTTP and the protocol overhead is lower too —which also reflects in lower bandwidth requirements. RTP is furthermore a suitable protocol for multicasting, which may significantly reduce bandwidth requirements. 5 There are various devices that can stream audio data onto the network using RTP. A PC application (on Microsoft Windows) that creates an RTP stream from MP3 tracks is “LiveCaster”. RTP is a non-buffered “push” protocol. No buffer needs to be prepared on the CompactFlash card, and no stream needs to be initialize. To play an RTP stream, the script only needs to call the standard function play() with an RTP URL instead of a filename. For example, the following snippet starts playing the stream from the server at “224.82.71.81” on port 56952: play !"rtp://224.82.71.81:56952/" No standard port is defined for the RTP protocol, which is why you usually have to give an explicit port number. If you omit the port, the H0420 MP3 controller uses port 5004 for RTP packets. The controller automatically detects multicast addresses and sends out a multicast group announcement for the service if needed. If the remote address is an unicast address, no group announcement is sent. The H0420 MP3 controller is compatible with the Barix extension of the RTP protocol, where the host has to request the stream from the server first. The Barix RTP variant is often better able to get audio data through a NAT router than the standard RTP protocol, but it may be limited to unicast applications. To use the Barix RTP variant, specify the protocol prefix “brtp://” in the play() command (instead of “rtp://”). Installing the H0416E Network connector The network connector is an RJ-45 connector for CAT-5 network cables. 6 Connection to the MP3 controller Connector P1 allows the H0420 MP3 controller to be stacked on top of the H0416E Ethernet interface, with the RJ-45 connector extending at one edge of the MP3 controller. You can use 10 mm spacers and M3 machine screws to mount to the boards together. The H0416E and the H0420 stacked together Firmware update The TCP/IP stack, the Ethernet driver and the extended script functionality are implemented in special firmware for the H0420 MP3 player/controller. Before the network interface is functional, this firmware must be transferred to the H0420 board. When the H0416E is purchased in combination with a H0420, the appropriate firmware is already present in the H0420. See the separate instructions for updating firmware for transferring new firmware to the H0420. MAC address The MAC address is the hardware address on an Ethernet interface. MAC addresses must be unique on a network —in fact, they should be globally unique. Every H0416E board is distributed with its own unique MAC address. The MAC address is adjustable in the H0420 firmware, so you may choose a different MAC address if there is a compelling reason to do so. Although the MAC address belongs to the Ethernet interface, it is stored in the firmware of the H0420 controller. To change the MAC address, you need to update the firmware and set the new MAC address in the respective field. 7 Specifications General Power input requirements........4.0 V to 5.5 V DC. Current consumption...............0.3 A max. Conformity...............................EN 55022, EN 55024 (European Community); RoHS. Operating conditions................Designed for -40 ºC to +85 ºC. Isolation (RJ-45 connection).....1.5 kV AC Network Ethernet...................................Full duplex IEEE 802.3 compliant 10 Mbps Ethernet controller (10BaseT) with polarity detection/correction. MAC address............................Programmable; a unique MAC address is provided with each unit. Network connector...................RJ-45 socket, category 3 (EIA/TIA 568 A/B). Network status.........................Two LED indicators for network status and activity. Protocols & compliance............ Name Implemented standard(s) IPv4 RFC791, RFC894, RFC1112 ARP RFC826 ICMP RFC792 IGMP RFC1112 TCP RFC793 UDP RFC768 HTTP RFC2616 ICY RFC2616 RTP RFC3550 SNMP RFC1157 SNTP RFC1361, RFC1769 NBNS RFC1002 (partial) DNS RFC1035 DHCP RFC2131 AutoIP RFC3927 TFTP RFC1350, RFC2348, RFC2349 SYSLOG RFC3164 Mechanical Dimensions..............................119 × 50 × 13 mm (length × width × height). Weight......................................0.040 kg. Mounting.................................2 holes Ø 3.1 mm spaced (centre to centre) at 90 mm horizontally, aligned to match with two mounting holes of the H0420; 2 mm of clearance is needed below the PCB. 8