Back
    [01:20:03] <SWPadnos_> SWPadnos_ is now known as SWPadnos 
    
[02:11:40] <SWPadnos> is it possible to have cvsweb list the file size on the drectory info page? 
    
[02:12:34] <jepler> I'm not sure if it's easy to compute it for an arbitrary revision 
    
[02:13:43] <jepler> I'm not sure if it's easy to compute it for an arbitrary revision 
    
[02:13:48] <jepler> just finding the latest log message is easy by comparison 
    
[02:16:35] <SWPadnos_> SWPadnos_ is now known as SWPadnos 
    
[02:23:52] <SWPadnos> ah, ok 
    
[02:24:30] <SWPadnos> right - is is the original version that's retained, plus diffs, or is it the current version plus diffs? 
    
[02:24:34] <SWPadnos> is it ... ? 
    
[02:24:42] <jepler> the current version plus diffs, I think 
    
[02:24:53] <SWPadnos> oh, then ls (file) would do it :) 
    
[02:24:53] <jepler> but I'm not sure if "current" means HEAD or if it means "the last checked-in version" 
    
[02:24:57] <SWPadnos> right 
    
[02:25:06] <jepler> well, no "working file" is retained 
    
[02:25:10] <SWPadnos> for "version-X" it's a harder problem 
    
[02:25:26] <jepler> but every revision but one is stored as "the other version, with these edits applied" 
    
[02:25:42] <SWPadnos> right 
    
[02:25:56] <SWPadnos> ok - nevermind 
    
[02:26:24] <SWPadnos> I thought of it because I wasn't positive the .pin file was a large binary file until I actually downloaded it :) 
    
[02:26:58] <jmkasunich> I take it you don't have a local CVS checkout 
    
[02:27:10] <SWPadnos> not on this laptop (WIN2k) 
    
[02:27:32] <SWPadnos> I'm not sure I ever figured out how to make TortoiseCVS actually use ssh 
    
[02:27:38] <SWPadnos> if it even works 
    
[02:28:14] <SWPadnos> I may install Edgy on the other hard disk, and hope the wifi drivers work 
    
[19:45:48] <Lerneaen_Hydra_> Lerneaen_Hydra_ is now known as Lerneaen_Hydra 
    
[20:39:29] <Jymmmmmm> Jymmmmmm is now known as Jymmmmmmmmmm 
    
[20:40:29] <Jymmmmmmmmmm> Jymmmmmmmmmm is now known as Jymmm 
    
[20:42:10] <Jymmm> Jymmm is now known as Jymm 
    
[20:42:09] <Jymm> Jymm is now known as Jymmm 
    
[21:20:00] <jepler> this is something I'd rather not try to bite off for 2.1 
    
[21:20:27] <alex_joni> jepler: I agree getting this right might take a while 
    
[21:20:30] <jepler> we need to branch soon, and then get back to experimental stuff in HEAD 
    
[21:20:43] <alex_joni> sounds like a good idea to me 
    
[21:20:44] <cradek> jmk is right that we've already done some of the work for the various override overrides 
    
[21:21:25] <jepler> I guess I don't know exactly what you came up with 
    
[21:21:49] <cradek> a bitmap of override overrides that goes along with each motion 
    
[21:22:07] <jepler> ah 
    
[21:22:10] <cradek> then TP just makes the bitmap available to the rest of motion during the move 
    
[21:23:06] <jepler> I don't know how many outputs people will want -- the space required might be prohibitive. 
    
[21:23:16] <cradek> yeah especially if DACs are involved. 
    
[21:23:17] <alex_joni> jepler: I don't think more than a bunch is needed 
    
[21:23:41] <alex_joni> if they need then I bet they can trigger them using CL 
    
[21:24:22] <jepler> 1000 TP entries, 100 outputs at 4 bytes each, is only 400k 
    
[21:24:24] <jepler> that's "nothing" 
    
[21:24:44] <jepler> and 100 is way way overkill 
    
[21:24:58] <alex_joni> yeah, I was thinking more like 10 
    
[21:25:10] <alex_joni> * alex_joni looks how many he added last time 
    
[21:25:52] <jepler> and all realtime has to do is put those values on the corresponding HAL pins 
    
