113 lines
4.4 KiB
Text
113 lines
4.4 KiB
Text
|
|
1. Should I use CONFIG_MODVERSIONS when compiling a Linux kernel?
|
|
|
|
Short answer: No. Long answer: MODVERSIONS allows you to safely
|
|
use a module on multiple kernel versions. However, making comedi
|
|
work with CONFIG_MODVERSIONS is a real pain. Sometimes it works,
|
|
sometimes it doesn't.
|
|
|
|
|
|
2. I get the error message:
|
|
|
|
Makefile:14: /usr/src/linux/.config: No such file or directory
|
|
make: *** No rule to make target `/usr/src/linux/.config'. Stop.
|
|
|
|
|
|
It means you don't have the file /usr/src/linux/.config. This file
|
|
contains all the configuration information about your linux kernel,
|
|
which comedi needs in order to compile correctly. Some distributions
|
|
don't contain this file, so you will need to create your own, by
|
|
compiling your own kernel. This file is automatically created
|
|
when you run 'make config', the first step in compiling a kernel.
|
|
|
|
|
|
3. When compiling programs that use libcomedi, I get error message:
|
|
|
|
/usr/lib/libcomedi.a(range.o): In function `comedi_from_phys':
|
|
range.o(.text+0x169): undefined reference to `floor'
|
|
|
|
|
|
This error messsage indicates that the linker cannot resolve the
|
|
reference to floor(), which is a function in the math library
|
|
that is used in the function comedi_from_phys(). This only
|
|
happens when you link statically. Add '-lm' to your linking
|
|
command.
|
|
|
|
|
|
4. Someone on the mailing list told me to look in the kernel log.
|
|
How do I do that?
|
|
|
|
Kernel log messages are continuously written to the file
|
|
/var/log/messages. In addition, a shortcut to get recent log
|
|
messages is the 'dmesg' command, which will print the last 4-16 kB
|
|
(depending on the kernel) of kernel log messages.
|
|
|
|
|
|
5. I think I found a bug: I get Oops messages in the kernel log.
|
|
|
|
Oops messages always indicate a bug. If you are not using the
|
|
latest version of Comedi, please upgrade and try again, since
|
|
these types of bugs are usually quickly fixed. Look at the file
|
|
BUG_REPORTING in the Linux kernel source, follow the instructions,
|
|
and send the information to David Schleef <ds@schleef.org>.
|
|
|
|
|
|
6. Could you please add a search engine to the mailing list archive?
|
|
|
|
No. Please use generic web search engines such as Google, where you
|
|
can add the search term "site:stm.lbl.gov" to limit the search to
|
|
the site where the Comedi archives are located.
|
|
|
|
|
|
7. I apply a signal to channel 0, but I see the signal on other
|
|
channels.
|
|
|
|
Typically, this is an electrical problem that can come from multiple
|
|
sources. First, any inputs that are not specifically driven or
|
|
grounded will tend to float around, measuring random electrical
|
|
signals in their environment -- the strongest of which are usually
|
|
nearby channels, 50/60 Hz line noise, or the A/D converter itself.
|
|
|
|
|
|
8. An FFT of measured data shows lots of sharp peaks.
|
|
|
|
Yep. Not much that can be done about that. Well, actually, there is.
|
|
Peaks near multiples of 50 or 60 Hz are electromagnetic coupling from
|
|
the power mains. Almost all the time, this indicates a ground loop
|
|
in the measurement path. Peaks that are multiples of 100 or 120 Hz
|
|
on photodetectors are because of the room lights. Peaks in the 100-1000
|
|
Hz range, with harmonics, are sometimes stray fields from electric
|
|
motors. Strong, sharp peaks in the 1-100 kHz range are typically due
|
|
to the horizontal refresh of CRT displays (like your computer monitor).
|
|
Less strong peaks can be due to electronics in a computer or other
|
|
device.
|
|
|
|
However, a sharp peak in an FFT does not always indicate a problem.
|
|
Remember that you always have noise, and that some of it will be
|
|
periodic. You just have to make sure that the particular type of
|
|
noise that you have does not affect your analysis.
|
|
|
|
|
|
9. Ok, I'm getting good results. What should I look at to get great
|
|
results?
|
|
|
|
- Make sure that all unused inputs are grounded. Electrically floating
|
|
wires act as antennas, picking up stray electrical signals, and often
|
|
strongly coupling them into the signals you actually want to measure.
|
|
|
|
- Get a flat panel monitor. CRT displays emit strong magnetic fields
|
|
oscillating at the horizontal refresh rate. It is most easily
|
|
observable in a Fourier transform of an input signal.
|
|
|
|
- Calibrate your board.
|
|
|
|
- Read up on ground loops. Make sure that all your electrical
|
|
shielding has exactly one path to a common ground.
|
|
|
|
- If you use a laptop for data acquisition, make sure it is grounded
|
|
properly. Laptops usually are not grounded, and you generally
|
|
don't want your data acquisition cable to also be your grounding
|
|
wire.
|
|
|
|
-
|
|
|