#emc | Logs for 2005-11-10

Back
[00:00:47] <k4ts> Jacky^
[00:01:00] <Jacky^> what ?
[00:01:08] <k4ts> wright pvt?
[00:01:18] <les_w> coming next afternoon
[00:01:38] <Jacky^> :-)
[00:02:43] <k4ts> read me pvt'
[00:02:45] <k4ts> ?
[00:02:50] <les_w> Really tired from assembling the "amazing gizmo" for the to take back
[00:02:57] <les_w> oh...hi anna.
[00:03:09] <k4ts> hi les_w
[00:03:44] <Jacky^> k4ts: cant read you, probably youre not registered to the server
[00:04:25] <les_w> I was using the microscope all day soldering impossibly tiny wires and metering out damping goop with tothpicks
[00:04:31] <k4ts> i'm registered
[00:04:47] <k4ts> :-)
[00:04:48] <Jacky^> les_w: smd components ?
[00:05:04] <les_w> acoustical devices jacky
[00:05:12] <Jacky^> cool
[00:05:20] <les_w> some smaller than smd!
[00:05:27] <Jacky^> ouch
[00:05:49] <les_w> worse thn a 604 resistor
[00:05:59] <Jacky^> wow
[00:09:24] <les_w> my eyes are tired.
[00:10:04] <Jacky^> uhm.. really hard to do for a lot of time
[00:10:10] <les_w> even with B&L stereozoom microscope.
[00:11:09] <Jacky^> nice experience
[00:11:31] <Jacky^> its another (micro) world :P
[00:11:41] <k4ts> hi les_w
[00:11:49] <Jacky^> k4ts: ?
[00:11:53] <les_w> Hi again anna.
[00:11:57] <k4ts> night
[00:11:58] <Jacky^> maybe Bye ?
[00:12:01] <Jacky^> hehe
[00:12:12] <k4ts> maybe?
[00:12:13] <Jacky^> g night k4ts
[00:12:23] <Jacky^> k4ts: ok
[00:12:31] <Jacky^> non � come ciao
[00:12:36] <Jacky^> ciao si sice sempre
[00:12:46] <Jacky^> hi quando entri bye quando vai ..
[00:13:02] <k4ts> ah les_w sorry byeee
[00:13:09] <Jacky^> ecco perch� lui ha risposto hi again (ciao di nuovo)
[00:13:20] <les_w> ?? haha bye
[00:13:22] <Jacky^> :)
[00:13:29] <k4ts> i'm ignorant
[00:13:31] <k4ts> hi hi
[00:13:38] <Jacky^> les_w: we use only ciao
[00:13:47] <Jacky^> ciao as HI or BYE
[00:13:58] <Jacky^> so, she used hi as bye
[00:14:12] <Jacky^> thats wahy
[00:14:15] <les_w> I should know italian after reading all those Colombo manuals
[00:14:20] <Jacky^> hehe
[00:14:53] <k4ts> :-P
[00:15:11] <Jacky^> id like to learn some language more
[00:15:30] <Jacky^> but i think peoples who want to really learn, need to travel
[00:15:37] <Jacky^> its the best way
[00:15:37] <les_w> Well, your english is fine.
[00:15:42] <Jacky^> bah ..
[00:15:46] <Jacky^> bad :)
[00:15:51] <Jacky^> just some word
[00:15:59] <les_w> I understand easily
[00:16:01] <k4ts> Jacky^ bad!
[00:16:08] <Jacky^> les_w: cool :D
[00:16:08] <k4ts> ah ah
[00:16:10] <Jacky^> haha
[00:16:29] <Jacky^> kidding
[00:16:37] <k4ts> naaaaaaaaaa
[00:17:21] <k4ts> Jacky^ have banned k4ts!
[00:18:00] <Jacky^> k4ts: what ?
[00:18:17] <Jacky^> youre here
[00:18:23] <Jacky^> O_o
[00:18:32] <k4ts> emc.it you have banned
[00:18:34] <k4ts> me!
[00:18:39] <Jacky^> try ..
[00:18:51] <Jacky^> inst true !
[00:18:54] <Jacky^> :P
[00:20:03] <k4ts> might all
[00:20:09] <k4ts> night all
[00:20:11] <Jacky^> k4ts: bye
[00:24:06] <les_w> and I shall go to the music room
[00:24:09] <les_w> long day
[00:24:18] <Jacky^> :)
[00:24:33] <les_w> night jacky
[00:24:41] <Jacky^> G nite les_w
[00:24:57] <Jacky^> ta for suggestions
[00:25:09] <Jacky^> and help
[00:25:24] <les_w> les_w is now known as les_w_away
[00:41:24] <Jacky^> night all
[00:41:32] <Jacky^> Jacky^ is now known as Jacky^afk
[00:45:02] <SWPadnos> rayh, are you still around?
[00:50:21] <Jymmm> SWPadnos: WTH?! Ray's been keeping on his diet!
[00:50:36] <SWPadnos> aroundtuit
[00:51:07] <Jymmm> he doens't need a round tunic or a moomoo either!
[00:55:26] <SWPadnos> well - slightly round
[00:56:27] <Jymmm> heh
[00:58:02] <SWPadnos> of course, I'm also slightly round (for very small values of "slightly")
[01:07:32] <Jymmm> Is that another way of saying hubba hubba?
[01:12:56] <Jymmm> as I doubt anyone here is on the skinny runt size. Well, maybe Les... he just talks like he's wirey =)
[01:13:10] <SWPadnos> Jon Elson is pretty thin
[01:13:52] <SWPadnos> As are Paul, Martin (Imperator), Fred, John K, and myself.
[01:14:03] <SWPadnos> Others, too - check the Fest photos :)
[01:26:02] <rayh> Hi guys. I'm back after eating much to much supper.
[01:29:46] <rayh> I'll keep checking back here from time to time. Working on ClassicLadder on another box
[01:29:52] <SWPadnos> OK
[01:30:01] <SWPadnos> I was lokoing over your email - most informative
[01:30:07] <SWPadnos> (beating a dead-ish horse)
[01:30:26] <SWPadnos> looking, not lokoing
[01:30:46] <SWPadnos> maybe I'll try to install a BDI on VMWare tonight
[01:32:08] <rayh> I'm fascinated by the abilities that an integrator gets with emc2 now.
[01:32:27] <SWPadnos> heh - HAL is pretty damned cool, when yo uthink about it :)
[01:32:38] <SWPadnos> especially with CL in the mix
[01:32:51] <rayh> Lots of opportunity for abuse.
[01:32:59] <SWPadnos> yp
[01:33:01] <SWPadnos> yup
[01:33:29] <rayh> Much more that we've had with emc.
[01:33:46] <rayh> and I've been accused of abusing it on a regular basis.
[01:33:51] <SWPadnos> heh
[01:34:18] <SWPadnos> I have a question on one point in your big email
[01:34:25] <rayh> k
[01:34:46] <rayh> I've not seen any other response yet.
[01:35:07] <SWPadnos> when you talked about a panel switch for coolant (auto-off-on), what did you mean by "a local panel override signal that comes from the EMC"
[01:35:20] <SWPadnos> I'm making a response now, and I haven't seen any others either
[01:35:38] <rayh> Oh. This is a long standing discussion between FredP and I.
[01:35:44] <SWPadnos> I know the NIST guidelines
[01:35:59] <SWPadnos> I'm just not sure where the local panel override is
[01:36:00] <rayh> The first time I walked into his office with the control panel layouts.
[01:36:22] <rayh> My guess would be that many integrators will not allow an override.
[01:37:09] <rayh> The one thing most machine operators get really hot about is that a "suit" in the office could press a run button on the machine that they are leaning into.
[01:37:27] <SWPadnos> that would get me hot under the collar as well
[01:37:58] <SWPadnos> but I'd probably hit hte estop (or just "stop") button if I were changing tools or crawling around inside a machine
[01:38:10] <rayh> On the other hand, in many work cell kinds of things. A local control panel is of real value when a single machine, mill, lathe, or part feeding robot needs attention.
[01:38:52] <rayh> Roland, the owner of the Mazak was a bit taken back by the idea that several of us might be able to log into his control.
[01:39:02] <SWPadnos> OK - so you're looking at having a local panel (local to the machine, not necessarily the controller), and a switch that essentially "enables" the controls on it
[01:39:31] <rayh> Yes and that could be a momentary that can be changed from the main panel
[01:39:49] <SWPadnos> and that should probably disable any control from anywhere else at the same time :)
[01:39:53] <rayh> or a maintained switch with something like lockout/tagout abilities.
[01:40:27] <rayh> As emc get's more and more widely applied in these machines with more machine logic,
[01:40:35] <SWPadnos> I agree with Fred on the problems with maintained switches
[01:40:40] <rayh> I'm guessing that many different patterns will emerge.
[01:40:58] <SWPadnos> yes
[01:41:17] <rayh> One of the issues with maintained switches for things like axis focus for jog or handwheel.
[01:41:43] <rayh> is that when control is passed back to the gui someplace else,
[01:42:02] <rayh> getting focus back and a proper reading of all those hardware switches is a problem.
[01:42:14] <SWPadnos> ie, things go haywire
[01:42:27] <rayh> I can do it in CL but it is not easy and will require a lot more pins from NML and GUI
[01:42:33] <rayh> connected to the hal.
[01:42:36] <SWPadnos> Fred put it succinctly with the example of feedrate override
[01:42:44] <rayh> Yes he did.
[01:42:56] <SWPadnos> and coolant should be no different.
[01:43:09] <SWPadnos> (even though it's not necessarily a safety issue)
[01:43:17] <rayh> True.
[01:43:56] <rayh> Fred has a gift for dispersing bs.
[01:43:57] <SWPadnos> conceptually, the IO controller controls a shitload of IO
[01:44:04] <SWPadnos> heh
[01:44:29] <SWPadnos> so there should be 2x (shitload) of pins, at least. one for input (feedback), and one for output (control)
[01:44:37] <SWPadnos> and maybe more
[01:44:48] <rayh> The machine logic that I'm pointing to is really a system wide issue.
[01:45:10] <SWPadnos> yes, but it depends on each component exporting an interface that can completely control that component
[01:45:11] <rayh> The problem comes when you get all of those pins available at the HAL,
[01:45:22] <rayh> the chance for abuse gets giant.
[01:46:12] <rayh> Hell I got tromped for using (msg, xxx) and then reading it and doing something in tkio.
[01:46:20] <SWPadnos> yep, and the ability to actually use any configurator, even a nice GUI one, gets hard
[01:46:27] <SWPadnos> ??
[01:46:39] <rayh> My sneaky way of getting around having to do real code revision.
[01:46:45] <SWPadnos> hsh
[01:46:47] <SWPadnos> heh
[01:46:55] <SWPadnos> bad ray
[01:47:14] <rayh> (msg, xxx) is a g-code entity that raises a message. The xxx part.
[01:47:32] <rayh> So I just put a filename and command in there and read them with tickle.
[01:47:59] <SWPadnos> actually, that may be a viable way of extending G-code for other functions
[01:48:10] <rayh> The PC world was mine. Not that it worked really well but it did expand the range of possible activities.
[01:48:14] <SWPadnos> there's only one letter left - 'E'
[01:48:18] <rayh> Exactly.
[01:48:43] <SWPadnos> luckily, 'E' can stand for "Extended code"
[01:48:53] <rayh> Never thought of that.
[01:48:55] <SWPadnos> and it almost makes sense :)
[01:49:13] <SWPadnos> I looked through the manual yesterday looking for just such an option :)
[01:50:05] <SWPadnos> in fact, you can make the interpreter change personalities by using (for example) an E code
[01:50:10] <rayh> My thinking right now with respect to hal pins is that a group of input and output pins
[01:50:23] <rayh> might be configurable at the task level.
[01:51:21] <rayh> E106 [read filename myfile.txt]
[01:51:21] <SWPadnos> do you mean the pins to be configured, or the connections made to the pins?
[01:51:32] <rayh> Both.
[01:51:45] <rayh> I'd define a pin to the hal in task.
[01:52:13] <rayh> in the hal I'd watch for it and do some logic and return a value on it's complementary pin.
[01:52:20] <SWPadnos> well - there's no reason why the iocontroller (or any other HAL module) can't have an option for "normal" or "advanced" mode
[01:52:44] <SWPadnos> most already choose what pins to export based on ccommand line parameters
[01:52:54] <rayh> I was thinking yesterday about your idea of task modules.
[01:53:05] <SWPadnos> the gearchanger cometh :)
[01:53:32] <rayh> sort of a logical abstraction layer for task.
[01:53:55] <rayh> As it is we have a gearchanging HAL module.
[01:54:28] <rayh> But the reality of it being a task module can't be ignored.
[01:55:17] <SWPadnos> there are too many references to the current structure of EMC in these discussions.
[01:55:25] <SWPadnos> is it realtime or not?
[01:55:36] <SWPadnos> does it connect to realtime or not?
[01:55:46] <SWPadnos> does it connect to userspace or not?
[01:56:00] <SWPadnos> does it connect to I/O or not?
[01:56:26] <rayh> do any of these matter or not?
[01:56:34] <SWPadnos> those are the questions that need to be answered for any particular "service" (not using task because it already has meaning)
[01:57:01] <SWPadnos> and the framework must exist for all useful combinations (and probably does)
[01:57:44] <SWPadnos> sorry - "it's a task module" - makes me think that it'll be hard to break current molds where needed
[01:57:55] <rayh> Right.
[01:58:12] <SWPadnos> (conversely, it'll be hard for people like me, and possibly fenn, to not break current molds when not needed :) )
[01:58:18] <rayh> It was really expedient to use motion to read the spindle encoder.
[01:59:00] <rayh> watch for index pulses and set a position on the resulting pulse count.
[01:59:12] <SWPadnos> absolutely. the high speed motion thread is the arbiter of movement related data.
[01:59:17] <rayh> But it could have been done all in HAL as IO
[01:59:37] <rayh> We do read the handwheel in a hal module.
[01:59:47] <SWPadnos> low speed though.
[02:00:01] <SWPadnos> you need the motion drivers to get the spindle encoder data.
[02:00:22] <SWPadnos> (I'm assuming that the spindle encoder is connected to a hardware encoder counter)
[02:00:38] <rayh> we got it to about 20-30 rps by running it along an arm.
[02:00:57] <rayh> Yes it is on the motenc lite
[02:01:41] <rayh> Next trick is to extend the ramp to say 20 revolutions.
[02:01:59] <rayh> and set the orient angle as a function of z depth
[02:02:22] <rayh> and try rigid tapping of a 1/4 20 hole.
[02:02:24] <SWPadnos> does it have a spiral tooth tool holder?
[02:02:28] <SWPadnos> ah - for tapping
[02:02:50] <SWPadnos> I usually think of that as setting Z depth based on spindle orientation :)
[02:02:52] <rayh> Yep. The concept is in place.
[02:03:13] <rayh> there are some questions about the ability of the spindle drive to follow.
[02:03:28] <SWPadnos> that reminds me - I had an idea about gearing
[02:03:55] <SWPadnos> each axis already has a PID block, which has separate P, I , and D inputs, right?
[02:04:15] <rayh> Yes and the ff stuff also.
[02:04:22] <SWPadnos> plus a command input
[02:05:00] <SWPadnos> if the comamnd input is a velocity, then gearing should be pretty easy (assuming that a couple of simple float blocks are available)
[02:05:32] <rayh> Jmk would have to explain all the details of that HAL mod.
[02:05:44] <SWPadnos> no problem - just a concept at this point
[02:05:56] <rayh> in essence it sees a gear change command,
[02:06:02] <SWPadnos> you need a separate output from the interpreter / task / whatever to select "normal" or "geared" operation.
[02:06:15] <SWPadnos> sorry - not gearchanger, gearing, lilke for threading
[02:06:35] <rayh> slows down to a slow spin and initiates the change, then returns to the same spindle speed as with the old gear.
[02:06:45] <rayh> Oh that gearing.
[02:07:27] <rayh> What we lack, like the NIST session said was a module that would
[02:07:28] <SWPadnos> yep - that gearing :)
[02:07:57] <rayh> accelerate the axis that is following and then lock the axes together
[02:08:05] <rayh> for the real geared move.
[02:08:59] <SWPadnos> yep. that would require a sort of "floating point selector" - something that takes two inputs, and a third that varies from 0 to 1, which gives the ratio of input1 to input 2 to output
[02:09:27] <SWPadnos> (multiply input 1 by the control input, and input 2 by 1- the control input, and output the sum)
[02:09:55] <SWPadnos> making sure, of course, that the control input is bound between 0 and 1
[02:10:06] <rayh> during the ramp up, acceleration of the follower is critical.
[02:10:46] <rayh> for a load with high inertia, it might take several rotations to get it to speed.
[02:10:53] <rayh> phone brb
[02:11:00] <SWPadnos> the controller should know if the follower is capable of following, and should refuse any out-of-spec requests
[02:24:41] <fenn> * fenn uses lost foam casting - you break the mold every single time ;P
[02:25:12] <SWPadnos> look at the bright side - you get to make a new mold every time
[02:28:57] <rayh> * rayh is back
[02:29:05] <SWPadnos> hi again
[02:29:18] <rayh> Hi fenn swp.
[02:30:11] <SWPadnos> so - on the gearing thing - the simple HAL method is to connect a divider to the master axis control and feedback signals, so you have an output which is the ratio of the two
[02:30:29] <fenn> that's only simple when you do it manually
[02:30:32] <SWPadnos> you then use a multiplier, and multiply the command input to the PID block for the slaved axis
[02:30:47] <fenn> how are you going to tell hal to connect all these signals together when you need geared motion?
[02:31:13] <SWPadnos> you could actually do it using M107 or the like
[02:31:22] <rayh> Right SWPadnos We have such a thing in HAL now.
[02:31:24] <SWPadnos> (ie, a script that connects these pins)
[02:31:33] <fenn> alrighty then
[02:31:45] <fenn> what's the script called?
[02:31:52] <SWPadnos> m107
[02:31:58] <rayh> But you still have the problem of the accel ramp
[02:32:13] <SWPadnos> (m100 and up cause scripts of the same name to be called)
[02:32:39] <SWPadnos> that's where you need some slightly custom stuff
[02:32:58] <SWPadnos> a mixer block is the only necessity
[02:33:15] <SWPadnos> two parameter inputs, one output, and a control input from 0-1
[02:33:19] <rayh> in a near perfect world, where z could accel to speed in one spindle rotation
[02:33:43] <fenn> so a lathe operator would be using M10x instead of G33?
[02:34:00] <SWPadnos> it doesn't have to get up to speed in a single rotation - you would need to have a lead-in move, and push X in once the other two are at speed
[02:34:32] <SWPadnos> possibly - that was just a quick thought, not a thought out thought :)
[02:34:57] <rayh> Most threads are cut with a z at depth before the cut starts.
[02:35:00] <SWPadnos> to demonstrate that there is a way of programmatically connecting HAL pins
[02:35:15] <SWPadnos> (sorry - Z is depth, and X is alongthe spindle axis?)
[02:35:37] <fenn> Z is usually parallel to the spindle
[02:35:55] <rayh> let's imagine we send hal a position on the spindle.
[02:36:04] <SWPadnos> "Z at depth" tells me that ZZ is diameter/radius, and X is along the spindle axis
[02:36:11] <rayh> and at the index pulse it begins to move z to speed.
[02:36:35] <SWPadnos> why not start the X motion before the spindle is up to speed? they're geared anyway
[02:36:39] <rayh> Sorry. I m comfusing you.
[02:36:55] <rayh> z is toward or away from the spindle/.
[02:37:15] <SWPadnos> X is diameter/radius
[02:37:18] <rayh> a single point thread move is most often toward the spindle for the cut
[02:37:30] <rayh> back x away from the part
[02:37:39] <rayh> move z back to starting position
[02:37:53] <rayh> and set the new cutting depth on x
[02:38:03] <rayh> and then start the next cut.
[02:38:19] <SWPadnos> OK -and you move in when the spindle is up to speed
[02:38:39] <rayh> The spindle's speed is constant.
[02:39:04] <rayh> so you've got to get z to match its speed/threads per inch.
[02:39:06] <SWPadnos> if the speed were constant, you wouldn't need gearing :)
[02:39:26] <SWPadnos> brb - phone
[02:39:32] <rayh> Well it is possible to thread using two servo axes
[02:42:22] <fenn> you could just pretend that Z can accel perfectly, and just extend the threading move out a little further
[02:42:33] <fenn> so you're threading empty space
[02:43:00] <rayh> Yes but you've got to make certain that you have the tool in the proper place
[02:43:04] <rayh> throughout the move.
[02:43:31] <rayh> That's why I tend to think of two index pulses.
[02:43:41] <fenn> huh?
[02:44:04] <rayh> the first says start accel to this speed and take the time of one rotation to do it.
[02:44:23] <rayh> the second index pulse locks the two axes together.
[02:45:05] <rayh> I think you've got a thread chaser on that Atlas
[02:45:19] <fenn> the little dial with numbers on it?
[02:45:26] <rayh> Right.
[02:45:30] <fenn> yah
[02:45:48] <fenn> so your index pulse acts like a thread chaser
[02:45:49] <rayh> The idea is to lock the z motion into place with that little dial
[02:45:55] <rayh> yep.
[02:46:07] <fenn> but, what if you dont have an index pulse? you just have to know how many encoder pulses in a revolution
[02:46:17] <rayh> You want the same number each time you cut a new pass.
[02:46:27] <rayh> True.
[02:46:47] <fenn> so why bother with the index pulse at all? (but it's a nice metaphor)
[02:47:16] <rayh> never thought of thread chasing as a metaphor.
[02:47:52] <rayh> You could say that if it takes a hundred pulses of the spindle encoder to get z to speed.
[02:48:13] <rayh> simply start z 100 pulses before you want to lock them together.
[02:48:28] <fenn> that's confusing
[02:48:38] <fenn> lock them together when Z is at speed
[02:48:55] <rayh> Yes and in the proper relationship.
[02:49:26] <rayh> single point threading often uses 20 or so passes to make the thread.
[02:49:32] <fenn> ok i misunderstood what you meant i think
[02:50:06] <rayh> so all 20 passes must be done in nearly the same ???
[02:50:24] <rayh> angle on spindle to position on z.
[02:50:33] <fenn> i understand how to do single point threading
[02:50:42] <rayh> okay.
[02:51:31] <fenn> who is doing the waiting? what says "okay, now start threading"
[02:51:51] <rayh> That is the part that isn't done yet.
[02:51:54] <fenn> heh
[02:52:40] <fenn> so, send an "enable" signal to a HAL comparator that checks if current position == thread start position
[02:53:33] <fenn> which is based on a parameter in the ini file (since you need to experimentally determine how much time z takes to get to speed)
[02:53:57] <fenn> max_accel, duh :)
[02:54:42] <fenn> but the equation will be ugly, since it must consider thread pitch, spindle speed, z accel, and "acceleration headroom"
[02:54:44] <rayh> and the final velocity
[02:54:53] <les_w_away> hi ray and fenn
[02:55:03] <fenn> yo
[02:55:07] <rayh> evening les
[02:55:14] <fenn> let's throw orbital boring into the mix for fun :)
[02:55:27] <fenn> * fenn cackles maniacally
[02:55:55] <rayh> uh o k a y!
[02:56:50] <fenn> i don't know where you guys are going with this conversation
[02:57:02] <rayh> Is this to correct for a bent drill?
[02:57:24] <fenn> it's slaved motion to the spindle, but not in the z axis
[02:57:30] <fenn> like, say you want to make a splined shaft
[02:57:40] <fenn> you can move X in and out really really fast to cut the splines on the lathe
[02:58:01] <les_w_away> I bought a pretty expensive american made drill bit set from msc and found that many are unhardened!
[02:58:10] <rayh> Most of the guys I know use live tooling for stuff like that.
[02:58:14] <les_w_away> letter, number, fractional
[02:58:28] <rayh> but I've seen cam and square cuts
[02:59:22] <fenn> nobody with that kind of equipment is going to be using emc anyway
[02:59:42] <rayh> never say never.
[02:59:44] <fenn> but it's nice to have it in there if you can come up with a generalized solution for slaved axes
[02:59:53] <fenn> i will probably try to do it :)
[03:00:10] <rayh> you probably will<g>
[03:00:53] <fenn> i think slaved motion has more uses than just threading and orbital boring, though
[03:01:00] <rayh> Just to proove it can be done.
[03:01:13] <les_w_away> I am optimistic about what I saw from Till and Herman. Will study it more after the suits come for project review tomorrow.
[03:01:14] <fenn> "slaved motion" is a crappy phrase i like "synchronized" or "coordinated"
[03:01:40] <fenn> les could you post it on the wiki or the dropbox or something?
[03:01:55] <rayh> I think that most of use use slaved because our task planner uses the term coordinated.
[03:01:58] <rayh> as is.
[03:02:10] <fenn> well, what's the difference?
[03:02:23] <fenn> realtime coordination?
[03:02:27] <rayh> and as is, I've cut a few threads use A and X
[03:03:23] <rayh> g1 f10 x1 a7200 will give you an inch of 20 tpi
[03:03:30] <les_w_away> I will study it. For me slaving, tool change, interpreters, etc are kinda achedemic when you have bought an expensive new spindle and can't use it fully because the tp is screwed.
[03:03:53] <les_w_away> academic?
[03:04:21] <fenn> machinists are plagued by an ache-demic of staggering proportions
[03:04:28] <les_w_away> hahaha
[03:04:47] <rayh> What, the new spindle gets the cutting speed up and that further shows the limitations of tp?
[03:05:12] <les_w_away> I spent the whole day using a microscope to assemble things...My eyes are shot and I can't type
[03:05:27] <fenn> les you need a micromanipulator
[03:05:53] <fenn> or maybe just a tv camera
[03:06:36] <les_w_away> ray, the tp and slow servo rate won't let me use the spindle for what it was designed for
[03:07:30] <les_w_away> I will deal with that as soon as the suits are gone tomorrow
[03:07:38] <rayh> What kind of cutting speeds do you need to maintain chip load?
[03:07:50] <les_w_away> 600 or so
[03:07:56] <les_w_away> ipm
[03:08:57] <rayh> sounds like my old speech about trading resolution for speed?
[03:09:17] <rayh> * rayh can't type tonight either.
[03:09:53] <les_w_away> well, contouring at 2k servo rate at that speed does not cut it...leterally
[03:10:05] <les_w_away> literally
[03:10:06] <les_w_away> haha
[03:10:22] <fenn> etla keeps saying how when the accel is low compared to the feedrate, the blending gets all screwy
[03:10:31] <rayh> Happy hour musta started about an hour ago.
[03:10:40] <les_w_away> yeah. It did.
[03:10:56] <rayh> for all of us.
[03:11:19] <les_w_away> fenn, yes. there is still a major velocity adaptation error.
[03:11:56] <les_w_away> but if that were fixed (and it needs to be)....servo rate is still too slow
[03:12:11] <les_w_away> some think that could be rectified
[03:12:22] <les_w_away> and I will explore that soon
[03:13:34] <fenn> what are the factors that limit servo update rate?
[03:13:54] <les_w_away> seemingly NML
[03:14:22] <les_w_away> so folks say.
[03:14:34] <fenn> why do you say that? (was expecting something like CPU context switching or some such)
[03:15:33] <les_w_away> I say that because I was told that. Some say a P4 pentium ought to run the real time thread at 10k easily
[03:16:20] <rayh> Sure it can but how much can you accomplish during an interval like that.
[03:16:44] <rayh> with the switching involved getting there and back.
[03:16:49] <les_w_away> a servo loop some say.
[03:16:57] <les_w_away> I don't know really
[03:17:50] <les_w_away> Seems to me there is a function in the rt tread calculating pi to 100,000 places each servo cycle... I don't know
[03:18:09] <fenn> the emc/setiathome project
[03:18:24] <les_w_away> yeah!
[03:20:10] <rayh> I seem to remember some studies done regarding NML messaging at NIST.
[03:20:20] <les_w_away> yeah?
[03:20:23] <rayh> don't remember who's name they were under.
[03:21:07] <rayh> But then I have a real hard time with the idea of very short linear moves to approximate an arc.
[03:21:41] <les_w_away> someting's wrong...I think you could blow away the emc servo rate witha $1 pic
[03:21:53] <SWPadnos> back
[03:22:20] <les_w_away> ray, TP stuff is causal. It does not have to be in RT.
[03:22:58] <SWPadnos> you get better interrupt response latency and jitter from a 1 MHz AVR than a 1 GHz Pentium
[03:23:04] <rayh> No I agree. It could be computed in advance and a pointer used to pass the next several
[03:23:56] <SWPadnos> are we sure that the problem is in the blending code, and not somewhere in the motion planner (PID issues when the requested velocities change, for example)?
[03:24:03] <les_w_away> swp: We found old slow machines beating newer faster machines with emc
[03:24:23] <rayh> But it just doesn't seem relevant when you are using 2kw motors driving a 1000 lb bed.
[03:24:41] <SWPadnos> not surprising. newer chips are optimized for throughput, not latency (beyondwhatever's necessary for audio/video)
[03:24:43] <les_w_away> yeah
[03:24:45] <rayh> a bit of jitter I mean.
[03:25:00] <les_w_away> my machine tends to show any weak points for sure
[03:25:59] <rayh> Some day you gotta let me at your tuning parameters.
[03:26:44] <les_w_away> I may be the only one trying to do HSM with emc. The problems I speak of fade away if you are running a BP at 20 ipm
[03:26:58] <SWPadnos> you won't be the only one, I hope
[03:27:13] <fenn> "if you build it, they will come" oooo
[03:27:17] <rayh> Well we were running the Mazak at 300 ipm and 25 accel
[03:27:36] <fenn> that counts as HSM in my book
[03:28:03] <rayh> It made the 0.001 slop in the x bearings sound like a truck hitting a brick wall.
[03:28:07] <les_w_away> the speed is good
[03:28:30] <les_w_away> My iron is designed for 200 accel
[03:28:38] <les_w_away> hence my problems
[03:28:52] <fenn> 200? like 6G?
[03:29:17] <SWPadnos> 0.5G, no?
[03:29:40] <les_w_away> no. 200 inches per second squered. about 0.5 g for x. Y can do a couple g, and z about 5
[03:29:41] <fenn> 200 inches/sec/sec = 6.25g right?
[03:29:59] <SWPadnos> 0.515357658215-ish
[03:30:01] <fenn> er, crap i mixed up feet and seconds
[03:30:08] <les_w_away> haha
[03:30:17] <fenn> i mean feet and inches
[03:30:20] <SWPadnos> yep
[03:30:46] <les_w_away> 32* 12 in/sec ^2= about 1 g
[03:32:14] <fenn> well, g is not the same in indiana as it is in georgia :P
[03:32:59] <les_w_away> well, we weigh less. closer to the equator.
[03:33:13] <les_w_away> we get slung around and stuff.
[03:33:52] <les_w_away> but 1g=9.81 meters/sec^2=32.2 ft/sec^2 anywhere
[03:34:00] <les_w_away> except france.
[03:34:41] <les_w_away> and california.
[03:35:05] <SWPadnos> and 32 feet is 384 inches, so 200 IPS^2 should be 1/2 G, right?
[03:35:29] <les_w_away> right
[03:35:39] <fenn> pi == 3.0 in certain states
[03:35:47] <les_w_away> I designed for 1g, derated to 0.5
[03:35:49] <SWPadnos> OK - just making sure I don't need more coffee :)
[03:36:07] <rayh> At those speeds do you notice differences in g2 and g3 do to Coriolis.
[03:36:35] <SWPadnos> you could probably prevent / cause tornadoes as well, just by choosing G2 or G3
[03:36:35] <les_w_away> this is happy hor not breakfast hour
[03:37:14] <les_w_away> ray: I feel really light here. In the UP I get noticably heavy
[03:37:16] <les_w_away> haha
[03:37:26] <rayh> we could call it vortex cooling.
[03:37:36] <fenn> you can cause earthquakes by going back and forth at a harmonic of the earth's resonant frequency..
[03:38:34] <les_w_away> ach..spent the whole day under the microscope doing resonant filters for tomorrow
[03:38:40] <les_w_away> acoustics.
[03:38:41] <rayh> Well guys, it's been fun but gotta get away from the screen for a bit.
[03:38:51] <les_w_away> yeah.
[03:39:15] <les_w_away> gosh, ray turns off like a light
[03:39:22] <SWPadnos> click!
[03:39:27] <les_w_away> haha
[03:39:35] <SWPadnos> time for me to go too, my wife just got home :)
[03:39:37] <fenn> there's a buncha yahoos in my shop using a wire brush on bicycle chains.. i'm kinda scared to go out there
[03:39:46] <SWPadnos> see ya
[03:39:50] <fenn> nite
[03:39:51] <les_w_away> bye
[03:40:01] <SWPadnos> SWPadnos is now known as SWP_Away
[03:40:20] <les_w_away> fenn...sounds weird. Why are they doing that/
[03:40:33] <fenn> to get the rust off
[03:40:43] <les_w_away> oh.
[03:41:00] <les_w_away> will get some metal off too.
[03:41:13] <fenn> it's for a "scuplture"
[03:41:21] <les_w_away> ohhh ok.
[03:41:35] <fenn> art != logic
[03:42:29] <fenn> i am getting excited about building a scara type robot
[03:42:40] <Jymmm> les_w_away Got Suits?
[03:43:03] <les_w_away> about 2:00 tomorrow
[03:43:19] <les_w_away> have to drive in from greenville sc airport
[03:43:32] <Jymmm> ah, I thought that was today
[03:43:44] <fenn> who are you working for anyway?
[03:44:08] <les_w_away> I worked a long day getting a gizmo ready that they can take back.
[03:44:17] <Jymmm> fenn: If he tells ya, he'd have to kill ya.
[03:44:20] <fenn> * fenn pictures a UFO landing in les's back yard
[03:44:37] <fenn> the high priest of mars walks out in his bubble and receives les's latest invention
[03:44:49] <Jymmm> les_w_away: oh... I found out what O and V flutes are
[03:45:25] <les_w_away> Fenn, I am a fellow of the Illinois Tool Works Advanced Technology Group. I still work for them a lot.
[03:45:36] <les_w_away> It's a large corpration.
[03:45:45] <les_w_away> corporation
[03:46:38] <les_w_away> I ...um...make things.
[03:47:27] <les_w_away> And they are coming down to my farm from chicago to check up on me tommorow.
[03:48:06] <les_w_away> If I'm not good, they might not give me money.
[03:48:59] <les_w_away> I need money. Lots of it.
[03:49:08] <les_w_away> So I am stressed a little.
[03:50:01] <jepler> good luck
[03:50:21] <les_w_away> ty jeff
[04:00:42] <fenn> this is fun turning down the max accel to ridiculously low values
[04:01:11] <les_w_away> jog will over run limit switches...
[04:01:27] <fenn> just simulation, not running the machine
[04:01:32] <fenn> thanks for the wwwarning tho
[04:02:25] <fenn> if i turn down default accel and turn up following error, will it still stop before it hits a limit? (guess i have to find out myself)
[04:02:36] <les_w_away> I have a limit over ride button on my control panel for that case
[04:02:44] <les_w_away> With servo, yeah
[04:03:18] <fenn> i just saw this music video with very graceful robot movement.. wanna try to duplicate that
[04:04:24] <les_w_away> I have (in order) : home switch, SW limit, Hard limit switch, and pneumatic shock absober in that order on all axes
[04:04:48] <fenn> how far is soft from hard limit?
[04:05:07] <les_w_away> for me, about 0.25 inch
[04:05:39] <fenn> hard limit cuts power? or sends zero to the amps?
[04:06:12] <fenn> and do you have to crank the screw by hand to get it off a hard limit?
[04:06:30] <les_w_away> hard stops the spindle, regen brakes the servos, and sends emc an estop command
[04:06:42] <les_w_away> no I have a limit over ride switch
[04:06:50] <les_w_away> momentary push button
[04:06:52] <fenn> er, right :)
[04:07:03] <les_w_away> then you can jog off ther limit
[04:08:08] <fenn> it almost looks hand-drawn
[04:08:21] <les_w_away> ?
[04:08:31] <les_w_away> looking at the schematic?
[04:08:38] <fenn> i'll show you when its done
[04:09:49] <les_w_away> k
[04:10:23] <fenn> http://fenn.freeshell.org/cds-accel1.5.png
[04:10:29] <fenn> http://fenn.freeshell.org/cds-accel1.5x1000.png
[04:10:29] <les_w_away> looking
[04:10:36] <fenn> (that's with 1000 feed override)
[04:10:46] <fenn> http://fenn.freeshell.org/cds-accel.15x100.png
[04:11:07] <fenn> that's 1000 feed override still, but accel is cut to 0.15 in/sec/sec
[04:12:24] <les_w_away> well, min radius is V^2/A
[04:13:38] <les_w_away> but of course velocity adaptation is way screwed up, so who knows what reak V is
[04:13:47] <les_w_away> real
[04:17:22] <fenn> emc freaks out on me sometimes and i cant figure out why
[04:17:46] <fenn> Issuing EMC_TRAJ_SET_VELOCITY and linear move like a zillion times in a row
[04:18:10] <fenn> but only one line of gcode
[04:18:26] <fenn> is that because it's updating velocity to keep acceleration low?
[04:21:31] <fenn> i probably wouldn't notice but it thrashes the hard disk
[04:25:17] <les_w_away> A threshold occurs when the planned waypoint period exceeds the trajectory period. Violent stutter occurs after that. This should not happen because when an unrealizable motion is commanded the TP should velocity adapt until that motion is possible.
[04:25:59] <les_w_away> It does do that, but only to a point. then the algo breaks down.
[04:26:05] <fenn> "planned waypoint" == gcode right?
[04:26:12] <les_w_away> right
[04:27:35] <fenn> "trajectory period" is like 100Hz right?
[04:27:53] <fenn> 10x servo rate
[04:28:13] <les_w_away> some inteher multiple of servo period. 100-200 HZ is typical.
[04:28:26] <les_w_away> integer
[04:28:37] <les_w_away> it can be as little as 2x
[04:28:51] <les_w_away> but less cubic sub interpolation will occur
[04:29:01] <fenn> is that a bad thing?
[04:29:13] <les_w_away> yeah
[04:29:14] <fenn> assuming it's all working right
[04:29:32] <les_w_away> simple trapezoidal without cubic has infinite jerk
[04:29:55] <fenn> so, it would be good if we were using a quintic or cubic planner, right?
[04:30:04] <fenn> to have a faster traj rate
[04:30:06] <les_w_away> yes
[04:30:32] <les_w_away> well we have to fix the bug
[04:30:40] <les_w_away> then get servo rate up
[04:30:56] <les_w_away> without both, HSM can't be done
[04:31:03] <fenn> looks like it actually does pay attention to default_accel
[04:31:39] <les_w_away> yeah
[04:31:47] <les_w_away> the other does nothing
[04:31:54] <fenn> max accel does nothing?
[04:31:58] <les_w_away> MAX_?
[04:32:00] <fenn> * fenn ponders
[04:32:16] <fenn> i thought max accel kept it from running into limits and such
[04:32:22] <les_w_away> Fred has some notes about that in code rems
[04:32:27] <les_w_away> forgot where
[04:32:40] <fenn> i'm using emc2 right now btw
[04:33:01] <les_w_away> ok
[04:35:02] <fenn> * fenn takes another data point
[04:38:52] <fenn> http://fenn.freeshell.org/cds-defaultaccel.15maxaccel20.png (default way below max)
[04:39:06] <fenn> http://fenn.freeshell.org/cds-defaultaccel15maxaccel.20.png (default way above max)
[04:39:20] <fenn> craps out with a following error of course
[04:40:25] <fenn> i wonder what's going on with the pointy edges though
[04:41:24] <les_w_away> they should not be pointy
[04:41:29] <les_w_away> for sure
[04:41:44] <les_w_away> low accel= big radius
[04:42:06] <Jymmm> les_w_away: You have any idea on how to make these (specifically the RUST and the PEWTER)? http://tricoat.com/SF/index.html
[04:42:50] <fenn> electroless copper, followed by a nitric acid bath?
[04:43:23] <fenn> er, not nitric.. some highly oxidizing agent
[04:43:23] <Jymmm> fenn: LOL these are all water based... brushed on
[04:43:46] <fenn> jymmm, don't try to fool your customer, they KNOW it's not real :)
[04:43:47] <les_w_away> paint
[04:44:10] <les_w_away> rust? um water.
[04:44:31] <Jymmm> les_w_away: I have the rust one... I can pick up one of the bottles with a magnet
[04:44:45] <les_w_away> patina on pewter...I would guess sulfides
[04:44:52] <fenn> jymmm look up how to paint miniature dolls
[04:46:09] <Jymmm> I got the rust sampler kit at home depot becasue it was on clearnace for $3. Normally $8 and only covers 3 sq ft
[04:46:43] <fenn> http://www.warfactory.co.uk/figures/guidewwivan.php
[04:46:46] <les_w_away> and this is paint?
[04:47:21] <Jymmm> Yeah, the rust is in two parts... metallic surfacer (has fine iron ore in it, and a antiquing solution.
[04:47:30] <les_w_away> ok
[04:48:36] <Jymmm> Ingrediates: Ammonium Chloride, Copper Sulfate, Iron fillings in a paste of water soluable polyacrylates, Diethlene gycol monobutyl ether,
[04:48:48] <Jymmm> popylene glycol,
[04:49:05] <Jymmm> err propylene glycol
[04:49:17] <Jymmm> .
[04:49:22] <fenn> * fenn wonders why you would want to make stuff look rusty
[04:49:40] <Jymmm> fenn: artistic license.
[04:50:32] <les_w_away> ok chlorides, etchant, binder, and solvents in that order
[04:51:21] <Jymmm> cheaper to just buy it?
[04:51:33] <fenn> ammonium is an oxidizer also
[04:51:48] <les_w_away> yeah. Check out Brownell's though
[04:52:10] <les_w_away> BTW I hope to get my anodizing line up after the suits go
[04:52:38] <les_w_away> have all colors
[04:52:43] <fenn> i just ordered a bunch of polishing/plating stuff, and i can't find it now!
[04:52:54] <fenn> it must be hiding in plain sight
[04:53:03] <Jymmm> les_w_away Brownell ???
[04:54:06] <les_w_away> I ordered a couple hundred dollar kit. Has all colors of mil spec dyes. I need containers, agitators, heaters etc
[04:54:10] <les_w_away> yeah
[04:54:14] <les_w_away> google
[04:54:37] <les_w_away> gunsmith supply
[04:54:43] <Jymmm> les_w_away I did google... got guns, skools, vineyards, doctors,
[04:54:46] <Jymmm> oh heh
[04:54:48] <les_w_away> but all sorts of metal finishing
[04:55:07] <Jymmm> les_w_away do they work on woods though?
[04:55:17] <les_w_away> no
[04:55:27] <fenn> rusty wood??!! :)
[04:55:28] <Jymmm> the stuff I bought works on anything paintable
[04:55:34] <les_w_away> sometimes chemicals are used on wood
[04:55:48] <Jymmm> fenn: Yep, rusty wood
[04:56:17] <les_w_away> potassium permanganate
[04:56:25] <les_w_away> nitric acid
[04:56:32] <les_w_away> sodium hydroxide
[04:56:41] <fenn> none of which are your friend
[04:56:56] <les_w_away> right
[04:57:25] <Jymmm> fair enough... this stuff conforms to ASTM d-4236
[04:58:00] <les_w_away> I need some nitric for curly maple...can't get it cheap
[04:58:08] <les_w_away> rain water?
[04:58:23] <Jymmm> les_w_away bottled drinking water =)
[04:58:29] <les_w_away> haha
[04:58:37] <fenn> i didn't just make up the term "orbital boring" did I? only get 4 hits on google
[04:58:55] <les_w_away> really, $50/liter tech grade...that's crazy
[04:59:09] <fenn> dont want people making bombs and stuff
[04:59:23] <les_w_away> fenn I think you did. I understand it, but never heard the term.
[04:59:30] <les_w_away> congradulations.
[04:59:30] <Jymmm> les_w_away: can you use citric acid?
[04:59:48] <les_w_away> yeah in orange juice
[05:00:04] <fenn> you can get citric acid at a health food store
[05:00:29] <fenn> i put it on my feet to keep them from rotting :/
[05:00:32] <les_w_away> just nitric treated curly maple is supposed to be spectacular...I have seen it and it ws
[05:00:35] <Jymmm> you can get it in 25 lb bags too
[05:00:50] <les_w_away> sounds like dirt.
[05:01:02] <Jymmm> les_w_away used in wine making
[05:01:11] <les_w_away> right
[05:01:46] <Jymmm> what/how is nitric acid made from?
[05:02:49] <les_w_away> anyway nitric acid cost about as much as dirt too. atmosphere is 78% nitrogen. $50a liter. it's this "911" thing.
[05:03:13] <fenn> it's been like that for a lot longer
[05:03:21] <les_w_away> really
[05:03:27] <les_w_away> haz mat regs?
[05:03:28] <fenn> since the 80's i think
[05:04:22] <les_w_away> jymmm,nitric acid is air+ water+ energy
[05:04:38] <fenn> but, so are you, if you think about it
[05:04:47] <les_w_away> heh
[05:04:48] <fenn> add a pound of trace minerals or so
[05:05:00] <les_w_away> really need those though
[05:07:02] <les_w_away> well, off to bed for me . big day tomorrow
[05:07:18] <les_w_away> then, I hope, some rest
[05:07:45] <fenn> good luck
[05:07:52] <les_w_away> later! thanks
[05:11:31] <Jymmm> G'Night
[05:54:04] <fenn> yeehaw
[05:54:17] <fenn> just ripped the z axis out of its bearings
[05:58:51] <Jymmm> and that's a good thing?
[09:43:39] <fenn> mornin alex
[09:44:40] <alex_joni> morning
[10:05:39] <Jacky^afk> Jacky^afk is now known as Jacky^
[11:20:37] <alex_joni> what's up?
[11:26:22] <Jacky^> hi alex_joni
[11:26:45] <Jacky^> tryng to cut again this relief with a smallest cutter .. http://digilander.libero.it/jackydgl0/annamaria.jpg
[11:27:25] <alex_joni> Jacky^: didn't see your pin on the map...
[11:27:27] <Jacky^> first cut was very bad :/
[11:27:43] <alex_joni> http://www.frappr.com/emctheenhancedmachinecontroller
[11:27:43] <Jacky^> what pin ?
[11:28:17] <Jacky^> :D
[11:28:29] <Jacky^> cool
[11:30:03] <Jacky^> hehe .. let me finish the new machine ]:P
[11:30:43] <Jacky^> nice, I didint know frappr..
[12:13:24] <alex_joni> alex_joni has changed the topic to: "Welcome to the Enhanced Machine Control forum - Support and development of a linux based CNC control. | Home: www.linuxcnc.org | Regular Developer's meetings every Sunday 14:00-18:00 GMT | wiki up @ http://wiki.linuxcnc.org | EMC usage map: http://www.frappr.com/emctheenhancedmachinecontroller"
[13:05:45] <anonimasu> hi
[13:06:26] <alex_joni> hello
[13:06:31] <alex_joni> home?
[13:06:32] <anonimasu> yes
[13:06:33] <anonimasu> :)
[13:06:36] <anonimasu> finally
[13:10:20] <alex_joni> cool.. then you can add yourself to the map :P
[13:11:04] <anonimasu> but I dont have any pictures of my machine :)
[13:11:08] <anonimasu> it havent arrived yet
[13:11:35] <alex_joni> add those later ;)
[13:12:29] <anonimasu> ok
[13:13:15] <anonimasu> later tonight though
[13:13:22] <anonimasu> need to look at the map to find the exact spot ;)
[13:13:33] <alex_joni> heh ;-)
[13:13:43] <anonimasu> * anonimasu hopes that the mill lands in good condition tomorrow
[13:13:46] <anonimasu> * anonimasu is anxious
[13:14:43] <anonimasu> alex_joni: the eos320d were cheaper here then in us
[13:14:57] <alex_joni> 320? never heard of those
[13:15:12] <anonimasu> err 350
[13:15:29] <anonimasu> um
[13:15:49] <anonimasu> yeah
[13:16:12] <anonimasu> ~700eur
[13:42:48] <rayh> rayh is now known as rayh-away
[14:14:39] <rayh-away> got a question about linksp and linkps in HAL
[14:14:52] <alex_joni> shoot
[14:15:16] <alex_joni> it's the same, but linksp links a signal to a pin, and linkps links a pin to a signal
[14:15:26] <alex_joni> so it's only semanthics that differ
[14:15:59] <rayh-away> Is the sp v ps dependent upon the order you list the sigs and pins on the line after
[14:16:16] <alex_joni> sp = signal, pin
[14:16:21] <alex_joni> ps = pin, signal
[14:16:25] <rayh-away> k
[14:16:32] <alex_joni> the linkage is the same..
[14:16:40] <alex_joni> only the order of the parameters is inverted
[14:16:45] <alex_joni> * alex_joni uses only linksp
[14:17:03] <rayh-away> It would make reading logical sense to follow the path say from
[14:17:32] <rayh-away> iocontrol out to hal in to cl in
[14:18:11] <rayh-away> so that the reader can see the sense of direction
[14:18:45] <rayh-away> Thanks alex
[14:19:18] <alex_joni> that's why both versions exist
[14:19:30] <alex_joni> so you can put the one which makes it more readable to you..
[14:22:01] <lerman> alex_joni: I just reconstructed my lost changes and built. But I can't run. I get:
[14:22:03] <lerman> emc@JerryII:~/EMC2/emc2$ sudo scripts/emc.run sim.ini
[14:22:04] <lerman> Starting emc...
[14:22:06] <lerman> Version: 1.2
[14:22:07] <lerman> Machine: EMC-HAL
[14:22:09] <lerman> HAL: ERROR: Can't find program 'bin/halscope'
[14:22:12] <lerman> HAL config file core_sim.hal failed.
[14:22:12] <lerman> Shutting down and cleaning up EMC...
[14:22:13] <lerman> rtai_hal: Device or resource busy
[14:22:15] <lerman> adeos: Device or resource busy
[14:22:17] <lerman> ERROR: Could not unload 'rtai_hal'
[14:22:18] <lerman> ERROR: Could not unload 'adeos'
[14:22:19] <lerman> Cleanup done
[14:22:21] <lerman> Any ideas?
[14:22:56] <lerman> * lerman is sorry to interrupt you ongoing discussions
[14:23:17] <rayh-away> Something is hanging up in the rt stuff so the modules won't go away.
[14:23:51] <rayh-away> I've seen this often when I try to run several rt kinds of programs at the same time.
[14:24:12] <lerman> No. I think the problem is that it can't find bin/halscope -- but it is there and executable.
[14:25:00] <lerman> The unload problems are a separate issue. I've manually rmmod'ed them and when I try to restart, I get the same HAL ERROR.
[14:25:07] <rayh-away> Right. That is what shows up as the cause of the failure
[14:25:20] <rayh-away> but you will get another set of failures when you try to restart.
[14:25:57] <rayh-away> The only changes to the set of files is in your interpreter?
[14:26:33] <lerman> That is correct (to the best of my knowledge).
[14:30:16] <rayh-away> You could comment out the last couple of lines in core_sim.hal and see what happens next.
[14:30:25] <lerman> To give a little more detail: I had built a working version. The alex_joni helped me create a new branch. In the process of doing stuff, I accidently deleted my source. So, I created a copy of the new branch (using cp -a). Then I was able to save most of my changes because I had a emacs open with most of the files in it. This AM I made the rest of the changes and rebuilt. But it wouldn't...
[14:30:26] <lerman> ...run. (I got the above errors). Conceivably, the source from which alex_joni created my branch is NG. (But I have no evidence). I suppose I could make a new copy and try again.
[14:31:41] <rayh-away> Okay. It looks like some essential executable is gone.
[14:32:07] <lerman> Possibly -- but bin/halscope is present.
[14:32:15] <rayh-away> Since the rest of emc2 remains the same, perhaps a copy from an ordinary emc2 checkout
[14:33:01] <lerman> I'm walking back to the shop to try without the halscope. BRB.
[14:35:15] <alex_joni> lerman: my bad
[14:35:19] <alex_joni> it was my problem..
[14:35:23] <alex_joni> still there?
[14:35:39] <lerman> I'm back
[14:35:45] <alex_joni> ok.. it was my mistake
[14:35:56] <alex_joni> I did make some changes as part of make install I am working on
[14:36:05] <alex_joni> seems I forgot to fix hal_sim
[14:36:19] <alex_joni> core_sim.hal
[14:36:32] <alex_joni> edit it if you can and change bin/halcmd to ../bin/halcmd
[14:36:40] <alex_joni> can you do that and say if it works?
[14:37:31] <lerman> I'll do that now. But when I disabled halscope, I got .../configs/bin/emcsh was not found. So, it seems like there might be a similar error there.
[14:38:03] <alex_joni> yup.. seems like that.. let me look
[14:40:58] <alex_joni> can you provide the whole error?
[14:41:08] <alex_joni> I mean: who reports that error? and where?
[14:41:31] <lerman> I need to go back to the shop. BRB.
[14:41:47] <alex_joni> ok..
[14:42:09] <alex_joni> no ssh available? .. that would be a bit more confortable
[14:44:39] <lerman> I'm running on a PC and would have to setup X or vnc. Anyway. the errors:
[14:44:40] <lerman> emc@JerryII:~/EMC2/emc2$ sudo scripts/emc.run sim.ini
[14:44:42] <lerman> Starting emc...
[14:44:43] <lerman> Version: 1.2
[14:44:45] <lerman> Machine: EMC-HAL
[14:44:46] <lerman> Version: 1.2
[14:44:48] <lerman> Machine: EMC-HAL
[14:44:50] <lerman> sizeof(emcmot_struct_t) (total shmem): 607532
[14:44:51] <lerman> sizeof(emcmot_command_t): 264
[14:44:53] <lerman> sizeof(emcmot_status_t): 1032
[14:44:54] <lerman> sizeof(emcmot_debug_t): 157940
[14:44:56] <lerman> sizeof(emcmot_config_t): 52
[14:44:57] <lerman> sizeof(emcmot_error_t): 8212
[14:44:59] <lerman> sizeof(emcmot_log_t): 440020
[14:45:00] <lerman> sizeof(emcmot_joint_t): 6584
[14:45:02] <lerman> sizeof(emcmot_joint_status_t): 84
[14:45:03] <lerman> sizeof(CUBIC_STRUCT): 136
[14:45:05] <lerman> sizeof(emcmot_comp_t): 6164
[14:45:06] <lerman> emcTaskIssueCommand()
[14:45:08] <lerman> Issuing EMC_TRAJ_SET_TERM_COND -- (+222,+16, +0, +2,)
[14:45:10] <lerman> emcTaskIssueCommand() returning: 0
[14:45:12] <lerman> emcTaskIssueCommand()
[14:45:14] <lerman> Issuing EMC_TRAJ_SET_ORIGIN -- (+224,+60, +0,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,)
[14:45:16] <lerman> emcTaskIssueCommand() returning: 0
[14:45:17] <lerman> /home/emc/EMC2/emc2/tcl/mini.tcl: line 3: /home/emc/EMC2/emc2/configs/bin/emcsh: No such file or directory
[14:45:19] <lerman> /home/emc/EMC2/emc2/tcl/mini.tcl: line 3: exec: /home/emc/EMC2/emc2/configs/bin/emcsh: cannot execute: No such file or directory
[14:45:23] <lerman> Shutting down and cleaning up EMC...
[14:45:24] <lerman> rtai_hal: Device or resource busy
[14:45:27] <lerman> adeos: Device or resource busy
[14:45:29] <lerman> ERROR: Could not unload 'rtai_hal'
[14:45:30] <lerman> ERROR: Could not unload 'adeos'
[14:45:33] <lerman> Cleanup done
[14:45:34] <alex_joni> ok.. seems mini is the problem
[14:45:44] <alex_joni> * alex_joni didn't touch mini.tcl yet :(
[14:45:48] <alex_joni> hang on 5 mins.. ok?
[14:46:17] <lerman> Sure...
[14:46:39] <alex_joni> easy fix: switch to tkemc, long fix: wait 5 minutes :)
[14:47:37] <rayh-away> Ah. Those damned hard coded file locations.
[14:47:44] <lerman> I'll wait.
[14:47:48] <alex_joni> rayh-away: not hardcoded anymore
[14:48:31] <rayh-away> I gotta say that I liked EMC better when it was all in one place!
[14:48:33] <lerman> Some good news and some bad news. They are no longer hard coded -- but some of them are wrong ;-)
[15:00:41] <lerman> While we are waiting, has anyone looked at the realtime capabilities of the new 2.6... kernels? It seems that they should work WITHOUT any additional extensions. That would let us run without any kernel code (except possibly some hardware drivers).
[15:02:25] <lerman> I saw some test results that seemed to be reporting 25 usec latencies. While that is not fast by todays standards, it is fast relative to the servo update times we usually run at.
[15:03:26] <CIA-5> 03alex_joni * 10emc2/tcl/mini.tcl: added the EMC2_EMCSH variable to mini.tcl, this is needed to find emcsh (mostly on installed systems)
[15:03:35] <alex_joni> lerman: can you cvs up?
[15:03:44] <alex_joni> * alex_joni suspects that might be a problem..
[15:03:52] <lerman> If you tell me the command.
[15:03:57] <alex_joni> cvs up
[15:04:46] <lerman> It ran.
[15:04:49] <alex_joni> lerman: the branch is fixed to the point in time when the branching happened
[15:05:04] <alex_joni> so I think mini.tcl won't get updated :(
[15:05:24] <alex_joni> look at emc2/tcl/mini.tcl ... the first 4 lines are of intered
[15:05:27] <alex_joni> interest
[15:05:35] <alex_joni> if they look like this it's ok:
[15:05:35] <alex_joni> #!/bin/sh
[15:05:35] <alex_joni> # the next line restarts using emcsh \
[15:05:35] <alex_joni> export EMC2_TCL_DIR
[15:05:35] <alex_joni> # the next line restarts using emcsh \
[15:05:36] <alex_joni> exec $EMC2_EMCSH "$0" "$@"
[15:06:46] <lerman> I hear your words but I don't grok. The first 4 lines:
[15:06:48] <lerman> #!/bin/sh
[15:06:49] <lerman> # the next line restarts using emcsh \
[15:06:53] <lerman> exec bin/emcsh "$0" "$@"
[15:06:53] <lerman> # Autosi
[15:08:08] <lerman> And still can't find halscope :-(
[15:11:16] <alex_joni> ok.. change those
[15:11:25] <alex_joni> to the lines I pasted
[15:12:48] <lerman> Got:
[15:12:50] <lerman> Error in startup script: can't read "EMC2_EMCSH": no such variable
[15:12:51] <lerman> while executing
[15:12:53] <lerman> "exec $EMC2_EMCSH "$0" "$@""
[15:12:55] <lerman> (file "/home/emc/EMC2/emc2/tcl/mini.tcl" line 4)
[15:14:07] <lerman> alex_joni: you said 4 lines, but gave me three lines.
[15:16:24] <lerman> Sorry, I missed a line.
[15:16:49] <lerman> New error:
[15:16:50] <lerman> emcTaskIssueCommand() returning: 0
[15:16:52] <lerman> Application initialization failed: no display name and no $DISPLAY environment variable
[15:16:53] <lerman> Error in startup script: invalid command name "bind"
[15:16:55] <lerman> while executing
[15:16:56] <lerman> "bind all <MouseWheel> "+wheelEvent %X %Y %D""
[15:16:58] <lerman> (file "/home/emc/EMC2/emc2/tcl/mini.tcl" line 73)
[15:16:59] <lerman> Shutting down and cleaning up EMC...
[15:17:01] <lerman> rtai_hal: Device or resource busy
[15:17:03] <lerman> adeos: Device or resource busy
[15:17:04] <lerman> ERROR: Could not unload 'rtai_hal'
[15:17:29] <lerman> Could be related to the fact I'm not on my real system. BRB
[15:20:46] <lerman> OK. It starts. Still no halscope -- but I don't need it. I'm back in business (time to debug).
[15:21:00] <lerman> * lerman says thank you.
[15:21:15] <alex_joni> * alex_joni says sorry...
[15:22:13] <alex_joni> * alex_joni goes home...
[15:22:15] <alex_joni> bye guys
[15:22:24] <lerman> bye.
[15:33:05] <chinamill> * chinamill is away: working
[16:21:32] <anonimasu> hm
[16:43:56] <k4ts> hi
[16:45:20] <anonimasu> hi
[17:17:33] <rayh-away> Hi alex.
[17:17:37] <alex_joni> hello ray
[17:17:41] <rayh-away> couple of issues with cl and hal
[17:17:45] <alex_joni> * alex_joni just got home
[17:17:47] <alex_joni> shoot
[17:17:48] <anonimasu> wb
[17:18:05] <alex_joni> err..not me (shoot that is) :)
[17:18:15] <rayh-away> if a classic ladder line in .hal fails.
[17:18:29] <rayh-away> the reply is always to the first cl line encountered.
[17:18:40] <rayh-away> error message reply
[17:18:58] <rayh-away> I'll see if I can get petev to look at this.
[17:19:03] <alex_joni> * alex_joni knows little about cl
[17:19:11] <alex_joni> probably best..
[17:19:15] <alex_joni> but I can look for it
[17:19:22] <alex_joni> let me commit the stuff I broke first
[17:19:25] <alex_joni> ;-)
[17:19:27] <rayh-away> The second is how to invert the outputs from a cl coil
[17:19:34] <rayh-away> you bet.
[17:19:51] <rayh-away> is there an easy way to invert a signal.
[17:20:19] <alex_joni> in HAL yes, in CL don't know..
[17:20:32] <rayh-away> how in hal
[17:21:43] <alex_joni> where does the signal come from?
[17:23:15] <rayh-away> What I need to do is invert iocontrol.0.estop-out
[17:24:00] <alex_joni> there is a "not" component in blocks
[17:24:13] <rayh-away> I didn't see that in the doc.
[17:24:33] <alex_joni> probably not in the doc.. but it's there
[17:24:55] <rayh-away> so I load the blocks module
[17:24:57] <alex_joni> just like sum2, mux2, comp .. etc
[17:25:06] <rayh-away> k
[17:25:10] <rayh-away> I'll try it.
[17:25:14] <alex_joni> the blocks module, with param not=1
[17:25:21] <rayh-away> Thanks
[17:25:22] <alex_joni> that will give you one negator
[17:25:24] <alex_joni> np
[17:35:52] <chinamill> * chinamill is back
[17:36:07] <chinamill> * chinamill is back
[17:36:13] <alex_joni> wb
[17:36:25] <chinamill> * chinamill is away: gone for a while
[17:37:51] <CIA-5> 03lerman 07lerman-interp * 10emc2/docs/AUTHORS: Change interpreter to support flow of control, subroutines, and relational operators.
[17:37:55] <CIA-5> 03lerman 07lerman-interp * 10emc2/src/emc/rs274ngc/ (8 files): Change interpreter to support flow of control, subroutines, and relational operators.
[17:39:40] <lerman> Well, I'll be dipped. There appears to be some type of daemon running that generates messages to this channel. So..., as you can see my changes are in.
[17:39:55] <alex_joni> CIA is the one ;)
[17:40:01] <alex_joni> it reports any commits
[17:40:01] <rayh-away> We need a block comment command in a .hal file.
[17:40:01] <cradek> yep, we can't get away with anything around here
[17:40:03] <anonimasu> lol
[17:40:23] <alex_joni> also, it's sending mail to the emc-commit list
[17:40:33] <alex_joni> which you should subscribe too, now as a developer :)
[17:40:37] <Jacky^> :P
[17:40:51] <alex_joni> hey chris
[17:40:57] <lerman> Well, I'm off to lunch. "See you later." Ken
[17:40:57] <cradek> hello
[17:41:10] <alex_joni> see you later ken :)
[17:41:20] <cradek> hey alex can you tell me if this german is spam:
[17:41:35] <cradek> Ich möchte Sie auch dadrauf hinweisen, das auf der Seite nun erotische Inhalte angeboten werden.
[17:41:48] <alex_joni> not spam, pr0n
[17:41:48] <alex_joni> :D
[17:42:01] <cradek> ok, I figured it was, thanks
[17:42:20] <alex_joni> I want to advise you, that on the website there is only erotic content.
[17:42:26] <cradek> it was so short and simple I thought it might be a real email
[17:42:29] <rayh-away> one persons spam is another persons ...
[17:42:30] <alex_joni> or whatever that would sound like in proper english..
[17:42:39] <alex_joni> rayh-away: what?
[17:43:02] <alex_joni> cradek: you do know your ways around scripts & such
[17:43:02] <cradek> it's very rare to get a spam in my inbox
[17:43:04] <rayh-away> We need a block comment mode in a .hal configuration file.
[17:43:09] <cradek> alex_joni: oh yeah
[17:43:25] <alex_joni> might I ask thee to throw an eye on the make install work I did?
[17:43:38] <rayh-away> * rayh-away goes looking for the config error
[17:43:43] <alex_joni> rayh-away: what's wrong with # ?
[17:43:46] <cradek> upping...
[17:44:30] <cradek> alex_joni: is it in src/Makefile?
[17:44:41] <alex_joni> it's all over..
[17:44:42] <alex_joni> :(
[17:44:51] <cradek> # Notes on targets:
[17:44:53] <cradek> # install - installs emc2 files to system directories
[17:44:56] <cradek> # install - right now this does nothing
[17:45:00] <alex_joni> lots of things need to get changed
[17:45:08] <alex_joni> yeah.. that's to scare people away :D
[17:46:10] <alex_joni> cradek: the problem is with run-in-place, and run-as-installed
[17:46:33] <alex_joni> most of the components have/had the current dir structure built-into
[17:46:38] <alex_joni> including the GUI
[17:46:42] <alex_joni> GUI's
[17:46:54] <cradek> yeah, I saw some of those changes go by
[17:47:40] <alex_joni> I'm not sure how it would be best
[17:47:57] <alex_joni> maybe have one file that tells where each dir is, and that file gets sourced by scripts
[17:48:03] <alex_joni> or read by programs
[17:48:13] <alex_joni> because the ini is definately not the place for that...
[17:48:34] <cradek> sometimes, make install edits scripts
[17:49:05] <cradek> making an identical script work in-place and also installed seems hard
[17:49:52] <alex_joni> yeah.. I did a second script, which gets touched by configure
[17:50:05] <alex_joni> but it's the same for tkemc.tcl, mini.tcl
[17:50:10] <alex_joni> and also some other files maybe
[17:50:16] <alex_joni> mini for example:
[17:50:37] <alex_joni> it reads PROGRAM_PREFIX from the ini...
[17:51:53] <alex_joni> and adds that to the current directory..
[17:52:07] <alex_joni> but that's not very nice imho
[17:52:31] <cradek> I think maybe make install should just change the scripts to work
[17:52:41] <cradek> once installed, you never need/want to move a directory
[17:52:58] <cradek> the ini file should be for the things the user wants to change/customize
[17:53:11] <cradek> I'm not sure about this, just thinking outloud
[17:53:19] <alex_joni> so make install should update all tcl scipts, and run scripts, etc. ?
[17:54:01] <alex_joni> * alex_joni doesn't like that...
[17:54:05] <cradek> or, it's true, make install could generate a [tcl script] that could be read by the other programs
[17:54:10] <cradek> but where to put that script?
[17:54:20] <alex_joni> in the config dir
[17:54:25] <alex_joni> that's a pretty default dir
[17:54:28] <cradek> where is the config dir?
[17:54:36] <cradek> you don't know, only make install knows
[17:54:37] <alex_joni> and all the scripts get run from there (at least now)
[17:54:43] <alex_joni> * alex_joni does know :)
[17:55:05] <cradek> but I want my config files in /opt/local/etc/emc
[17:55:12] <alex_joni> it's $sysconfdir in Makefile.inc
[17:55:33] <cradek> so I can ./configure --with-sysconfdir=/opt/local/etc/emc or something?
[17:55:44] <alex_joni> you have --with-prefix
[17:55:52] <alex_joni> prefix is usually /usr/local
[17:55:58] <cradek> ok, I see
[17:56:02] <alex_joni> and sysconfdir is etc
[17:56:08] <alex_joni> so /usr/local/etc actually
[17:56:13] <cradek> maybe I don't understand the problem
[17:56:27] <cradek> can you explain exactly what you're asking for my opinion about?
[17:56:37] <alex_joni> * alex_joni is now sure ;)
[17:56:39] <alex_joni> not
[17:56:43] <cradek> haha
[17:56:48] <cradek> ok, then that's my answer too
[17:57:03] <alex_joni> guess I need a second opinion.. whatever that would be..
[17:57:03] <cradek> (I'm not sure either)
[17:57:06] <alex_joni> hmm. lets rewind a bit
[17:57:16] <alex_joni> 1. we got run-in-place
[17:57:26] <alex_joni> ahhh.. best if we look at directory.map
[17:57:30] <alex_joni> it's in emc2/
[17:57:40] <cradek> what is the goal here?
[17:57:58] <cradek> is it to allow an installation, then remove the source tree, then have "emc" be in the system path?
[17:58:17] <cradek> (that should be the goal, I think)
[17:58:21] <alex_joni> something like that, with the added functionality of making rpm's and deb's
[17:58:28] <alex_joni> which is very much related
[17:58:46] <alex_joni> only thing you have an $DESTDIR before the $prefix usually
[17:58:46] <cradek> sure, that comes after you accomplish the first goal
[17:58:50] <alex_joni> yup
[17:59:11] <cradek> so, make install, then you no longer need the source tree
[17:59:13] <alex_joni> but the goal is to be able to install emc2 into LFS compliant places
[17:59:22] <cradek> right
[17:59:28] <alex_joni> no longer need it, but it would be nice if you could still use it
[17:59:40] <alex_joni> change/compile etc, till you are happy, then a new make install
[17:59:50] <cradek> I understand
[18:00:20] <jepler> it would be nice if enough files were installed so that axis could be built without the source tree too.
[18:00:21] <alex_joni> maybe I should start a wiki with the directories
[18:00:43] <alex_joni> and standard variable namings for them
[18:00:50] <alex_joni> jepler: can you make a list what's needed?
[18:01:23] <cradek> jepler: seems like there is a difference between emc and emc-devel
[18:01:26] <alex_joni> cradek: care to join efforts and clean up the emc.run script?
[18:01:48] <alex_joni> you talking about deb's now? or #channels?
[18:01:50] <cradek> % wc -l emc.run
[18:01:50] <cradek> 625 emc.run
[18:01:57] <cradek> I've seen worse, but not much
[18:02:18] <cradek> alex_joni: with rpm, things required to compile against a package are usually split out into a separate -devel.rpm
[18:02:28] <alex_joni> yes I know
[18:02:45] <jepler> cradek: sure, the packager might split it into a -devel package
[18:02:51] <alex_joni> but if it's only a few headers then we might squeez them into the normal package
[18:03:05] <alex_joni> right?
[18:03:08] <alex_joni> unforch I need to leave for a while
[18:03:09] <cradek> sure
[18:03:16] <alex_joni> * alex_joni goes for a massage *g*
[18:03:37] <alex_joni> but I'll think about this in that time..
[18:03:52] <cradek> sure, I will help with the run script, if you want
[18:03:54] <jepler> alex_joni: rs274.o libemc.so libnml.so (or ".a") and the files included by the stuff in extensions/
[18:04:02] <cradek> I think it's much worse than necessary
[18:04:05] <alex_joni> cradek: maybe you can look around the build/install procedure till then to get a feeling
[18:04:29] <alex_joni> jepler: I already install .so (or .a) stuff iirc
[18:04:34] <alex_joni> rs274.o is no problem
[18:04:40] <jepler> alex_joni: besides the headers, the really odd thing to want is rs274.o
[18:04:42] <alex_joni> likewise for the .hh
[18:04:47] <alex_joni> and .h
[18:05:03] <cradek> all the PIDOF/KILL_TASK stuff is stupid
[18:05:21] <alex_joni> how come?
[18:05:36] <cradek> you should keep a list of PIDs you start that need to be killed
[18:05:49] <cradek> KILL_ME_LATER="$KILL_ME_LATER $!"
[18:06:48] <cradek> instead, it forgets about them and later tries to figure out what they were
[18:07:54] <cradek> all the DEBUG_FILE stuff can be removed
[18:08:14] <cradek> and replaced with set -x; exec 2>$DEBUG_FILE
[18:09:54] <SWP_Away> SWP_Away is now known as SWPadnos
[18:10:32] <SWPadnos> If you want it to clean up after someone else, it needs to do what it does now ($PIDOF stuff)
[18:10:54] <cradek> that's true...
[18:11:32] <cradek> why not just use killall then?
[18:12:09] <SWPadnos> if they all had the same name (or portion), and no other program had that, it might work
[18:12:17] <cradek> trap "killall $EMCPROGRAMS; sleep 10; killall -9 $EMCPROGRAMS" 0
[18:12:37] <cradek> well, PIDOF can't fix that
[18:13:13] <cradek> maybe it should be left alone if it's working.
[18:13:23] <SWPadnos> heh - there is that :)
[18:13:39] <cradek> but when alex says "cleanup" I look at it with that in mind and see that it looks VERY complex compared to what I think should be necessary
[18:13:44] <SWPadnos> I don't generally advocate that type of thinking, but since I'm not making the changes ...
[18:14:18] <cradek> what does it do? start a half dozen programs, the gui being the last one, and then kills them all
[18:14:30] <SWPadnos> try it with killall, and if it works the same, I'm sure nobody would mind a 50-line reduction in emc.run
[18:15:25] <cradek> LOCKFILE=/tmp/emc.lock
[18:15:48] <cradek> does the LFS say where this kind of thing goes? In bsd I think it's /var/run
[18:16:20] <SWPadnos> I'm not sure. I do know that people dislike /tmp for security and race reasons
[18:16:42] <cradek> well I'm sure /tmp is the wrong place, I just don't necessarily know the right place!
[18:16:59] <SWPadnos> /var/lock maybe?
[18:17:10] <SWPadnos> or /var/tmp (does that one exist?)
[18:17:24] <cradek> looks like it's /var/run on my RH9 machine
[18:17:45] <SWPadnos> how about $TMP_DIR
[18:18:00] <SWPadnos> (or something like that)
[18:18:04] <cradek> no, it's not a temp file, it's a lock file
[18:18:12] <SWPadnos> right - nevermind
[18:19:55] <Jacky^> hehe
[18:20:14] <Jacky^> i received a mail from cncitalia (forum)
[18:20:33] <Jacky^> someone sayd chat inst a good thing for the website
[18:20:42] <Jacky^> they prefer the forum
[18:20:45] <Jacky^> O_O
[18:21:10] <SWPadnos> forums are better because they're easily searchable (in general), whereas IRC is good because it's interactive
[18:21:20] <Jacky^> he sayd chat ar as desert .. I reply try to join #emc ;P
[18:21:31] <Jacky^> SWPadnos: yeah, sure.
[18:22:04] <SWPadnos> cradek, it looks like /var/lock is a common place for lock files
[18:22:05] <Jymmm> * Jymmm invites SWPadnos to /join #forumloversunite
[18:22:20] <SWPadnos> no virtual uniting for me, thanks
[18:22:21] <Jacky^> hey Jymmm :P
[18:22:32] <cradek> I dislike web forums
[18:22:34] <Jymmm> hi Jacky^
[18:22:41] <cradek> they are a crappy replacement for usenet
[18:23:23] <Jymmm> cradek heh you mean a dumbass replacement for usenet
[18:23:56] <Jymmm> Lets see the bastards use UU Encode/decode
[18:23:59] <Jacky^> SWPadnos: i cant believe ..
[18:24:10] <SWPadnos> me either - I'm an atheist :)
[18:24:10] <Jacky^> there are a lot of plepoples around
[18:24:23] <Jacky^> they can plain a machine in 3 min !
[18:24:40] <Jacky^> i'm working since may 2005 :\
[18:24:45] <Jacky^> how is possible ?
[18:24:53] <Jacky^> they have a solution for all
[18:24:56] <Jacky^> :D
[18:24:59] <SWPadnos> I can design a machine in 3 minutes. It would suck, but I can design it.
[18:25:05] <Jacky^> hahaha
[18:25:15] <Jacky^> not really ..
[18:25:18] <SWPadnos> as they say, "the devil is in the details"
[18:25:30] <Jacky^> plain a good machine inst a joke
[18:25:31] <SWPadnos> if you want it rigid, then you need to spend time on that
[18:25:35] <Jymmm> SWPadnos: just go buy a vacuum if you wnat a sucking machine.
[18:25:47] <SWPadnos> if you want it accurate, you need to spend time on it
[18:26:00] <SWPadnos> Jymmm, I'm married, I don't need a sucking machine
[18:26:01] <Jacky^> thats what i'm doing
[18:26:17] <Jymmm> SWPadnos: no comment
[18:26:19] <SWPadnos> heh
[18:26:22] <Jacky^> :D
[18:26:30] <SWPadnos> (it hought that might shut you up :) )
[18:26:51] <Jymmm> SWPadnos: Since you insist... /join #bdsm
[18:27:35] <anonimasu> lol
[18:27:42] <Jymmm> Ha! now who shut who up!
[18:27:48] <SWPadnos> heh
[18:28:05] <SWPadnos> that's "who whut whom up?"
[18:28:17] <SWPadnos> or even better "who shut up whom?"
[18:28:18] <Jymmm> SWPadnos: Goony goo goo
[18:28:23] <SWPadnos> who was shut up by whom?
[18:28:40] <SWPadnos> from whom was whomever else shut up?
[18:29:10] <SWPadnos> "how much wood would a woodchuck chuck if a woodchuck could chuck wood?"
[18:29:37] <SWPadnos> uh-oh
[18:29:48] <SWPadnos> phew
[18:30:06] <Jacky^> Jymmm: do not use the force, take a biggest hammer :P
[18:30:20] <Jymmm> Jacky^: F12 IS my biggest hammer
[18:30:52] <Jymmm> SWPadnos Damn WordNazi!
[18:31:17] <SWPadnos> ve vill use ze korrekt vordz at all timez
[18:31:46] <SWPadnos> und ze korrekt grammar az vell
[18:31:53] <Jymmm> (bastard)
[18:32:11] <SWPadnos> possibly - it depends on your threshold for bastardization
[18:33:27] <Jymmm> for that, a lot. for stupidity, none.
[18:33:39] <SWPadnos> ah - then we agree :)
[18:33:46] <Jacky^> uhu , 2005 wine rady to drink :P
[18:33:54] <Jacky^> ready*
[18:34:07] <Jymmm> SWPadnos: I have 100% patients for ignorance, ZERO tolerance for stupidity!
[18:34:08] <Jacky^> * Jacky^ cin
[18:34:31] <Jacky^> Jymmm: already tried the new wine there ?
[18:34:37] <SWPadnos> how many ignorance patients do you have, herr doktorr? :)
[18:34:39] <Jymmm> * Jymmm no like wine
[18:34:48] <Jacky^> oh ..
[18:35:01] <Jacky^> gulp
[18:35:03] <Jymmm> SWPadnos Speek! Woof !
[18:35:10] <lerman> Regarding knowing the pids of the processes that were started: Don't remember them in a script; remember them in a file. Directory .../PIDS can contain files xyz.pid, abc.pid, etc where abc, xyz are the names of the applications and the contents of the files are the pids. Then, anyone can this stuff up. A little killemc script could kill some or all of the processes.
[18:35:18] <SWPadnos> heh
[18:35:20] <Jacky^> :)
[18:35:39] <SWPadnos> what if I loaded or unloaded a module by hand?
[18:36:09] <SWPadnos> and what happens when the machine is restarted,and the PIDs are wrong?
[18:36:29] <SWPadnos> nevermind - names take care of that last
[18:36:38] <Jacky^> ps -aux | grep dont help ?
[18:36:47] <lerman> Why would you do that if there are scripts to do that? When the machine is restarted, the startup script would get rid of the PIDs.
[18:37:15] <SWPadnos> that's another place to look for emc-related stuff
[18:37:42] <SWPadnos> (init.d/emccleanup)
[18:37:54] <lerman> Yeah, the grep would sort of work. But it would have to be exactly right. Afterall, user procs could have all sorts of things appearing on ps-aux.
[18:40:56] <rayh-away> rayh-away is now known as rayh
[18:41:28] <rayh> Okay gotta read back past what's here. What is the command to logger-aj
[18:41:38] <SWPadnos> logger_aj, bookmark
[18:41:39] <SWPadnos> See http://solaris.cs.utt.ro/irc/irc.freenode.net:6667/emc/2005-11-10#T18-41-38
[18:42:09] <rayh> okay that command is now written with a sharpie on the basement wall.
[18:42:14] <rayh> thanks
[18:42:16] <SWPadnos> (there's also the scrollback buffer in ksirc :) )
[18:42:18] <SWPadnos> np
[18:42:30] <rayh> It's further back than that.
[18:42:53] <SWPadnos> gotta increase the scrollback to 5000 lines, and put a "stupid filler conversation" filter on it :)
[18:43:17] <rayh> Right and my name would be included in the stupid list.
[18:43:30] <SWPadnos> depends on what you're saying :)
[18:44:10] <Jacky^> rayh: :D
[18:48:40] <Jacky^> wow 3mm ballnose is working very nicee :P
[18:50:02] <Jacky^> rayh: this was the latest job: 6 mm ballnose http://digilander.libero.it/jackydgl0/annamaria.jpg
[18:50:22] <Jacky^> my daughter, now tryng with 3 mm bit
[18:50:26] <Jacky^> give me a vote
[18:50:33] <Jacky^> from 1 to 10
[18:51:15] <Jacky^> im at 30 %, but 3 mm bit looks much better :D
[18:52:01] <Jymmm> Jacky^: what size and how long did it take?
[18:52:07] <SWPadnos> you'll probably still get some flattening of high spots in the hair
[18:52:24] <Jacky^> Jymmm: was small, 5x7 cm
[18:52:46] <Jacky^> now is biggest .. abou 13x18 cm
[18:52:49] <Jymmm> Jacky^ how long did it take to machine?
[18:52:57] <Jacky^> uhm
[18:53:01] <Jacky^> Jymmm: a lot :\
[18:53:09] <Jymmm> seriously
[18:53:09] <SWPadnos> OK - 13x8 should look pretty darned good using a 3mm mill
[18:53:14] <Jacky^> but now i'm using 0.2 mm as stepover
[18:53:35] <SWPadnos> 13x18, that is
[18:53:44] <Jacky^> first job about 2 hours
[18:53:59] <Jacky^> that you see in the url
[18:54:09] <Jacky^> SWPadnos: yeah
[18:54:18] <Jacky^> no,
[18:54:32] <Jacky^> thats in the pic is smallest
[18:54:48] <Jymmm> too dark
[18:54:51] <Jacky^> im machining a new piece right now, thats biggest
[18:54:59] <Jymmm> get some light and take the photo again.
[18:55:09] <Jacky^> Jymmm: no vern yet
[18:55:15] <Jacky^> just machined
[18:55:35] <Jacky^> the problem are the lines on the faces
[18:55:37] <Jacky^> face
[18:56:14] <Jacky^> now, im 30 % progress with 3 mm ballnose
[18:56:23] <Jacky^> details looks nice
[18:56:28] <Jacky^> much better
[18:57:55] <rayh> Nice job on the image Jacky^
[18:58:01] <Jacky^> 0.2 mm stepover take a lot of time :/
[18:58:18] <Jacky^> rayh: hehe thanks,
[18:58:30] <Jacky^> on the left image.. I know :P
[18:58:37] <Jacky^> not on the right
[18:58:47] <SWPadnos> rayh, do you know what JohnK's thinking was regarding signals in HAL (specifically, why aren't output pins automatically made into signals)?
[18:59:03] <Jacky^> brb giong for dinner
[18:59:12] <SWPadnos> enjoy
[18:59:14] <Jacky^> Jacky^ is now known as Jacky^afk
[18:59:59] <SWPadnos> I suppose that signals allow you to easily move a lot of "inputs" from one "output" to another, simply by changing the output that connects to the named signal
[19:01:36] <rayh> All good questions that we might put to him.
[19:01:50] <SWPadnos> OK - I just wans't sure if anyone else knew :)
[19:01:57] <rayh> At the Mazak a couple weeks back, we talked quite a bit about refactor
[19:02:05] <rayh> and what we might do.
[19:02:24] <SWPadnos> yeah. I was thinking about the complexity of setup
[19:02:32] <rayh> I see an opportunity to create a linkpp also.
[19:02:52] <SWPadnos> at this point, if you use more than 1/3 of the pins available, you have more setup than if outputs were automatically signals
[19:02:54] <rayh> where a real or virtual pin goes directly to a pin in cl.
[19:03:22] <SWPadnos> they're all virtual in HAL :) (the hardware side is invisible to the rest of HAL)
[19:03:52] <rayh> I was thinking of iocontrol and some of the other "high level" pins.
[19:03:56] <SWPadnos> ah
[19:04:08] <rayh> rather than real pins like parport.0.xxx
[19:04:10] <SWPadnos> I was thinking about the fact that to connect two pins, you have three lines
[19:04:14] <SWPadnos> addsig
[19:04:16] <SWPadnos> linksp
[19:04:21] <SWPadnos> linksp (or linkps)
[19:04:34] <rayh> Right.
[19:04:51] <SWPadnos> where onw would do - like linkpp (or just make outputs "signals", and inputs "pins")
[19:04:55] <SWPadnos> onw
[19:04:56] <SWPadnos> one
[19:05:05] <rayh> * rayh goes off to read swp's missive on flogging dead horses.
[19:05:16] <SWPadnos> heh -I'll just mosy on to other things now :)
[19:05:57] <SWPadnos> it may be a little disjointed - I edited it many times, both last night and this morning
[19:06:34] <SWPadnos> and I suspect that I'm missing some key information, since I haven't really looked at the code much lately
[19:06:51] <Jymmm> SWPadnos: get a hobby.... you have way too much time on your hands to be editing dead horse flogging so much.
[19:07:04] <SWPadnos> I was trying to make jerky
[19:08:36] <Jymmm> horse jerky?
[19:08:48] <SWPadnos> why not - we have emu and alligator jerky
[19:09:01] <lerman> On the subject of flogging dead horses: why are we (still) using the rt patches? Doesn't the 2.6 Kernel have a low enough latency for our requirements? Wouldn't that let us take a lot of 'stuff' out of the kernel modules and put them into user space?
[19:09:15] <SWPadnos> I think it's not "hard realtime"
[19:09:33] <SWPadnos> also, 25 uS latency is way too long for step generation, which most hobby users still need
[19:10:27] <lerman> As far as I can tell, it IS hard realtime. And step generation could still be in a driver, if necessary.
[19:11:00] <SWPadnos> is that 25 uS latency for userspace apps? (I was looking at your previous comments on the subject)
[19:11:57] <lerman> I'm (unfortunately) not sure. But I think so. I've got to get a Fedora Core 3 system installed so that I can make some of my own measurements.
[19:12:47] <SWPadnos> That would be great. Ther eis one other issue, though
[19:12:59] <SWPadnos> (minor being a relative word :) )
[19:13:21] <lerman> Wouldn't it be nice if this stuff could just install on a standard distribution? (But I suspect that most of the distros don't have the kernel build with the preemption enabled.
[19:13:29] <SWPadnos> Right now, HAL uses the kernel modules for dynamic linking.
[19:13:30] <lerman> )
[19:13:43] <SWPadnos> we would be on the path to DLL Hell if we started using "normal
[19:13:51] <SWPadnos> " dynmic linking
[19:13:56] <SWPadnos> dynamic
[19:14:11] <SWPadnos> We had some discussions on this topic some months ago
[19:14:35] <lerman> Dynamic linking is actually pretty easy. I've done it lots of times.
[19:15:05] <SWPadnos> I agree that it's easy, but it does mean that you have version issues, and many more files (as a user)
[19:15:11] <lerman> Do you have a pointer to the record of those discussions.
[19:15:28] <SWPadnos> I don't remember when they were - let me search a little
[19:17:00] <lerman> Hell, you have the same version issues if they are modules. And the same number of files for the same modularity. The difference is that you can build independently of the kernel. Also, it is a lot easier to debug and test.
[19:17:19] <SWPadnos> true
[19:18:05] <SWPadnos> OK look here (search for the word dynamic)
[19:18:09] <SWPadnos> http://193.226.12.129/irc/irc.freenode.net:6667/emc/2005-06-02.txt
[19:18:15] <lerman> And when a module 'hangs', you don't hang the system. You can still kill it and look at what is happening.
[19:18:25] <SWPadnos> and here: http://193.226.12.129/irc/irc.freenode.net:6667/emc/2005-04-16.txt
[19:19:02] <SWPadnos> and gdb comes in handy there as well :)
[19:19:54] <lerman> Yup. Although I prefer to debug the hard realtime stuff by using logs. No substitute for a traceback, though.
[19:22:00] <SWPadnos> and sim gets a lot easier as well, I'd imagine :)
[19:26:46] <lerman> So, I was reading some of the stuff and SWPadnos referenced the 650. That was the first machine I programmed. :-)
[19:27:14] <SWPadnos> heh you and my mother :) (had to think for a sec to get the reference)
[19:27:27] <SWPadnos> Don't forget the Xerox Sigma-6
[19:28:06] <lerman> I was in high school at the time.
[19:28:25] <SWPadnos> (we're on the emc IRC, so I'm thinking "I have no experience with a 650 machine - I have no real experience programming *any* CNC" :) )
[19:29:02] <SWPadnos> OK - my mother was in grad school :)
[19:30:16] <lerman> Whew. Than I'm probably not old enough to be your father.
[19:30:24] <SWPadnos> good thing
[19:30:30] <lerman> Than -> Then.
[19:30:58] <SWPadnos> and your high school probably had older equipment than a scientific graduate school
[19:31:57] <lerman> When I was in HS, I used a computer a Columbia University (the one in NYC).
[19:32:08] <SWPadnos> oh - well you could be pretty old then :)
[19:33:01] <lerman> Well, not as old as rocks, but probably as old as the dirt you get when you grind down rocks.
[19:33:20] <SWPadnos> OK. Well - I'm older than some sand in Hawaii :)
[19:34:06] <Jacky^afk> Jacky^afk is now known as Jacky^
[19:37:08] <rayh> SWPadnos: post looks interesting. I'll have to think about it for a while.
[19:37:24] <SWPadnos> OK. - thanks
[19:37:24] <rayh> Don't really want to get into a discussion of the location of estop.
[19:37:30] <lerman> Yeah, I'm reading it now.
[19:37:32] <rayh> that is a builder problem.
[19:37:39] <SWPadnos> heh - it's more about whether it's "e" or not :)
[19:37:54] <rayh> emc's problem with respect to estop is the chain needs to know that PC is going
[19:38:08] <rayh> and pc needs to know that estop is okay out there.
[19:38:27] <SWPadnos> emc definitely needs to repond to estop conditions, but whether it can initiate a true emergency stop is another debate
[19:38:59] <rayh> It must always be able to initiate an estop, if it faults.
[19:39:17] <lerman> Sure, why not initiate an emergency stop. Just don't put it on the path to other causes of emergency stop.
[19:39:39] <rayh> Why not?
[19:39:42] <SWPadnos> yes - I see a difference between "stop" and "estop"
[19:40:01] <SWPadnos> and the software can't be an required part of the estop shutdown process
[19:40:14] <SWPadnos> there are safety regulations that disallow it
[19:40:20] <rayh> Why would you not want the machine to go into estop if it had no motion controller.
[19:40:41] <rayh> Absolutely but you are reading the estop lit backwards.
[19:40:51] <SWPadnos> we may be saying the same thing differnetly
[19:40:57] <rayh> The computer can not intermediate the estop signal.
[19:41:26] <rayh> That does not mean that it can not be central to estop. Just another contact in the chain.
[19:41:51] <SWPadnos> right - it can cause a stop, and it needs to respond to an emergency stop, but it can't cause an emergency stop (an external charge pump might, but the software itself doesn't)
[19:42:10] <rayh> You would not want to read into cl the estop chain and then somewhere else in the ladder trip the real estop.
[19:42:27] <rayh> No still wrong.
[19:42:47] <rayh> The computer can cause an estop.
[19:43:13] <SWPadnos> how? (ie, what does the user or computer do to get an estop to happen)
[19:43:16] <rayh> It can be just another sig in the list of sigs that must be true for estop to be released.
[19:43:58] <rayh> US requires a NC loop.
[19:44:10] <SWPadnos> the RT system may be reliable enough for emergency stop control (but it would be hard to prove that)
[19:44:19] <rayh> If all the sigs are not closed, it will not come out of estop.
[19:44:21] <SWPadnos> userspace definitely can't be involved
[19:44:48] <SWPadnos> again - it's the difference between emergency stop and just "stop"
[19:44:59] <rayh> Think of the computer as pulling a dry contact.
[19:45:17] <SWPadnos> I understand how the interlock works, I think this is a terminology problem
[19:45:17] <rayh> It is just one more contact in the external estop chain.\
[19:45:43] <SWPadnos> an emergency stop for me is "shut down the machine or somebody is going to get hurt"
[19:45:51] <rayh> Right.
[19:46:03] <SWPadnos> in that case, a button on a GUI isn't reliable enough to initiate that type of shutdown
[19:46:06] <rayh> so why can't a pc issue that
[19:46:21] <rayh> Certainly it is as reliable as any other.
[19:46:31] <SWPadnos> no, it isn't
[19:46:32] <rayh> if the chain is normally closed.
[19:46:44] <rayh> all the elements are equal
[19:47:05] <SWPadnos> no - you're forgetting the long list of software that has to function correctly for the user action to propagate down to the RT layer
[19:47:50] <SWPadnos> starting with the X server, keyboard (or mouse) driver, video driver, NML (at the moment), kernel drivers, the task controller ...
[19:47:58] <rayh> No I'm not. I'm saying that if they all are NOT working properly, it will NOT come out of estop.
[19:48:22] <SWPadnos> That's fine for allowing the machine to start, but what about *stopping* it?
[19:48:47] <rayh> Exactly the same. Any failure in the PC system will create an estop condition.
[19:49:00] <SWPadnos> remember JonE saying (some time back) that the GUI crashed, but EMC kept on running, and finishedthe part perfectly?
[19:49:07] <rayh> US rules will not permit only a software estop but it allows them.
[19:49:23] <rayh> That's cause he had no external estop.
[19:49:39] <SWPadnos> no - the GUI doesn't need to be ther for emc to function
[19:49:39] <rayh> I don't have any problem with a guy who wants to violate good practice.
[19:50:28] <rayh> Let me imagine an estop chain for a moment.
[19:50:29] <SWPadnos> it also depends on which industry rulebook you look at.
[19:50:43] <SWPadnos> shoot
[19:51:10] <rayh> +24 goes to a nc maintained estop button.
[19:51:42] <rayh> from there it threads it way through axis last limits.
[19:52:05] <rayh> from there it goes through the normally open contact on a relay.
[19:52:28] <rayh> from there it threads it's way through a half dozen normally closed thermal overloads.
[19:52:57] <rayh> and pulls a coil on what we call the estop relay.
[19:53:09] <rayh> Got a problem with that?
[19:53:16] <SWPadnos> nope - full agreement
[19:53:34] <rayh> Good cause I was about to read you the JIC page.
[19:53:43] <SWPadnos> Just In Case?
[19:54:04] <rayh> Now connect the PC to pull that NO contact on the coil in the middle.
[19:54:16] <SWPadnos> (by the way - I'm looking at this from the standpoint of the much more paranoid semi-S2 specs)
[19:54:39] <rayh> I believe that it's still permitted.
[19:54:51] <SWPadnos> yes it is
[19:54:52] <rayh> Look at the chunk on PLC and estop.
[19:55:25] <SWPadnos> that coil would most likely be driven by a charge pump software monitor (or there would be two coils)
[19:55:48] <rayh> I don't think that would make any difference.
[19:56:02] <SWPadnos> it does, but go on, we can come back to that
[19:56:14] <rayh> A PLC or PC must not be the only way an estop condition can be initiated.
[19:56:37] <SWPadnos> OK (I don't have a copy of the specs)
[19:56:39] <rayh> Except in the case of parallel voting.
[19:57:21] <rayh> In most specs 2 out of 3 is permitted.
[19:57:48] <rayh> I had a long conversation with a guy who is pushing 3 of 4.
[19:58:13] <SWPadnos> not much better, I'd guess
[19:58:18] <rayh> Most machine tools only have one.
[19:58:37] <rayh> and many hobby level folk do exactly the violation you are thinking of.
[19:59:22] <SWPadnos> yes. it is a different problem, since the average hobby machine won't crush you
[19:59:33] <SWPadnos> or explode
[19:59:36] <rayh> So true.
[20:00:14] <SWPadnos> the Semi-S2 spec I mentioned is for the semiconductor manufacturing industry, wher ethey deal with deadly chemicals, radiation, and motion :)
[20:01:05] <SWPadnos> needing to do things like evacuate the chlorine gas from a chamber when an E-stop occurs - that sort of thing
[20:01:40] <SWPadnos> the reason I even argue this is that user-space software can't be considered "emergency capable"
[20:01:43] <Jymmm> SWPadnos: waste of time... just drop the sulfric acid and be done with it
[20:01:54] <Jymmm> or ammonia
[20:02:13] <rayh> How about this LUPPER WORM TARGETS LINUX SYSTEMS
[20:02:34] <SWPadnos> when you pres F1 (or whatever) or click the pretty GUI button, a (very) long chain of events has to take place before even your TCL script sees the event
[20:02:36] <Jymmm> * Jymmm HATES bunny suits!
[20:03:32] <SWPadnos> after that, TkEMC asks another program to make a message to send to another program so it can ask another program to tell a driver turn off an output bit
[20:03:42] <rayh> Yes, and that is why the connected component has to be energized by the pc to release an estop rather than disable a run.
[20:04:08] <SWPadnos> turning the machine on isn't an emergency
[20:04:21] <SWPadnos> it's a problem with emergency response times
[20:04:40] <SWPadnos> a button has zero response latency, the average relay a few ms.
[20:04:46] <Jymmm> ESTOP should *NEVER* be computer controlled.
[20:04:52] <SWPadnos> you can get an extra half second or more out of user space
[20:04:55] <rayh> I can see that you favor removing the stop button from the tickle guis.
[20:05:00] <Jymmm> it's EMERGENCY STOP, no oh shit stop.
[20:05:09] <Jymmm> it's EMERGENCY STOP, not oh shit stop.
[20:05:10] <SWPadnos> no - I'd just call it "stop" rather than "E-Stop"
[20:05:29] <SWPadnos> but it depends on the machine logic :)
[20:05:32] <rayh> But you will permit it to be a part of the estop chain?
[20:05:43] <SWPadnos> it depends on the machine logic
[20:05:52] <lerman> But if the user mode code can respond in 100 usec, it is clearly farter than the few msec button. And if I'm sitting at the keyboard, I can hit F1 faster than I can reach the red button on my machine and pull it out.
[20:06:25] <SWPadnos> EStop should never be a pull switch - they're always push (by code, I believe)
[20:06:35] <lerman> But, what the heck, call it STOP instead of E-Stop if you like that.
[20:06:37] <Jymmm> or bump
[20:06:39] <rayh> I've always found that the real emergency makes it much easier to
[20:06:47] <SWPadnos> also, I'd bet that in an emergency you can't hit F1 faster than the BRS
[20:06:59] <lerman> You are correct. I have to pull it out to reset it (and often forget to).
[20:07:03] <rayh> pull something apart with a chain attached to my ankle as I run for the door.
[20:07:12] <SWPadnos> you have to find it furst, and what happens if you accidentally hit F2 first (whatever that does)?
[20:07:22] <SWPadnos> first
[20:07:26] <lerman> And you are right, again -- I generally go for the BRS.
[20:07:32] <rayh> f2 turns the machine off.
[20:07:39] <Jymmm> rayh you hope
[20:07:44] <SWPadnos> well - that might be OK then :)
[20:07:50] <rayh> as far as emc is concerned.
[20:07:57] <SWPadnos> for a hobby mill, there's no effective difference between estop and stop
[20:08:04] <Jymmm> and the kybd didn't come unplugged
[20:08:08] <SWPadnos> for a Haas, there may be
[20:08:20] <Jymmm> SWPadnos there may not be, but that shouldn't be the case.
[20:08:47] <SWPadnos> way back when, I sent an email to CCED talking about different kinds of stops, hold on a sec
[20:09:46] <SWPadnos> oops - it was the geckodrive list
[20:09:50] <rayh> My only concern is that there be unambiguous signals into and out of the PC that an integrator can use to tell the PC that an estop condition has happened out there
[20:10:05] <rayh> and a clear signal that says the PC is ready.
[20:10:11] <SWPadnos> yes - the PC should have an E-Stop in, and a stop output
[20:10:26] <rayh> "if you power it up, I can control it."
[20:10:29] <SWPadnos> and a ready output (plus a "machine read" input, possibly)
[20:10:34] <SWPadnos> ready, that is
[20:10:46] <SWPadnos> here are the four stops I envisioned:
[20:10:55] <SWPadnos> 1) User Pause: The operator wants to pause a program, and will probably
[20:10:56] <SWPadnos> continue later (maybe a tool change or single stepping)
[20:10:58] <SWPadnos> 2) Limit: One or more axes has hit a limit switch
[20:10:59] <SWPadnos> 3) Fault: Some problem has occurred in the system
[20:11:01] <SWPadnos> 4) E-Stop: Somebody might get hurt - the machine HAS to stop all motion
[20:11:02] <SWPadnos> as quickly as possible.
[20:11:03] <rayh> The nice thing about HAL is that you can call it what you like.
[20:11:10] <SWPadnos> yep
[20:11:17] <rayh> Nope don't work that way.
[20:11:22] <SWPadnos> but it's best if others can grok the meaning
[20:11:39] <rayh> It is a nice idea and you can name em what you like on your machine.
[20:12:02] <SWPadnos> ?
[20:12:28] <rayh> But I want this sig to be named estop-off
[20:12:58] <Jymmm> rayh: You want the computer to be able to pull ESTOP off?
[20:13:03] <rayh> On the mazak we have two switches on the end of each axis
[20:13:04] <lerman> Hey guys. Would one of you care to capture this and put it on the Wiki? Call it "ThoughtsOnESTOP".
[20:13:04] <SWPadnos> That's fine - it prevents the machine from turning on.
[20:13:35] <SWPadnos> I can't copy well from the Chatzilla log, but logger_aj is on the case :)
[20:13:50] <rayh> the first connects both to the emc limit and to the drive limit.
[20:14:11] <SWPadnos> the second to the "kill the machine before something gets bent" chain :)
[20:14:22] <rayh> If we hit one of these, the axis drive halts motion in that direction.
[20:14:28] <Jymmm> rayh: You want the computer to be able to "reset/disengage" ESTOP once hit?
[20:14:44] <rayh> emc says oops you hit a limit. wanna override?
[20:15:08] <SWPadnos> the computer should be a part of the estop chain, but only when the machine is turning *on*, not really for stopping it quickly
[20:15:09] <rayh> The second switch is an emergency stop.
[20:15:25] <SWPadnos> let me paste in the next paragraph from that email:
[20:16:07] <SWPadnos> (I guess there'd be a '0' in that list as well - programmed stop, like
[20:16:08] <SWPadnos> prompt for tool change or end of program)
[20:16:10] <SWPadnos> There are then (at least) two issues to deal with for each stop
[20:16:11] <SWPadnos> situation: how are the motors stopped, and does the controller maintain
[20:16:13] <SWPadnos> (or keep track of) machine position? You can stop by slowing the motors
[20:16:14] <SWPadnos> to 0 speed, along the programmed contour (essentially doing a F0
[20:16:16] <SWPadnos> override), by decelerating all motors at the max rate simultaneously, by
[20:16:17] <SWPadnos> applying a braking resistor and power supply related techniques, or by
[20:16:19] <SWPadnos> applying a physical brake.
[20:16:20] <SWPadnos> You just have to decide how you want to deal with each level of stop
[20:16:22] <SWPadnos> condition. You can choose to make 2, 3, and 4 all act the same - limit
[20:16:23] <SWPadnos> = fault = estop = stop immediately, don't care about keeping track of
[20:16:25] <SWPadnos> position. Or, decide that you only want to lose position (if possible)
[20:16:27] <SWPadnos> in a true E-Stop situation, so that faults are recoverable. Any E-Stop
[20:16:28] <SWPadnos> should not depend on software (including firmware) - it should be a
[20:16:30] <SWPadnos> physical switch or set of switches that causes the machine to stop as
[20:16:31] <SWPadnos> fast as possible.
[20:16:33] <SWPadnos> or two :)
[20:17:20] <lerman> I absolutely hate the way EMC handles hitting limits. It should stop motion in the same direction, but not require an override to more in the opposite direction (off the switch). (Or is that just EMC1 and the way I have it configured?)
[20:17:53] <rayh> lerman: You got it right.
[20:18:06] <rayh> It does require the override.
[20:18:41] <lerman> Is there a reason for that or is that just the way it was implemented?
[20:18:44] <rayh> probably because for most limit situations it doesn't know which direction is correct to correct the problem.
[20:19:16] <rayh> With a full complement of switches like the STG card has it would be possible to make it work the way you say.
[20:19:29] <Jymmm> rayh: you never responded to my question
[20:19:41] <rayh> On the Mazak the drive amp handles the direction.
[20:19:49] <rayh> sorry Jymmm
[20:20:01] <Jymmm> =)
[20:20:04] <lerman> For trivkins, it's trivial (duh). But I could imagine that for other kins, it isn't obvious.
[20:20:24] <rayh> <Jymmm> rayh: You want the computer to be able to "reset/disengage" ESTOP once hit?
[20:20:24] <rayh> <
[20:20:31] <Jymmm> yeah
[20:20:51] <rayh> Yes and no.
[20:21:13] <rayh> I don't want emc to be able to override a maintained contact external estop switch.
[20:21:40] <rayh> IMO -- and this is where I disagree with the current emc2 implementation
[20:22:15] <rayh> releasing the external estop should NOT put the emc into an estop-reset condition.
[20:22:28] <Jymmm> correct
[20:22:57] <Jymmm> you are saying it does?
[20:22:58] <rayh> The operator should have to go back to emc and pull it out of estop there
[20:23:18] <SWPadnos> as well as the external estop switch(es)
[20:23:22] <rayh> Well we really have a estop status variable that has three conditions.
[20:23:37] <rayh> SWPadnos: exactly
[20:24:19] <rayh> #1 is emc is in estop
[20:24:38] <rayh> #2 is emc-estop has been reset and is off.
[20:24:56] <rayh> (ie there is no estop condition being set by emc)
[20:25:13] <rayh> #4 is the machine is runnable.
[20:25:35] <rayh> Don't ask what happened to 0 and 3
[20:25:41] <Jymmm> heh
[20:26:23] <rayh> My preference would be that the pin that signals an external estop would cause #1
[20:27:22] <rayh> removing that signal would not cause a step to #2 unless some logic like cl or a hal loopback did it.
[20:27:23] <Jymmm> Anyone want to hear my two cents then shut up?
[20:27:54] <rayh> * rayh does the shutup so Jymmm can speak.
[20:29:13] <Jymmm> EMERGENCY STOP should be completely independant of the computer. NC momentary buttons should be acceptable. The computer should only be able to 1) Prevent startup and 2) Trigger an ESTOP. Nothing more, nothing less.
[20:29:39] <Jymmm> though it can monitor the main estop circitry.
[20:30:10] <Jymmm> * Jymmm stops off the soapbox
[20:30:12] <Jymmm> steps
[20:30:58] <SWPadnos> (2) there is questionable
[20:31:04] <Jymmm> rayh (I meant for ME to shut up, not others =)
[20:31:26] <Jymmm> SWPadnos: #2 in EMC case would be F1
[20:31:42] <Jymmm> (iirc)
[20:34:37] <rayh> It was time for me to show down anyway.
[20:34:53] <alex_joni> hello rayh
[20:35:05] <alex_joni> cradek: still around?
[20:35:13] <rayh> Hey.
[20:35:20] <alex_joni> a more relaxed alex_joni is around :D
[20:35:35] <SWPadnos> I just wouldn't call #2 "estop", because of the software concerns mentioned before
[20:35:49] <cradek> alex_joni: yes
[20:36:00] <alex_joni> cradek: still want to do it?
[20:36:05] <cradek> which it?
[20:36:35] <alex_joni> emc.run cleanup
[20:37:05] <cradek> I dunno alex
[20:37:18] <cradek> I see a lot in there that I think is stupid, but I freely admit that it's working fine
[20:38:07] <rayh> * rayh yields to SWPadnos. We need to change iocontrol to read iocontrol.0.stop-in
[20:38:24] <rayh> and iocontrol.0.stop-out
[20:38:39] <rayh> Then from there, I can call them any damn thing I want.
[20:38:54] <alex_joni> stop?
[20:38:57] <alex_joni> where did that come from?
[20:39:13] <alex_joni> * alex_joni starts to read emc.run
[20:39:18] <rayh> a discussion between swp and I
[20:39:30] <alex_joni> oh.. ok, don't let me interrupt you
[20:39:38] <alex_joni> rayh: already 31 users on the emc map :)
[20:39:55] <rayh> Great.
[20:39:57] <SWPadnos> woohoo - I win - yay!!! :)
[20:40:03] <rayh> I wish I could get there.
[20:40:07] <alex_joni> SWPadnos: how come?
[20:40:19] <rayh> Someday I'll get to a fast box and do it.
[20:40:21] <alex_joni> rayh: tell me where you are (zipcode) and I'll try to add you
[20:40:24] <SWPadnos> E-Stop + software = stop
[20:40:38] <cradek> alex_joni: can you edit entries on the map?
[20:40:38] <alex_joni> e-sstop
[20:40:38] <alex_joni> :D
[20:40:43] <rayh> 49920-9496
[20:40:46] <alex_joni> cradek: not edit, but remove
[20:40:50] <cradek> alex_joni: I meant to add my last name
[20:41:02] <alex_joni> * alex_joni tries..
[20:41:09] <rayh> I've got my own zip extension.
[20:41:47] <rayh> The .hal file now looks like
[20:42:09] <alex_joni> chris: no possibility to edit, only remove
[20:42:21] <alex_joni> is it ok if I remove you, and you add yourself once again?
[20:42:22] <rayh> newsig e-fscking-stop
[20:42:30] <cradek> alex_joni: remove me then please
[20:42:35] <alex_joni> rayh: that's the way to call it
[20:42:48] <alex_joni> Chris Lincoln (NE) ?
[20:42:53] <cradek> that's it
[20:42:55] <rayh> linksp e-fscking-stop iocontrol.0.stop-in
[20:43:16] <alex_joni> linksp e-fscking-stop iocontrol.0.fscking-stop-in
[20:43:25] <rayh> Thanks for that great discussion SWPadnos.
[20:43:37] <SWPadnos> heh - fscking stop discussion :)
[20:43:39] <alex_joni> cradek: done
[20:43:50] <alex_joni> SWPadnos: you're fscking right
[20:44:17] <SWPadnos> I'm fscking stopping this fscking fscking discussion
[20:44:28] <alex_joni> bugger it
[20:44:40] <rayh> Boy with computers, I'm not nearly so worried about the doctor's saying I'll be wheelchair bound.
[20:44:56] <SWPadnos> all you need is a faster pipe
[20:45:06] <SWPadnos> (something biggerthan a straw)
[20:45:09] <rayh> With a great bunch of folk like emc lovers we've got it made.
[20:45:18] <alex_joni> rayh: you need a shoutout (message), that gets added to your pin (location)
[20:45:48] <rayh> Right. can we get cl to trigger an audio wav file.
[20:45:59] <cradek> the distribution of US users is interesting
[20:46:12] <alex_joni> cradek: give it a few weeks to grow
[20:46:22] <cradek> not much happens west of chicago
[20:46:24] <alex_joni> for now I see mostly known faces :)
[20:46:36] <SWPadnos> a big circle around NIST, and a few stragglers on the west coast :)
[20:47:03] <SWPadnos> (at least, that's what it looks like at "world" magnification)
[20:47:10] <rayh> were you able to enter 49920?
[20:47:18] <cradek> alex_joni: that didn't update my name on the map, it only made me lose my place at the top of the list
[20:47:23] <cradek> alex_joni: oh well
[20:48:19] <rayh> Darn that's no good.
[20:48:35] <alex_joni> cradek: it's pretty strange..
[20:48:46] <alex_joni> doesn't update right-away
[20:49:28] <cradek> who is Jos Gubbels? He posted my screenshot!
[20:49:39] <alex_joni> heh
[20:50:20] <alex_joni> is it really yours? thought you had other widgets
[20:50:25] <jepler_> what's this thing you're talking about?
[20:50:32] <jepler_> website or something?
[20:50:39] <alex_joni> nah.. it's yours allright
[20:50:48] <alex_joni> jepler_: http://www.frappr.com/emctheenhancedmachinecontroller
[20:52:00] <cradek> it's fine, I'm happy he thinks the gui is cool enough to post
[20:52:27] <alex_joni> * alex_joni used it as the groups pic..
[20:52:33] <alex_joni> maybe you noticed :D
[20:52:51] <cradek> ah, nice
[20:52:51] <rayh> * rayh goes back to hal file errors in cl connections.
[20:53:04] <rayh> rayh is now known as rayh-away
[20:54:38] <alex_joni> ok, rayh is added (Crystall Falls)
[20:55:00] <alex_joni> hi jeff ;)
[20:55:18] <alex_joni> jepler_: you're covering chris :D
[20:55:31] <jepler_> alex_joni: zoom in further
[20:55:38] <jepler_> we're in separate zipcodes and everything
[20:55:49] <alex_joni> yeah.. I know, but from US view you're over him :))
[20:56:17] <alex_joni> how precise is the map?
[20:56:29] <SWPadnos> down to the street
[20:56:47] <SWPadnos> oh - how precise is the zip-code mapping :)
[20:57:07] <cradek> big cities have many zip codes
[20:57:24] <cradek> small towns may have only one
[20:57:44] <SWPadnos> the pin for me is about 1/2 mile from my house (look at the short dead-end street directly below it)
[20:58:29] <jepler_> I think a lot of people would rather not have the pin pointing directly at their house
[20:58:48] <jepler_> imagine the "I own a diamond necklace worth a million dollars" group on frappr.com ...
[20:58:52] <SWPadnos> they're pointing to the centroid of the ZIP code area (or thereabouts)
[20:58:55] <alex_joni> ROFL
[20:59:52] <SWPadnos> or the "I stole a diamond neclace and I'm hiding out here" group
[21:00:22] <alex_joni> anyways.. it's a nice idea
[21:00:37] <SWPadnos> works much better than the map on linuxcnc.org
[21:01:11] <alex_joni> hopefully it'll grow further ;)
[21:01:23] <alex_joni> how many EMC users do you think are out there?
[21:01:30] <SWPadnos> see if you can post something on the Sherline or Smithy websites / lists
[21:01:45] <alex_joni> not sure where those are..
[21:01:53] <alex_joni> could you do that?
[21:02:16] <SWPadnos> I can try
[21:03:03] <alex_joni> jepler_: yay, nice machine :D
[21:03:18] <alex_joni> * alex_joni isn't the only one with toys around there anymore
[21:04:31] <anonimasu> hwh
[21:04:34] <anonimasu> ^_^
[21:04:55] <alex_joni> * alex_joni still doesn't see anonimasu on the map
[21:08:19] <anonimasu> hm
[21:08:27] <anonimasu> I cant find my city
[21:09:41] <anonimasu> ah now..
[21:09:42] <SWPadnos> Hmmm - I emailed sherline, but looking at the Smithy site, it seems they recommend FlashCut, so maybe that's a wrong number :)
[21:09:45] <anonimasu> somwhere close
[21:10:33] <anonimasu> hm
[21:10:35] <anonimasu> they have a bug at the paqge
[21:10:37] <anonimasu> page
[21:10:44] <anonimasu> in a certain zoom russia is "asia"
[21:12:10] <alex_joni> strange shoutout: ^_^ :=)
[21:12:18] <anonimasu> hehe
[21:13:25] <rayh-away> * rayh-away is hal stupid. error message follows
[21:13:28] <rayh-away> insmod: error inserting '/home/rayh/emctest/emc2/rtlib/blocks.ko': -1 Operation not permitted
[21:13:28] <rayh-away> HAL: ERROR: insmod failed, returned 1
[21:13:47] <SWPadnos> was blocks already loaded?
[21:14:04] <rayh-away> I don't think so. Let me look.
[21:14:36] <rayh-away> No.
[21:14:50] <rayh-away> The full line was loadrt blocks not=4
[21:14:54] <SWPadnos> operation not permitted - permissions???
[21:15:09] <alex_joni> nah.. that's the standard error message
[21:15:14] <rayh-away> There are other loadrt messages
[21:15:16] <alex_joni> when the insmod fails
[21:15:21] <SWPadnos> OK
[21:15:24] <alex_joni> rayh-away: check /var/log/messages
[21:15:42] <alex_joni> the reason why it failed is there
[21:16:46] <alex_joni> hrmmm.. I get hal_malloc() failed
[21:18:17] <SWPadnos> is there an arbitrary limit on tne number of blocks you can have?
[21:18:19] <SWPadnos> the
[21:19:55] <alex_joni> ok... it's a bug
[21:19:58] <anonimasu> logger_aj: bookmark
[21:19:58] <anonimasu> See http://solaris.cs.utt.ro/irc/irc.freenode.net:6667/emc/2005-11-10#T21-19-58
[21:20:06] <alex_joni> a typo, or rather a copy-paste bug
[21:20:10] <rayh-away> hal malloc() failed
[21:20:12] <alex_joni> * alex_joni fixes it in a sec
[21:21:18] <rayh-away> Wah! you gotta love this collaborative development.
[21:21:24] <SWPadnos> oops - that should be not, not and2
[21:21:47] <alex_joni> shoulda woulda :D
[21:21:57] <CIA-5> 03alex_joni * 10emc2/src/hal/components/blocks.c: fixed a copy-paste bug for the component not
[21:22:14] <SWPadnos> I noticed a copy/paste error in the kernel parameter area as well
[21:22:14] <alex_joni> rayh-away: cvs up, and recompile
[21:22:19] <SWPadnos> not was commented as and
[21:22:32] <alex_joni> yup.. probably that's where it originated
[21:22:46] <rayh-away> I'm not testing on a connected box. It'll be a while.
[21:22:58] <SWPadnos> look for the function export_not in blocks.c
[21:23:24] <alex_joni> rayh-away: emc2/src/hal/components/blocks.c
[21:23:32] <SWPadnos> what he said :)
[21:23:42] <alex_joni> line 1767
[21:23:48] <alex_joni> make it read:
[21:23:57] <alex_joni> if (not==0) {
[21:24:08] <SWPadnos> two lines under the comment /* allocate shared memory for 2-input logical and */ (which should be a clue :) )
[21:25:06] <rayh-away> okay. Thanks.
[21:27:27] <SWPadnos> hmmm - that bug raises an interesting issue - non-local variables
[21:27:36] <CIA-5> 03alex_joni * 10emc2/src/hal/components/blocks.c: fixed a few more typos in the comments
[21:27:54] <SWPadnos> or - local aliasing of global variables
[21:29:32] <alex_joni> hrmm.. does the wiki support tables?
[21:30:17] <SWPadnos> http://www.usemod.com/cgi-bin/wiki.pl?TextFormattingRules
[21:30:23] <SWPadnos> yes - it seems so
[21:30:58] <rayh-away> * rayh-away sees em not.o.in
[21:31:15] <alex_joni> coo ;)
[21:31:17] <SWPadnos> is that an o or a 0
[21:31:47] <rayh-away> Right. enthusiastic typ0ing.
[21:31:59] <SWPadnos> 0K
[21:32:20] <alex_joni> gl@d it w0rkz
[21:32:34] <SWPadnos> u r 2 k3wl d00d
[21:35:06] <alex_joni> :P
[21:35:12] <alex_joni> * alex_joni can't top that
[21:35:33] <alex_joni> did you guys look at the sources for that modified SQ?
[21:36:53] <alex_joni> oh.. looky here
[21:37:22] <alex_joni> the prodigal son returns ;)
[21:37:38] <cradek> hey robin
[21:38:08] <SWPadnos> SQ?
[21:38:17] <alex_joni> segment queue
[21:38:25] <SWPadnos> ah - sorry, haven't eaten in a while :)
[21:39:27] <SWPadnos> hey robin_sz - fiddled with Mariss' G-Rex code lately?
[21:48:43] <Jacky^> robin ?
[21:48:59] <Jacky^> damn ..
[21:49:10] <Jacky^> right this evening
[21:49:20] <Jacky^> i was asking for his email ..
[21:49:25] <Jacky^> ]:)
[21:49:44] <alex_joni> * alex_joni has a feeling Jacky^ might get it after all
[21:50:11] <Jacky^> robin helped me a lot
[21:52:46] <Jacky^> :)
[22:09:38] <Jacky^> wow
[22:10:27] <alex_joni> Jacky^: remember that link you gave me?
[22:10:42] <Jacky^> alex_joni: about ?
[22:10:45] <alex_joni> http://www.infodelta.it/meccaniche.htm
[22:10:50] <Jacky^> yeah
[22:10:56] <alex_joni> bunch of loosers
[22:11:04] <alex_joni> I sent them an email I want to buy one
[22:11:11] <Jacky^> I know ..
[22:11:25] <Jacky^> only to industry
[22:11:28] <Jacky^> right ?
[22:11:32] <alex_joni> Dear Sir :
[22:11:32] <alex_joni> 1/The product is new
[22:11:32] <alex_joni> 2/we make export invoice, but only for container 20'' min.
[22:11:32] <alex_joni> 3/Shipping time:6 months
[22:11:32] <alex_joni> 4/The invoice-amount is low and we aren't interesting for
[22:11:32] <alex_joni> Best regards
[22:11:50] <Jacky^> uhm
[22:11:57] <alex_joni> are they fscking kidding?
[22:12:11] <Jacky^> no clue ..
[22:12:21] <Jacky^> I know many peoples buy there
[22:12:58] <Jacky^> i received a similar reply ..
[22:13:12] <Jacky^> we do not sell to private peoples
[22:13:27] <k4ts> hi
[22:13:28] <alex_joni> well.. I'm not private
[22:13:33] <alex_joni> I asked as a company..
[22:13:36] <alex_joni> but.. their loss
[22:13:39] <Jacky^> strange
[22:14:52] <Jacky^> I found that website in this page links http://www.cncitalia.net/links.php?lng=it
[22:15:14] <Jacky^> and just asked for servomotors
[22:15:23] <Jacky^> get negative replys
[22:16:23] <Jacky^> ok, latest job here: http://digilander.libero.it/jackydgl0/annam2.jpg
[22:16:31] <Jacky^> looks much better ..
[22:16:32] <alex_joni> SWPadnos: not really :D
[22:16:35] <alex_joni> just unreliable
[22:16:40] <alex_joni> so he was banned to cron
[22:16:55] <SWPadnos> he
[22:16:57] <SWPadnos> heh
[22:18:54] <alex_joni> Jacky^: know another page like that?
[22:19:02] <alex_joni> * alex_joni needs a small 2-axes system
[22:19:06] <Jacky^> like infodelta ?
[22:19:07] <alex_joni> for about 1k EUR max
[22:19:20] <Jacky^> sorry.. no
[22:19:43] <Jacky^> i know some other but the prices are out
[22:21:20] <Jacky^> btw its strange
[22:21:35] <alex_joni> anyone know of a nice small machine?
[22:21:39] <alex_joni> cheap too?
[22:21:39] <Jacky^> a simple website.. with prices an all pages
[22:21:48] <SWPadnos> how ssmall is small?
[22:21:54] <alex_joni> 300x300mm
[22:21:56] <rayh-away> Sherline?
[22:21:57] <alex_joni> or smthg like that
[22:22:05] <alex_joni> how much for a sherline?
[22:22:14] <Jacky^> right ..
[22:22:17] <SWPadnos> around $5k with CNC, I think
[22:22:20] <Jacky^> how much
[22:22:27] <alex_joni> too much..
[22:22:33] <alex_joni> about 1k EUR
[22:22:38] <alex_joni> 1.2k$
[22:22:56] <rayh-away> $2800 last I checked with all in
[22:23:07] <rayh-away> You need motors and all or just motor ready?
[22:23:30] <SWPadnos> rayh-away, is right - $2450 for the 5400
[22:23:54] <Jacky^> alex_joni: try on ebay
[22:24:06] <Jacky^> if i remeber well , ive seen something
[22:24:17] <Jacky^> but not for e. 1k
[22:24:23] <rayh-away> If all you need is a cnc ready Sherline I might come close to your suggested price.
[22:24:23] <Jacky^> min. 3 k
[22:24:24] <alex_joni> I don't specifically need a mill..
[22:24:39] <Jacky^> biggest work area too
[22:25:16] <Jacky^> german manifactured, if remember well
[22:27:00] <Jacky^> alex_joni: id buy machanical only
[22:27:13] <Jacky^> for about 1k euro
[22:27:20] <SWPadnos> delivered?
[22:27:26] <Jacky^> then 3 steppers and homebuild driver
[22:27:37] <Jacky^> should be cheaper and good
[22:28:29] <rayh-away> skulk around here a bit and get back to me. http://www.sherlineipd.com/cncslide.htm
[22:30:12] <alex_joni> P/N 6545 looks like what I need
[22:30:21] <Jacky^> alex_joni: http://www.friulmecsrl.it/offefer.html
[22:31:05] <Jacky^> I like this: http://www.friulmecsrl.it/offerte/8158124.html
[22:31:14] <Jacky^> just add steppers and drivers
[22:32:59] <Jacky^> maybe some work is required on Z axis.. but should not hard
[22:33:12] <alex_joni> not what I need..
[22:33:12] <rayh-away> P/N 6545 probably could get it there for 425 e.
[22:33:53] <alex_joni> rayh-away: I noticed there is some sherline in bulgaria
[22:34:45] <rayh-away> Right. Their dealer there won an award at a show recently.
[22:34:57] <alex_joni> yup.. think I remember some pics..
[22:34:57] <rayh-away> That would probably be a better place to get it than from me.
[22:35:11] <alex_joni> cheaper shipping I'd imagine..
[22:35:19] <rayh-away> I'd think so.
[22:35:28] <SWPadnos> truck rentals are cheap :)
[22:35:31] <alex_joni> did that price include shipping? (425E)
[22:35:33] <jepler_> cradek: hum, I notice that on sherline's web page they say their spindle goes from 70-2800rpm. I thought you were going much faster than that on your machine with the sherline motor. Is it because your pulley ratio is very different from the one on the sherline mill?
[22:35:39] <jepler_> (http://www.sherline.com/mills.htm near the bottom)
[22:35:41] <alex_joni> SWPadnos: you need to make them waterproof
[22:35:57] <SWPadnos> and floating
[22:36:44] <cradek> jepler_: yes, their pulleys are geared for power (big one on the spindle)
[22:47:34] <lerman> alex_joni: just looked at your recent wiki page: EMC2Folders which says:
[22:47:36] <lerman> EMC2_HOME = ~/emc2/
[22:47:37] <lerman> SRC_DIR = ~/emc2/src/
[22:47:39] <lerman> BIN_DIR = ~/emc2/bin/
[22:47:40] <lerman> LIB_DIR = ~/emc2/lib/
[22:47:42] <lerman> RTLIB_DIR = ~/emc2/rtlib
[22:47:43] <lerman> INC_DIR = ~/emc2/include
[22:47:45] <lerman> TMP_DIR = ~/emc2/src/.tmp
[22:47:47] <lerman> RTTMP_DIR = ~/emc2/src/.rt_tmp
[22:47:48] <lerman> RTDIR = /usr/local/realtime
[22:47:51] <lerman> I suggest instead:
[22:47:52] <alex_joni> yeah.. that's a work in progress
[22:47:53] <lerman> EMC2_HOME = ~/emc2/
[22:47:55] <lerman> SRC_DIR = $EMC2_HOME/src/
[22:47:57] <lerman> BIN_DIR = $EMC2_HOME/bin/
[22:47:59] <lerman> etc. That is, base one path on the other predefined paths.
[22:48:11] <alex_joni> sure.. just wanted to note down some names..
[22:48:43] <lerman> Makes sense.
[22:49:45] <SWPadnos> SWPadnos is now known as SWP_Away
[23:20:15] <SWP_Away> alex_joni, I just got a response from Sherline - they'll be putting up a link to Frappr on their site (or Yahoo group)
[23:20:25] <Jacky^_> /qui
[23:20:29] <Jacky^_> ops
[23:20:44] <alex_joni> SWP_Away: perfect
[23:21:14] <SWP_Away> I had asked about posting to their Yahoo group as well, but I don't want to join just for that :)
[23:21:43] <SWP_Away> incidentally, that's something the EMC community should consider - a more public discussion list
[23:21:57] <SWP_Away> (like Yahoo or Google groups)
[23:22:22] <alex_joni> SWP_Away: keep that in mind to ask the new board...
[23:22:29] <SWP_Away> yep
[23:27:02] <lerman> You can't get more public that this, can you? Yahoo groups are a pita. Do we want advertisements and to be asked to log in again every 10 minutes?
[23:27:29] <SWP_Away> no, but I also don't want the average user to have to sign up on SourceForge to use the lists
[23:27:33] <SWP_Away> SWP_Away is now known as SWPadnos
[23:27:48] <alex_joni> SWPadnos: but you want them to sign up to yahoo ;)
[23:28:04] <SWPadnos> lots of them are already signed up on Yahoo and /or Google
[23:28:10] <alex_joni> yeah I know ;)
[23:28:23] <rayh-away> I don't want to sign up at yahoo.
[23:28:31] <SWPadnos> we'll do Google then :)
[23:28:36] <rayh-away> I miss a lot of junk by not being there.
[23:28:46] <rayh-away> I wonder if google is better.
[23:28:47] <alex_joni> google groups is ... usenet
[23:28:51] <SWPadnos> I get almost no junk, and none that I can trac eto Yahoo
[23:28:56] <lerman> So, can't someone put up a list server that just requires a signup for the list.
[23:29:14] <alex_joni> lerman: it won't have nice coloured buttons.. :(
[23:29:19] <alex_joni> "ohhh.. shiny ;)"
[23:29:36] <rayh-away> seems like we went through all this when we decided to switch to sf.
[23:29:37] <SWPadnos> yes, but this is about accessibility and promotion of EMC, not whether it's feasible or not to do it another way
[23:29:43] <lerman> I seem to have lost most ofmy buttons.
[23:29:52] <SWPadnos> get Gnome :)
[23:29:54] <alex_joni> SWPadnos: [00:43] <alex_joni> SWP_Away: keep that in mind to ask the new board...
[23:30:10] <alex_joni> * alex_joni hands lerman a box of nice shiny buttons
[23:30:13] <SWPadnos> well - here's Ray, and we're candidates ;)
[23:30:40] <alex_joni> exactly
[23:30:46] <lerman> Do we really think that promoting EMC will make it better?
[23:31:00] <SWPadnos> no, but it will make it more well known :)
[23:31:12] <alex_joni> lerman: more users = better testing
[23:31:26] <SWPadnos> and ideally less FUD
[23:31:29] <alex_joni> ergo.. better
[23:31:31] <lerman> And that will benefit US how? -- you answered before I asked.
[23:31:47] <alex_joni> indeed I did
[23:31:48] <alex_joni> :)
[23:32:13] <alex_joni> but.. even statistically .. if you have lots of users it's more likely to get bugs discovered
[23:32:36] <alex_joni> and.. if you have a large community screaming for features.. they will get more likely implemented
[23:33:05] <SWPadnos> well - now probably isn't the time for much promotion, because of hte HAL refactor (hint hint), but later on, once it's more stable, it would be a good idea
[23:33:08] <lerman> Screaming doesn't make me work faster. We need developers; not screamers.
[23:33:15] <SWPadnos> aaaaaaaaaaaaaaaaaaaahhhhhhhhhhhhhhhhhhhhhhh
[23:33:17] <SWPadnos> sorry
[23:33:35] <Jacky^> ugh
[23:33:40] <Jacky^> lamers attack !
[23:33:50] <alex_joni> lerman: lots of users ~ more developers :D
[23:34:06] <SWPadnos> and there is developmentthat has nothing to do with C as well
[23:34:16] <SWPadnos> GUI and that kind of thing
[23:34:20] <lerman> Nope. If they aren't smart enough to use SF (and prefer Yahoo), they aren't developers.
[23:34:20] <alex_joni> most of the current developers are users that didn't like something
[23:34:25] <SWPadnos> documentation
[23:34:26] <k4ts> lamers attack? what? Jacky^?
[23:34:33] <SWPadnos> llamas attack!
[23:34:38] <alex_joni> Jacky^ attacks
[23:34:40] <SWPadnos> lemmings, Attack!!!
[23:34:53] <Jacky^> k4ts: theres a baby in irc
[23:35:12] <k4ts> baby?
[23:35:16] <k4ts> uh?
[23:35:18] <Jacky^> bad baby
[23:35:28] <k4ts> tanta palula io!
[23:35:42] <Jacky^> well
[23:35:58] <Jacky^> let me check for backdoors
[23:36:03] <lerman> * lerman changes the subject
[23:36:39] <lerman> So, I've checked in the interp changes. That was the first step we discussed on Sunday. Does anyone want to test them?
[23:36:45] <Jacky^> * Jacky^ search for new exploit
[23:37:09] <alex_joni> * alex_joni exploits Jacky^
[23:37:18] <Jacky^> alex_joni: :))
[23:37:26] <rayh-away> * rayh-away raises his hand for testing.
[23:37:27] <lerman> Also, someone should talk to RUM about getting some subset of his changes merged in -- at least the simple ones.
[23:38:01] <Jymmm> * Jymmm nominates lerman to talk to RUM. Do I have a 2nd?
[23:38:05] <rayh-away> My thought there was that we test your stuff and if it goes, we merge it.
[23:38:28] <rayh-away> Then we use the same branch for keith's work and test it.
[23:38:38] <alex_joni> yup.. sounds great
[23:38:44] <alex_joni> * alex_joni finishes on this mess first
[23:38:51] <rayh-away> argue through the changed way it runs and then merge what can be agreed upon.
[23:38:53] <alex_joni> then I'll look at it.. promised :)
[23:39:48] <lerman> My understanding is that some people had concerns about some of keith's changes -- as in, they change some functionality. Some of the changes -- semi colon comments, '%' handling, are harmless, I think.
[23:40:19] <alex_joni> lerman: now you see why I like short commits
[23:40:34] <alex_joni> you can then select (with cvs foo) the ones you like
[23:40:38] <alex_joni> and merge only those
[23:41:17] <lerman> BTW: I lied the other day when I said that none of my changes should affect existing programs. I do change the operator precedence to a small degree.
[23:41:46] <rayh-away> How's that?
[23:41:56] <alex_joni> * goes after +
[23:42:36] <rayh-away> I tend to bracket those anyway.
[23:42:41] <lerman> No. I think I split the logical operators into two groups. I need to find my notes. BRB
[23:43:32] <SWPadnos> they can be split - usually AND is considered like multiplication, and OR like addition
[23:43:56] <Jymmm> * Jymmm XOR's SWPadnos
[23:44:01] <SWPadnos> NOT!
[23:44:10] <lerman> The relational operators (LE, LT, EQ, NE, GE, GT) have precedence 3, and
[23:44:11] <lerman> plus and minus operator have been moved to precedence 4, while the
[23:44:13] <lerman> logical operators (and, or, exclusive or) are at precedence 2.
[23:44:15] <lerman> The logical operators were originally intended to be used as bitwise
[23:44:16] <lerman> operators -- but do not seem very useful. Now, they are logical
[23:44:17] <lerman> operators, e.g.: if [#1 eq #2 & #3 ne #4]. For that reason, I made the
[23:44:19] <lerman> relational operators higher precedence than the logical operators. So,
[23:44:20] <lerman> the above reads as: if [[#1 eq #2] & [#3 eq #4]].
[23:44:22] <lerman> Not knowing the standard left me handycapped, so I tried to make this
[23:44:24] <lerman> as useful as I could. If I've broken anything serious, please let me
[23:44:25] <lerman> know. Code that does not use the relational operators WILL NOT WORK
[23:44:27] <lerman> THE SAME. Prior to this change, the two groups (logical operators),
[23:44:28] <lerman> (plus minus) executed strictly left to right. Now the logical operators
[23:44:30] <lerman> execute before the plus/minus.
[23:44:31] <lerman> I could fix this by just putting the logical operators and plus/minus
[23:44:33] <lerman> back in one group with the logical operators lower precedence lower than
[23:44:34] <lerman> both. It requires that one line of code be changed. Please let me know
[23:44:36] <lerman> what you think.
[23:45:05] <lerman> * lerman is sorry he just pasted this stuff in and it looks like crap.
[23:45:13] <alex_joni> it looks ok
[23:45:18] <alex_joni> reads like crap ...
[23:45:20] <alex_joni> ROFL
[23:45:24] <alex_joni> just kidding..
[23:45:25] <Jymmm> a single line would have been nice
[23:45:35] <alex_joni> <lerman> both. It requires that one line of code be changed.
[23:45:37] <paul_c> * paul_c kicks Jymmm
[23:45:40] <alex_joni> it is one line..
[23:45:48] <alex_joni> * alex_joni kicks paul_c as a hello
[23:46:23] <Jymmm> * Jymmm spikes paul_c's tea with exlax
[23:46:41] <SWPadnos> hey - one thing I found out recently
[23:46:48] <alex_joni> exlax works?
[23:46:50] <SWPadnos> BDI won't install on VMWare
[23:47:02] <SWPadnos> at least, not on the VMWare I have
[23:47:12] <SWPadnos> it can't see the "SCSI
[23:47:16] <SWPadnos> controller
[23:47:20] <alex_joni> SWPadnos: VMWare doesn't support RT patches
[23:47:24] <alex_joni> so don't bother..
[23:47:25] <Jymmm> SWPadnos you are nto trying hard enough to install it
[23:47:38] <SWPadnos> I'mnot worried about it being RT, just if it runs
[23:47:58] <alex_joni> well.. it is an RT patched kernel, so probably it won't boot
[23:48:03] <lerman> Another one of Keith's changes that I like is the additions he made to the .ini file capabilities. Once that is inserted to emc2, I could add a flag to indicate what type of precedence one wanted. Maybe just a flag that defaults to old style interpreter and disables the new stuff.
[23:48:03] <alex_joni> even if you get to install it..
[23:48:05] <alex_joni> not sure though
[23:48:05] <SWPadnos> I'd like to be able to develop on my dual Opteron machine
[23:48:08] <paul_c> SWPadnos: If you have problems with BDI under VMWare, contact the VMWare hell desk
[23:48:18] <SWPadnos> heh - I'd have to pay for it first :)
[23:48:23] <Jacky^> hi paul_c
[23:48:34] <alex_joni> SWPadnos: otoh I managed to run emc2 under qemu (running on doze)
[23:48:39] <SWPadnos> they don't officially support Debian, oddly enough
[23:48:43] <paul_c> SWPadnos: Right - You only get what you pay for
[23:48:44] <alex_joni> loaded the puppy..
[23:48:54] <SWPadnos> yep - once the eval runs out, I'll decide
[23:49:04] <alex_joni> ran .. like a drunken puppy :)
[23:49:05] <SWPadnos> I ran puppy under VMWare
[23:49:15] <SWPadnos> without even burning a disc :)
[23:49:25] <alex_joni> puppy works kinda ok, but as soon as I did anything with emc2, it was sloooow
[23:49:35] <alex_joni> didn't crash though :D
[23:49:47] <alex_joni> paul_c: care to add yourself to the map?
[23:49:56] <SWPadnos> I'm only dealing with it at all because all of the good (and not extremely expensive)PCB CAD software runs only on Windows
[23:50:02] <alex_joni> paul_c: http://www.frappr.com/emctheenhancedmachinecontroller
[23:50:11] <alex_joni> SWPadnos: eagle?
[23:50:19] <SWPadnos> I said good :)
[23:50:28] <alex_joni> eagle is good
[23:50:46] <alex_joni> it lets you do round paths
[23:50:54] <SWPadnos> I found the library editor to be questionable, and I found no import / export. Also, no good part database.
[23:51:20] <SWPadnos> unfiortunately, I have a bunch of designs in Protel format, which is a handicap
[23:51:49] <alex_joni> ahh.. right
[23:51:51] <lerman> Well, maybe if they had a Yahoo group, they would have a zillion users. If each one created one part in a library, they'd be all set.
[23:51:53] <alex_joni> * alex_joni hated protel
[23:52:03] <SWPadnos> yep, but I'm used to the keystrokes
[23:52:06] <alex_joni> lerman: now you're getting somewhere
[23:52:21] <alex_joni> how about a brazillion users? (bush style;)
[23:52:33] <alex_joni> SWPadnos: I used Orcad
[23:52:34] <SWPadnos> that would be nukular
[23:52:53] <SWPadnos> I absolutely hated ORCAD (SDT-III was the last I've touched)
[23:53:06] <alex_joni> Donald Rumsfeld is giving the president his daily briefing.
[23:53:07] <alex_joni> He concludes by saying: "Yesterday, 3 Brazilian soldiers were killed."
[23:53:07] <alex_joni> "OH NO!" the President exclaims. "That's terrible!"
[23:53:07] <alex_joni> His staff sits stunned at this display of emotion, nervously watching as the President sits, head in hands.
[23:53:07] <alex_joni> Finally, the President looks up and asks, "How many is a brazillion?"
[23:53:12] <paul_c> alex_joni: That link is nasty evil java.
[23:53:17] <lerman> I one woman can make a baby in nine months, a zillion women can make a baby in .... damned if I know.
[23:53:37] <alex_joni> lerman: 6 months
[23:53:49] <SWPadnos> they need the help of at least one non-woman
[23:57:05] <SWPadnos> maybe I should look at Eagle again - it would be $9000 cheaper, and it runs natively on Linux
[23:57:38] <SWPadnos> unfortunately, I'd have to define almost every part I want to use (since I don't use PICs)
[23:58:19] <alex_joni> cradek: still around?