[21:26:08] <jepler> 40-400 bytes per 10ms is also "nothing" 
    
[21:26:32] <jepler> but still -- I don't want to move the goalposts.  I want to branch 2.1. 
    
[21:26:40] <alex_joni> seems I came up with 4 dio's last time 
    
[21:27:47] <alex_joni> hmm.. something is borked here 
    
[21:27:58] <alex_joni> juve@ubuntu:~/emc2/src$ ../scripts/emc 
    
[21:27:58] <alex_joni> EMC2 - pre-2.1 CVS HEAD 
    
[21:27:58] <alex_joni> ../scripts/emc: line 197: @WISH@: command not found 
    
[21:28:01] <jepler> it wouldn't be hard to make them a compile-time constant, easy to increase if we want to 
    
[21:28:17] <alex_joni> it's already a compile-time constant 
    
[21:28:17] <jepler> alex_joni: either I screwed something up, or you didn't run 'make' after you updated 
    
[21:28:30] <jepler> @WISH@ is a recent addition of mine 
    
[21:28:39] <alex_joni> EMCMOT_MAX_DIO in mot_priv.h 
    
[21:28:56] <jepler> good 
    
[21:28:57] <alex_joni> jepler: yeah, I've seen the commit message.. but I ran make again, ran config.status again, ran configure again 
    
[21:29:39] <alex_joni> my configure.in doesn't show anything related to WISH 
    
[21:29:48] <jepler> I must have missed a related check-in then? 
    
[21:30:18] <alex_joni> sounds like configure.in and configure are foobared 
    
[21:30:30] <alex_joni> maybe you commited from scripts/ ? 
    
[21:31:21] <jepler> http://cvs.linuxcnc.org/cgi-bin/cvsweb.cgi/emc2/src/configure.in.diff?r1=1.112;r2=1.113;f=h 
    [21:31:33] <jepler> hi ray 
    
[21:31:39] <rayh> question about ubuntu6.06 
    
[21:31:59] <rayh> How do I see the locations of parports, both mobo and add in cards? 
    
[21:32:08] <rayh> Hi jeff 
    
[21:32:08] <alex_joni> lspci ? 
    
[21:32:24] <rayh> I tried that but did not see any 378 
    
[21:32:27] <alex_joni> there's a page in the wiki regarding addon parport cards 
    
[21:32:41] <alex_joni> cat /proc/ioports ? 
    
[21:32:45] <jepler> You can see the ones that the linux kernel detects by temporarily loading the kernel's parport driver 
    
[21:32:51] <jepler> something like:  modprobe -i parport_pc 
    
[21:33:07] <jepler> we turn off the kernel parport driver specifically so it doesn't do anything with parallel ports. 
    
[21:33:46] <rayh> Okay. 
    
[21:34:22] <jepler> when I did that, my kernel logged these messages: 
    
[21:34:24] <jepler> [696650.421700] parport: PnPBIOS parport detected. 
    
[21:34:22] <jepler> [696650.421756] parport0: PC-style at 0x378, irq 7 [PCSPP,TRISTATE] 
    
[21:34:22] <jepler> [696650.514701] lp0: using parport0 (interrupt-driven). 
    
[21:35:18] <rayh> Okay I've got that module loaded. Okay. 
    
[21:35:27] <rayh> I see what it did with dmesg 
    
[21:35:52] <alex_joni> rayh: addon cards should show up in lspci -v 
    
[21:35:53] <rayh> Will parport_pc find all of em. 
    
[21:36:05] <rayh> Okay. 
    
[21:36:09] <rayh> Hey thanks guys. 
    
[21:36:11] <alex_joni> no, usually the onboard I think 
    
[21:36:28] <rayh> I didn't see any parports with lspci 
    
[21:36:30] <jepler> after you've looked at those messages, you won't be able to load emc's hal_parport until the linux parport module is removed 
    
[21:36:40] <jepler> on my system I had to issue: sudo rmmod lp parport_pc 
    
[21:36:40] <rayh> either before or after the modprobe 
    
[21:36:46] <alex_joni> http://wiki.linuxcnc.org/cgi-bin/emcinfo.pl?NetMos 
    [21:36:50] <rayh> okay. 
    
