#emc-devel | Logs for 2006-12-24

[01:03:41] <alex_joni> I made a new rtai package with the modified rtai_smi in it
[01:03:55] <alex_joni> but I'd like at least some testing before distributing it
[01:04:16] <alex_joni> the package is here: http://dsplabs.cs.utt.ro/~juve/tempdebs/
[01:04:57] <alex_joni> but the rtai_smi.ko included is a bit different (there is an insmod param called: smiDisableMask which needs to hold the bitmask for the desired disables)
[01:05:03] <alex_joni> for disable ALL it should be:
[01:05:46] <alex_joni> insmod rtai_smi smiDisableMask=1
[01:06:15] <jepler> 0000:00:1f.0 ISA bridge: Intel Corporation 82801DBM (ICH4-M) LPC Interface Bridge (rev 01)
[01:06:27] <jepler> any idea if this is a machine where the module would function?
[01:06:42] <alex_joni> sounds like PCI_DEVICE_ID_INTEL_82801DB_12
[01:06:47] <alex_joni> can you check lspci -n ?
[01:07:56] <alex_joni> it should be in linux/pci_ids.h
[01:08:10] <jepler> yep I'm looking at that file now
[01:08:20] <jepler> pci_ids.h:#define PCI_DEVICE_ID_INTEL_82801DB_60x24c6
[01:08:46] <alex_joni> hmm DB_6 is not in the smi-module.c
[01:09:10] <alex_joni> only DB_0 and DB_12
[01:09:17] <jepler> pci_ids.h:#define PCI_DEVICE_ID_INTEL_82801BA_60x2448
[01:09:56] <jepler> I'm not sure which out of all these devices I should check
[01:10:05] <alex_joni> what does lspci -n say?
[01:10:09] <alex_joni> the number is in there
[01:10:31] <jepler> about which device?
[01:10:47] <jepler> http://pastebin.ca/290470
[01:11:03] <alex_joni> 1f.0
[01:11:18] <alex_joni> 8086:24cc
[01:11:20] <jepler> 0000:00:1f.0 0601: 8086:24cc (rev 01)
[01:11:25] <alex_joni> yeah, that one
[01:11:34] <alex_joni> now grep pci_ids.h for 24cc
[01:11:40] <jepler> #define PCI_DEVICE_ID_INTEL_82801DB_12 0x24cc
[01:11:53] <skunkworks> nice
[01:11:54] <alex_joni> ok, that's the one in smi-module.c too
[01:12:02] <skunkworks> jepler: what is this?
[01:12:03] <alex_joni> so rtai_smi should work on that
[01:12:07] <jepler> skunkworks: that's my laptop
[01:12:19] <skunkworks> do you have latency issues with it?
[01:12:25] <alex_joni> he's using sim :D
[01:12:26] <jepler> alex_joni: back when I had breezy my computer would pass the latency test for hours, but fail a few times a day
[01:12:30] <jepler> without any smi stuff
[01:12:39] <alex_joni> yeah, with this it might be better
[01:12:43] <alex_joni> "might"
[01:12:46] <jepler> yeah right now I don't have realtime because the ipw2200 wouldn't work without ACPI_PCI_mumble
[01:12:51] <jepler> and i like to talk to you guys
[01:13:08] <skunkworks> :)
[01:13:10] <alex_joni> "might" as this is highly advanced magic
[01:13:29] <alex_joni> or should I say wizardry
[01:13:41] <skunkworks> I have been running 3d chps over and over. No issues so far
[01:13:56] <alex_joni> skunkworks: yeah, you're a lucky sob
[01:13:57] <alex_joni> :P
[01:14:08] <skunkworks> I have never had the unexpected delay if I have the module loaded.
[01:14:14] <skunkworks> (so far)
[01:14:20] <alex_joni> does it go away when you close emc?
[01:14:28] <skunkworks> have not looked
[01:14:41] <skunkworks> the rtai_smi module?
[01:14:42] <alex_joni> it probably should
[01:14:44] <alex_joni> yeah
[01:15:38] <skunkworks> it does
[01:16:09] <alex_joni> great
[01:17:09] <alex_joni> jepler: custom kernel? :D
[01:17:15] <alex_joni> but I guess it's too much trouble
[01:17:36] <jepler> alex_joni: I did that on breezy but sim is so much better
[01:18:12] <alex_joni> yeah, I agree
[01:18:37] <alex_joni> although I recently saw evidence that some people think RT kernels with ACPI are sometimes better
[01:18:41] <alex_joni> :D
[01:19:03] <alex_joni> ACPI on, APM & power management off
[01:21:40] <jepler> I think there are at least some parts of ACPI that are good to turn on -- the one that I need, for instance, just influences how the kernel finds which interrupt corresponds to which hardware...
[01:21:52] <alex_joni> yeah. probably
[01:22:00] <alex_joni> but it's a PITA to do it properly
[01:22:15] <alex_joni> and I would like battery monitoring on my laptop
[01:22:23] <alex_joni> so I guess I'll take the non-RT approach too
[01:22:44] <jepler> yeah I turned on stuff without regard to whether it affected the reliability of realtime
[01:22:52] <jepler> CPU frequency scaling for instance
[01:23:04] <alex_joni> heh.. yeah
[01:23:30] <alex_joni> well.. off to bed now
[01:23:32] <alex_joni> getting late
[01:23:36] <alex_joni> good night all
[17:22:30] <jepler> this "PDM" waveform looks like a big blur on my 'scope and it makes my speakers buzz
[17:22:52] <cradek> what are you doing?
[17:23:13] <jepler> did you follow the discussion yesterday about "interleaved PWM"?
[17:23:56] <jepler> I implemented a PDM/"interleaved PWM" mode for pluto, although I'm not sure whether it's actually useful
[17:24:04] <cradek> no I really didn't
[17:24:13] <cradek> hmm, cool
[17:24:37] <jepler> normally, the pwm output is: out = a > b where a is the set level and b is the counter
[17:24:52] <jepler> "interleaved pwm" uses bit_reversed_b instead, giving pdm-like characteristics
[17:26:05] <jepler> the Mesa implementation apparently reverses only the high-order bits, while I reversed all of them
[17:26:05] <cradek> ok I saw something about that - I didn't study it enough to understand it
[17:26:46] <cradek> it's too fast to see on your scope? isn't it 100MHz?
[17:27:43] <jepler> I did turn on "full bw out" and dial to very fast scan rate -- but the waveform is still ugly. it's sure not a square wave
[17:27:48] <jepler> but I'm not sure this probe I bought is 100MHz
[17:28:19] <cradek> it probably won't look very square...
[17:28:50] <cradek> you mean the "full bw out" button is out right?
[17:29:43] <jepler> yes
[17:31:14] <cradek> don't you have one good original probe?
[17:31:33] <jepler> actually the probe says 200MHz
[17:31:37] <jepler> maybe it's not adjusted right
[17:31:53] <jepler> I changed it to not reverse the low 4 bits and I get a square wave but with a LOT of ringing
[17:35:14] <jepler> the ringing appears whether or not I use PDM mode so it's not exclusively due to the high frequency of changes on that output
[17:35:44] <cradek> probe switch is on 10x?
[17:35:51] <jepler> yes
[17:38:40] <jepler> I just moved the GND clip and the signal is good now
[17:44:24] <skunkworks> do you get more levels then?
[17:45:44] <jepler> no it looks like a square wave
[17:47:06] <jepler> OK, and now the "pwm+direction" mode is working too
[18:11:01] <ve7it> ve7it is now known as LawrenceG
[18:21:25] <jmkasunich> jepler: what were you expecting PDM to look like?
[18:21:39] <jmkasunich> on a scope it will be very ugly
[18:22:13] <jmkasunich> but if you are trying to filter it to an analog signal, it will take less filtering than a regular PWM signal
[18:22:46] <jmkasunich> do you have the ability to run one channel of PWM and one of PDM (I assume all pluto outputs use the same master counter)
[18:23:20] <jmkasunich> try putting the PWM on one scope channel, and the PDM on the other, trigger on the PWM
[18:23:34] <jmkasunich> adjust the scope so one or two PWM periods are stable on the screen
[18:24:01] <jepler> jmkasunich: unfortunately I have to switch all channels to PDM together
[18:24:02] <jmkasunich> then the PDM should be stable too, but it has a much more high frequency content
[18:24:14] <jmkasunich> bummer
[18:24:15] <jepler> jmkasunich: but the problem was that I didn't have GND
[18:24:24] <jmkasunich> oh, that helps
[18:24:26] <jepler> after that the waveform was much squarer, not so much ringing
[18:26:55] <jmkasunich> btw, how did you go about learning VHDL? online info, bought a book, trial and error?
[18:42:04] <jmkasunich> * jmkasunich wanders off...
[18:46:51] <Lerneaen_Hydra> PDM?
[19:04:14] <jepler> jmkasunich: I worked from a few examples and some introductory articles. the pluto firmware is written in verilog hdl, not vhdl, by the way
[19:04:23] <jepler> (they're two very different languages)
[19:05:00] <jepler> Lerneaen_Hydra: PDM is "pulse density modulation". It produces shorter pulses than PWM does, which can be better in some cases
[19:05:15] <jepler> (e.g., to produce an analog output by putting an RC filter on the digital output pin)
[19:05:56] <Lerneaen_Hydra> oh, so lots of pulses could be 1, no pulses 0, and stuff inbetween would be, well, stuff inbetween 1 and 0
[19:06:22] <jepler> right
[19:07:06] <jepler> so to get a 2.5V analog output, you output 5V 50% of the time and 0V 50% of the time
[19:07:07] <Lerneaen_Hydra> so does that give you twice the data throughput?
[19:08:38] <jepler> what you do is change the digital output at a very high frequency (say, 40MHz) to create an average analog level signal at a much lower frequency (say, 20kHz)
[19:09:07] <Lerneaen_Hydra> I can't seem to get why it's better than pwm
[19:09:24] <jepler> in PWM, each 50uS cycle has all its "1"s at the start and all its "0"s at the end. In PDM, the 1s and 0s are scattered through the whole time
[19:10:37] <jepler> if you are switching an inductive load, PWM is better because it has fewer switch-ons and switch-offs
[19:10:54] <jepler> if you're doing something else, like generating an analog voltage, PDM will stay closer to the desired output voltage than PWM
[19:11:04] <Lerneaen_Hydra> oh, for a certain RC
[19:12:33] <jepler> in the case of pluto, the PDM mode would be useful for someone building an interface to a +-10V analog servo amplifier -- with an RC network you easily get a good 0-3.3V analog signal, which you can convert to the 0-10V range with some op-amps
[19:12:49] <jepler> er, -10V to 10V range
[19:13:33] <Lerneaen_Hydra> nice
[19:13:46] <Lerneaen_Hydra> +-10 is the "standard" voltage range?
[19:13:50] <jepler> apparently so
[19:14:02] <Lerneaen_Hydra> strange voltage level
[19:14:22] <jepler> I've never had such a servo drive but people often refer to this voltage range
[19:14:43] <Lerneaen_Hydra> ok
[19:15:00] <Lerneaen_Hydra> you'd think the manufacturers would go for +-5,12,24 or so
[19:15:58] <jepler> I bet that with a nominal +-12V supply and non-rail-to-rail op-amps, +-10V was a good range choice
[19:16:12] <Lerneaen_Hydra> hmm, that's true
[19:16:33] <Lerneaen_Hydra> then again, +-15 and +-12-13 is more common than that :p
[20:17:05] <jmkasunich> you guys....
[20:17:13] <jmkasunich> never heard of +/-10V signal ranges?
[20:18:10] <jmkasunich> +/-15V power supplies thru generic op-amps gives "about" +/-12V swings, if you want some margin, and a nice round number, you use +/- 10V
[20:18:44] <jmkasunich> somewhat more modern op amps can reliably give +/-10V swings from +/-12V supplies
[20:25:54] <jepler> my guess wasn't far wrong, then
[20:26:03] <jmkasunich> nope
[20:26:12] <jmkasunich> what I found amusing is that you had to guess
[20:26:43] <jmkasunich> (some things I tend to take for granted - like "everybody knows that +/-10V is the standard for analog signal"
[20:26:43] <jepler> I didn't take up electronics (as opposed to computers) until 2003 or so
[20:26:50] <jepler> not long in geological time
[20:26:56] <jmkasunich> nope
[20:27:20] <jmkasunich> and to be honest, I should say "+/-10V _was_ the standard"
[20:27:45] <jmkasunich> lots of stuff is going to 0-5V or worse
[20:30:43] <jepler> is there some advantage to an analog-input servo amp, vs a PWM input one?
[20:31:38] <jmkasunich> mostly is a partitioning thing
[20:32:02] <jmkasunich> analog input means the PWM frequency and other details of the power switching are decided by the amp designer
[20:32:19] <jmkasunich> the analog signal is also better for sending some distance
[20:32:29] <jepler> I had thought of the first (leaves more up to the amp designer)
[20:33:06] <jmkasunich> most good amps have overcurrent protection and such built in, thats harder to do (but not impossible) with PWM input
[20:36:49] <jmkasunich> "back in the day" all of the circuitry in the amp was analog, so the analog input was the simplest way to do things
[20:37:06] <jmkasunich> now I bet many amps send the analog input to an ADC....
[21:03:14] <alex_joni> hi all
[21:03:19] <alex_joni> merry christmas
[21:16:14] <jmkasunich> hi alex_joni
[21:16:22] <jmkasunich> is it christmas there?
[21:20:15] <jepler> it must be nearing midnight
[21:20:49] <jepler> TZ=Europe/Bucharest date
[21:20:49] <jepler> Sun Dec 24 23:20:44 EET 2006
[21:41:08] <jepler> where's the appropriate place for an example .hal file? I have a script I use to "test" the pluto and I'd like it to be in CVS.
[21:41:28] <jepler> http://emergent.unpy.net/index.cgi-files/sandbox/pluto.hal
[21:42:05] <jepler> I use 'halrun -I pluto.hal' and it makes the LED glow
[21:42:48] <jepler> there's another "halrun"nable thing in src/ already: ./src/hal/classicladder/projects_examples/example.hal
[21:50:21] <alex_joni> jepler: how about a config dir for the pluto?
[21:50:27] <alex_joni> and having the hal there?
[21:51:04] <jepler> there is nothing for pluto in configs/ yet
[21:51:13] <jepler> perhaps when chris finishes he'll put his lathe configuration there
[22:33:25] <alex_joni> jepler: now it's after midnight
[22:34:45] <jepler> hooray -- merry christmas
[22:34:56] <alex_joni> yeah.. same to you
[22:35:22] <alex_joni> although I got my gift a couple of days early :D
[22:36:00] <jepler> is it comfortable when full?
[22:36:08] <alex_joni> yeah, just scary big :)
[22:36:25] <alex_joni> I was somehow imagining it smaller
[22:36:39] <alex_joni> I have no problems with it when going on a trip, but it's not good for everyday use
[22:37:31] <cradek> what's your gift alex?
[22:37:54] <alex_joni> a backpack for my photogear and laptop
[22:38:10] <alex_joni> http://www.lowepro.com/Products/Backpacks/notebook_camera/CompuTrekker_Plus_AW.aspx
[22:38:18] <cradek> ah cool
[22:38:47] <alex_joni> 13W x 5.3D x 18.9H in.
[22:39:30] <SWPadnos> hey folks. got a couple of questions on group buy administrivia
[22:39:46] <jmkasunich> merry christmas alex (and anyone for whom 12/25 has arrived
[22:40:04] <alex_joni> same for you guys (I'll be safe asleep later :)
[22:40:07] <jmkasunich> SWPadnos: shoot
[22:40:12] <SWPadnos> first, I'm in favor of insurance on the inbound package, especially because it belongs to multiple people
[22:40:19] <jmkasunich> yeah
[22:40:29] <alex_joni> * alex_joni goes along with the rest
[22:40:29] <jepler> agreed unless the cost is unreasonable
[22:40:34] <SWPadnos> that actually nearly doubles the shipping cost though - $40-$50 total (roughly $4 each)
[22:40:38] <jmkasunich> wow
[22:40:44] <SWPadnos> $4 each probably isn't too unreasonable
[22:40:52] <alex_joni> not at all
[22:40:54] <jmkasunich> I was figuring it would be $1 or $2 each
[22:41:19] <jmkasunich> total value is $4K (approx)?
[22:41:20] <SWPadnos> outbound is in the $9-$11 range for everyone
[22:41:23] <SWPadnos> yes
[22:41:27] <SWPadnos> 50 cents/$100
[22:41:39] <cradek> I don't care about +-$10, whatever you guys want is fine
[22:41:45] <SWPadnos> so $20 or so for insurance (the 40-50 was total shipping + insurance)
[22:41:55] <jmkasunich> I can live with that
[22:42:27] <SWPadnos> ok - I think it's a very good thing - nobody would want to be the one who doesn't get their presents due to a forklift error ;)
[22:42:35] <jmkasunich> right
[22:43:17] <SWPadnos> on outbound, you can have the choice, but since it's $1.50 (minimum) or a max of $2.50, I figure everyone will probably want it anyway
[22:43:39] <SWPadnos> ($2.50 since nobody but me has >$500 worth of stuff)
[22:43:52] <SWPadnos> oh, and skunkworks ;)
[22:44:25] <jmk-st> I'm close to that I think
[22:44:34] <SWPadnos> next question: Shall I just round to hte next whole dollar amount?
[22:44:44] <SWPadnos> yes, but still under for insurance purposes
[22:45:04] <alex_joni> SWPadnos: fine by me
[22:45:48] <jmk-st> sure
[22:47:43] <SWPadnos> ok
[23:19:25] <alex_joni> jmk-st: still around?
[23:35:11] <alex_joni> jmkasunich: still around?