1 |
1275 |
phoenix |
Copyright (C) 1999, 2000 Bruce Tenison
|
2 |
|
|
Portions Copyright (C) 1999, 2000 David Nelson
|
3 |
|
|
Thanks to David Nelson for guidance and the usage of the scanner.txt
|
4 |
|
|
and scanner.c files to model our driver and this informative file.
|
5 |
|
|
|
6 |
|
|
Mar. 2, 2000
|
7 |
|
|
|
8 |
|
|
CHANGES
|
9 |
|
|
|
10 |
|
|
- Initial Revision
|
11 |
|
|
|
12 |
|
|
|
13 |
|
|
OVERVIEW
|
14 |
|
|
|
15 |
|
|
This README will address issues regarding how to configure the kernel
|
16 |
|
|
to access a RIO 500 mp3 player.
|
17 |
|
|
Before I explain how to use this to access the Rio500 please be warned:
|
18 |
|
|
|
19 |
|
|
W A R N I N G:
|
20 |
|
|
--------------
|
21 |
|
|
|
22 |
|
|
Please note that this software is still under development. The authors
|
23 |
|
|
are in no way responsible for any damage that may occur, no matter how
|
24 |
|
|
inconsequential.
|
25 |
|
|
|
26 |
|
|
It seems that the Rio has a problem when sending .mp3 with low batteries.
|
27 |
|
|
I suggest when the batteries are low and want to transfer stuff that you
|
28 |
|
|
replace it with a fresh one. In my case, what happened is I lost two 16kb
|
29 |
|
|
blocks (they are no longer usable to store information to it). But I don't
|
30 |
|
|
know if thats normal or not. It could simply be a problem with the flash
|
31 |
|
|
memory.
|
32 |
|
|
|
33 |
|
|
In an extreme case, I left my Rio playing overnight and the batteries wore
|
34 |
|
|
down to nothing and appear to have corrupted the flash memory. My RIO
|
35 |
|
|
needed to be replaced as a result. Diamond tech support is aware of the
|
36 |
|
|
problem. Do NOT allow your batteries to wear down to nothing before
|
37 |
|
|
changing them. It appears RIO 500 firmware does not handle low battery
|
38 |
|
|
power well at all.
|
39 |
|
|
|
40 |
|
|
On systems with OHCI controllers, the kernel OHCI code appears to have
|
41 |
|
|
power on problems with some chipsets. If you are having problems
|
42 |
|
|
connecting to your RIO 500, try turning it on first and then plugging it
|
43 |
|
|
into the USB cable.
|
44 |
|
|
|
45 |
|
|
Contact information:
|
46 |
|
|
--------------------
|
47 |
|
|
|
48 |
|
|
The main page for the project is hosted at sourceforge.net in the following
|
49 |
|
|
address: http://rio500.sourceforge.net You can also go to the sourceforge
|
50 |
|
|
project page at: http://sourceforge.net/project/?group_id=1944 There is
|
51 |
|
|
also a mailing list: rio500-users@lists.sourceforge.net
|
52 |
|
|
|
53 |
|
|
Authors:
|
54 |
|
|
-------
|
55 |
|
|
|
56 |
|
|
Most of the code was written by Cesar Miquel . Keith
|
57 |
|
|
Clayton is incharge of the PPC port and making sure
|
58 |
|
|
things work there. Bruce Tenison is adding support
|
59 |
|
|
for .fon files and also does testing. The program will mostly sure be
|
60 |
|
|
re-written and Pete Ikusz along with the rest will re-design it. I would
|
61 |
|
|
also like to thank Tri Nguyen who provided use
|
62 |
|
|
with some important information regarding the communication with the Rio.
|
63 |
|
|
|
64 |
|
|
ADDITIONAL INFORMATION and Userspace tools
|
65 |
|
|
|
66 |
|
|
http://rio500.sourceforge.net/
|
67 |
|
|
|
68 |
|
|
|
69 |
|
|
REQUIREMENTS
|
70 |
|
|
|
71 |
|
|
A host with a USB port. Ideally, either a UHCI (Intel) or OHCI
|
72 |
|
|
(Compaq and others) hardware port should work.
|
73 |
|
|
|
74 |
|
|
A Linux development kernel (2.3.x) with USB support enabled or a
|
75 |
|
|
backported version to linux-2.2.x. See http://www.linux-usb.org for
|
76 |
|
|
more information on accomplishing this.
|
77 |
|
|
|
78 |
|
|
A Linux kernel with RIO 500 support enabled.
|
79 |
|
|
|
80 |
|
|
'lspci' which is only needed to determine the type of USB hardware
|
81 |
|
|
available in your machine.
|
82 |
|
|
|
83 |
|
|
CONFIGURATION
|
84 |
|
|
|
85 |
|
|
Using `lspci -v`, determine the type of USB hardware available.
|
86 |
|
|
|
87 |
|
|
If you see something like:
|
88 |
|
|
|
89 |
|
|
USB Controller: ......
|
90 |
|
|
Flags: .....
|
91 |
|
|
I/O ports at ....
|
92 |
|
|
|
93 |
|
|
Then you have a UHCI based controller.
|
94 |
|
|
|
95 |
|
|
If you see something like:
|
96 |
|
|
|
97 |
|
|
USB Controller: .....
|
98 |
|
|
Flags: ....
|
99 |
|
|
Memory at .....
|
100 |
|
|
|
101 |
|
|
Then you have a OHCI based controller.
|
102 |
|
|
|
103 |
|
|
Using `make menuconfig` or your preferred method for configuring the
|
104 |
|
|
kernel, select 'Support for USB', 'OHCI/UHCI' depending on your
|
105 |
|
|
hardware (determined from the steps above), 'USB Diamond Rio500 support', and
|
106 |
|
|
'Preliminary USB device filesystem'. Compile and install the modules
|
107 |
|
|
(you may need to execute `depmod -a` to update the module
|
108 |
|
|
dependencies).
|
109 |
|
|
|
110 |
|
|
Add a device for the USB rio500:
|
111 |
|
|
`mknod /dev/usb/rio500 c 180 64`
|
112 |
|
|
|
113 |
|
|
Set appropriate permissions for /dev/usb/rio500 (don't forget about
|
114 |
|
|
group and world permissions). Both read and write permissions are
|
115 |
|
|
required for proper operation.
|
116 |
|
|
|
117 |
|
|
Load the appropriate modules (if compiled as modules):
|
118 |
|
|
|
119 |
|
|
OHCI:
|
120 |
|
|
modprobe usbcore
|
121 |
|
|
modprobe usb-ohci
|
122 |
|
|
modprobe rio500
|
123 |
|
|
|
124 |
|
|
UHCI:
|
125 |
|
|
modprobe usbcore
|
126 |
|
|
modprobe usb-uhci (or uhci)
|
127 |
|
|
modprobe rio500
|
128 |
|
|
|
129 |
|
|
That's it. The Rio500 Utils at: http://rio500.sourceforge.net should
|
130 |
|
|
be able to access the rio500.
|
131 |
|
|
|
132 |
|
|
BUGS
|
133 |
|
|
|
134 |
|
|
If you encounter any problems feel free to drop me an email.
|
135 |
|
|
|
136 |
|
|
Bruce Tenison
|
137 |
|
|
btenison@dibbs.net
|
138 |
|
|
|