[21:37:11] <jepler> also, if your system printed this, then you probably need to use emc's "probe_parport": parport: PnPBIOS parport detected. 
    
[21:37:31] <jepler> (item 4 on 
http://wiki.linuxcnc.org/cgi-bin/emcinfo.pl?TroubleShooting) 
    [21:37:49] <rayh> How do I use "probe_parport" 
    
[21:37:58] <rayh> is that a script 
    
[21:38:00] <jepler> Some users have reported that in EMC 2.0.1, EMC appears to start, but no signals ever appear on the parallel port (the motors don't turn). 
    
[21:38:03] <jepler> To fix this problem, upgrade to EMC 2.0.3 or newer. Then, add the command 
    
[21:38:05] <jepler>  loadrt probe_parport 
    
[21:38:08] <jepler> before the line loading hal_parport in your hal file. 
    
[21:38:38] <jepler> does your system have a PCI add-in parport card? 
    
[21:38:39] <rayh> MattS loaded this.  I believe it is a 2.0.3 or 2.0.4 
    
[21:38:48] <rayh> Not my system. 
    
[21:38:55] <rayh> I'm phone servicing a distant computer. 
    
[21:39:04] <jepler> oh 
    
[21:39:16] <cradek> sorry to hear that :-) 
    
[21:39:18] <jepler> with voice or with modem? 
    
[21:39:27] <rayh> All this parport is doing is aux IO 
    
[21:39:30] <rayh> the motion and all is stg 
    
[21:39:38] <rayh> voice 
    
[21:40:14] <jepler> kinda hard to pastebin the lspci then 
    
[21:41:55] <rayh> Right. 
    
[21:42:09] <rayh> I was doing a comparison with my emc-live box here. 
    
[21:42:26] <rayh> and lspci does not show any parport even though I've got one at 378 
    
[21:42:39] <rayh> the modprobe and dmesg does show it. 
    
[21:43:03] <jepler> the "legacy" ports usually don't show up in lspci -- they're ISA devices, effectively. 
    
[21:43:09] <cradek> 0378-037a : parport0 
    
[21:43:09] <cradek> 037b-037f : parport0 
    
[21:43:18] <cradek> I get this in /proc/ioports 
    
[21:43:34] <jepler> cradek: you must have the linux kernel parport driver loaded, then 
    
[21:43:42] <cradek> oh, probably - sorry 
    
[21:43:45] <rayh> I didn't find anything there either 
    
[21:43:55] <cradek> never mind me 
    
[21:44:24] <alex_joni> lspci only shows the pci addon cards, like the netmos 
    
[21:44:40] <alex_joni> and it _doesn't_ identify them as parport related 
    
[21:44:47] <rayh> shoot.  Now I can't remove parport_pc.  Says it's used by 1 
    
[21:45:01] <alex_joni> sudo rmmod parport 
    
[21:45:05] <alex_joni> sudo rmmod parport_pc 
    
[21:45:06] <rayh> okay.  I think I can find the stuff. 
    
[21:45:12] <rayh> busy is the answer 
    
[21:45:19] <alex_joni> and lsmod to see what's using it 
    
[21:45:43] <rayh> It just says 1 is but not other kernel modules 
    
[21:46:48] <rayh> ah got it. 
    
[21:47:03] <rayh> lp and several others were using it. 
    
[21:47:18] <rayh> I think I can handle the call when it comes in. 
    
[21:47:21] <rayh> thanks a bunch guys. 
    
[21:47:34] <alex_joni> no sweat.. that's what we are payd for :) 
    
[21:47:36] <jepler> I also had to remove "lp" 
    
[21:48:53] <alex_joni> jepler: figured out the missing configure bits? 
    
[21:48:56] <alex_joni> or is it just me? 
    
[21:48:56] <cradek> haha 
    
[21:49:09] <jepler> alex_joni: 15:31:27  <jepler> 
http://cvs.linuxcnc.org/cgi-bin/cvsweb.cgi/emc2/src/configure.in.diff?r1=1.112;r2=1.113;f=h 
    [21:49:16] <jepler> I checked in the configure stuff 
    
[21:49:23] <jepler> I mean, already 
    
[21:49:30] <alex_joni> odd 
    
[21:50:09] <alex_joni> was that a couple of minutes ago? 
    
[21:50:16] <alex_joni> CIA is silent as usually 
    
[21:50:51] <alex_joni> oh darn.. 
    
[21:50:54] <jepler> no it was longer ago than that 
    
[21:51:14] <alex_joni> I checked out the new_cl_branch, and forgot I did that on my working copy :) 
    
[21:51:26] <jepler> obn 
    
[21:51:25] <jepler> oh 
    
[21:51:38] <alex_joni> and I checked this before but only in emc2/ not in emc2/src 
    
[21:51:46] <jepler> yeah, new_cl_branch is probably broken now 
    
[21:53:04] <cradek> is there a reason not to merge that? 
    
[22:00:13] <jepler> yes -- I haven't had positive feedback from anybody 
    
[22:00:31] <jepler> I had hoped for some 
    
[22:00:34] <alex_joni> jepler: I ran it .. and it works 
    
[22:00:36] <alex_joni> :P 
    
[22:00:45] <cradek> it worked for me 
    
[22:00:56] <alex_joni> but I can say the same about the old one, not seeing much of a difference 
    
[22:01:01] <cradek> nobody else will try it until it's merged 
    
[22:01:09] <alex_joni> cradek: bet we can ask Dallur 
    
[22:01:24] <alex_joni> I know he is the one that complained about missing parts from CL 
    
[22:01:35] <cradek> did ray try it?  I'd think he would be interested and able to test it 
    
[22:02:37] <rayh> i 
    
[22:02:54] <rayh> ve not tested new cl 
    
[22:03:01] <cradek> oops, sorry to talk about you like you're not here ray, I forgot 
    
[22:17:48] <jepler> http://wiki.linuxcnc.org/cgi-bin/emcinfo.pl?SynchronizedOutputs 
    [22:19:21] <alex_joni> jepler: you don't want to put them into parameters 
    
[22:19:25] <alex_joni> imho 
    
[22:20:01] <jepler> alex_joni: that's not my favorite idea either, but I felt it deserved a mention anyway 
    
[22:20:20] <cradek> should the analogs go from 0 to 1 (or -1 to 1) with scaling in HAL? 
    
[22:20:24] <alex_joni> it somehow feels that it brings trouble 
    
[22:21:19] <cradek> if I have g1x1; M200 P1 Q1; M200 P1 Q0; g1x2 how do you synchronize/not stop? 
    
[22:21:41] <jepler> cradek: I don't see a reason to restrict the range. 
    
[22:22:48] <jepler> cradek: I hadn't considered the "double modification" case; add a note to the wiki about it if you like 
    
[22:22:55] <cradek> ok I guess I agree, I didn't see at first how scaling would work, but I think the answer is don't worry about it 
    
[22:23:24] <jepler> in my imagined implementatio, the behavior would never output the value 1, not even for a short time. 
    
[22:24:05] <jepler> if you want it to appear for some time, then put in a programmed pause 
    
[22:24:14] <cradek> there's a problem with tying it to the upcoming motion too: M200P1Q1; G4P.5; M200P1Q0 is perfectly reasonable 
    
[22:24:40] <jepler> in that case, the state of P1 should be visible when the pause starts 
    
[22:25:14] <jepler> that probably wasn't clear from what I wrote, that's the "special handling of g4 etc" 
    
[22:25:39] <cradek> ok I see 
    
[22:26:23] <jepler> so userspace could detect that P1 was set without an intervening motion, and insert a "smallest possible pause" 
    
[22:26:33] <jepler> in your original case (no G4) 
    
[22:26:42] <jepler> you'd typically get 10ms 
    
[22:27:30] <cradek> it seems like we need an uncomfortable combination of queue-emptying and motion-attachment implementations 
    
[22:27:46] <jepler> I think we should just move pause and dwell into motion, not task 
    
[22:27:55] <jepler> it's causing more and more problems 
    
[22:27:56] <cradek> I was just thinking that 
    
[22:28:14] <cradek> but probing 
    
[22:28:26] <jepler> yeah -- it doesn't fix probing, optional stop, block delete 
    
[22:28:39] <jepler> and the hypothetical "read input", however that will work 
    
[22:29:05] <cradek> I'm starting to be with ray on "read input" being a bad idea 
    
[22:29:17] <jepler> if that's true, then "probe" is a bad idea 
    
[22:29:28] <cradek> yes, that's right 
    
[22:30:13] <cradek> by "that's right" I mean I see the connection, not that I'm sure of whether they are (both) bad 
    
[22:30:33] <jepler> I'll stick by "we should move dwell and pause into motion" 
    
[22:30:58] <alex_joni> jepler: sounds more and more like 2.3 to me 
    
[22:31:13] <cradek> it would be nice to not have to empty the queue when we dwell.  that sucks. 
    
[22:31:35] <alex_joni> * alex_joni thinks task needs some really good cleanup 
    
[22:31:47] <alex_joni> it needs to get more generic and more simple 
    
[22:31:49] <cradek> task needs some really good throwing out and starting over 
    
[22:31:52] <jepler> I'll just rewrite task in python this weekend 
    
[22:32:01] <alex_joni> eek 
    
[22:32:02] <jepler> see you guys later, it's time to drive home 
    
[22:32:07] <cradek> me too 
    
[22:32:09] <alex_joni> time for bed here 
    
[22:32:15] <cradek> goodnight 
    
[22:32:19] <alex_joni> good night 
    
[22:38:23] <rayh> parport report -- I found two parports. 
    
[22:38:39] <rayh> Had to use modprobe because lspci didn't show anything 
    
[22:38:55] <rayh> One at 0x378 
    
[22:39:00] <rayh> One at 0x278 
    
[22:39:25] <rayh> The 278 is the one spec'd in the xxx_io.hal file 
    
[22:39:53] <rayh> in the dmesg it is referred to as parport1 
    
[22:40:07] <rayh> would that make any difference to HAL 
    
[22:40:25] <rayh> It should still be referred to as parport.0.whatever? 
    
[23:25:17] <cradek> if line("'> 0 && line("'<= line("$") | 
    
[23:34:20] <jmkasunich> hi guys 
    
[23:34:41] <jmkasunich> only here for a few minutes - wish I could have participated in the sync outputs discussion 
    
[23:35:12] <jmkasunich> my thoughts on it were to do the RT part exactly as we did the overrides 
    
[23:35:27] <cradek> hi 
    
[23:35:35] <jmkasunich> when the command to set some pin to some value is sent, it sets a variable to that value 
    
[23:35:47] <jmkasunich> that variable does not directly drive the output 
    
[23:36:04] <jmkasunich> it is copied into the queue on the next line/arc command 
    
[23:36:19] <jmkasunich> and when it comes back out of the queue it is written to the outout 
    
[23:36:20] <jmkasunich> output 
    
[23:36:22] <cradek> yes I agree that's part of the solution 
    
[23:36:22] <jmkasunich> hi 
    
[23:36:49] <cradek> but imagine a program that's dwell/set/dwell/set etc (no motion) 
    
[23:37:39] <jmkasunich> just like the override stuff - if the queue is empty, the "pending" values get copied directly to the "active" values 
    
[23:38:38] <cradek> true 
    
[23:38:51] <cradek> maybe it's not actually very hard 
    
[23:38:58] <cradek> did you see jepler's pre-spec? 
    
[23:38:59] <jmkasunich> I was thinking of a struct outputs { array of float; array of bit } 
    
[23:39:05] <jmkasunich> yes 
    
[23:39:21] <jmkasunich> add one of those structs to each queue entry, and have two as part of the emcmot status struct 
    
[23:39:27] <jmkasunich> "pending" and "active" 
    
[23:39:49] <jmkasunich> and treat them _exactly_ the way we treat the enables in the tc 
    
[23:40:07] <jmkasunich> time to go... 
    
[23:40:11] <cradek> ok bye :-) 
    
[23:40:13] <jmkasunich> I might be back around 10pm est 
    
[23:40:21] <cradek> ok 
    
[23:42:25] <cradek> rayh: about your earlier question I think if there's one loadrt parport, you'll get just parport.0 - it doesn't matter what the linux driver calls it