#emc-devel | Logs for 2009-07-20

[00:57:34] <cradek> good evening
[00:57:37] <cradek> home again
[01:00:29] <jepler_> hi cradek
[01:00:37] <jepler_> jepler_ is now known as jepler
[01:05:41] <cradek> I'm doing the random-toolchanger stuff
[01:24:13] <cradek> I think (hope) I have a coherent design
[01:24:20] <cradek> the spindle is pocket zero
[01:24:45] <jepler> oh, this is "remember how the tools are permuted in the carousel"?
[01:25:00] <cradek> yes
[01:25:15] <cradek> and a happy side-effect is remembering which tool is left in the spindle across runs
[01:25:22] <jepler> yeah
[01:25:28] <jepler> will you write out the tool file at each change, then?
[01:25:33] <cradek> yes
[01:25:50] <jepler> you'll use that "wtf" column, so no change in format?
[01:26:05] <cradek> yes another happy accident
[01:26:07] <jepler> (does this mean you're going to soon have a machine with a tool carousel?)
[01:26:12] <cradek> yes
[01:26:24] <cradek> some time this week, I bet
[01:26:32] <jepler> that's fast
[01:26:46] <cradek> well it'll be here - sure won't be working for a while
[01:27:07] <jepler> very cool
[01:27:16] <cradek> yep I'm really excited
[01:27:22] <jepler> have a link about it?
[01:27:30] <jepler> I recall you had some page with a similar machine on it..
[01:27:39] <cradek> I'll find a picture
[01:28:47] <cradek> http://www.youtube.com/watch?v=_UXd9df0-RM
[01:31:25] <jepler> ingrid doesn't seem too impressed
[01:31:34] <jepler> but she's worried when I told her you said it would fit with an inch to spare
[01:31:50] <cradek> actually it fits with about -2 inches to spare
[01:31:59] <cradek> we may have to raise the ceiling just a bit
[01:32:20] <cradek> make a skylight, actually
[01:33:45] <jepler> oh
[01:34:08] <jepler> I know you enjoy a challenge
[01:34:24] <jepler> ingrid's forbidden me to get anything I can't carry downstairs
[01:34:27] <cradek> the ceiling is a very minor challenge compared to everything else
[01:34:29] <jepler> so I can't take your old bp
[01:34:35] <jepler> that may be
[01:34:39] <cradek> it would fit in your garage...
[01:34:48] <jepler> I still like to park there in the winter
[01:34:58] <cradek> pretty sure you still could...
[01:35:02] <jepler> and ingrid would blow a gasket when I announced that the garage would have to be heated and cooled
[01:35:24] <cradek> she sure talks you out of a lot of fun stuff
[01:36:06] <jepler> yeah I know
[01:36:16] <jepler> she says I don't need it, I can go play with yours whenever I want
[01:36:21] <jepler> she apparently doesn't feel I need to ask you
[01:36:34] <cradek> that's very interesting
[01:36:45] <cradek> what is this "need" thing?
[01:37:15] <jepler> ingrid's big into "needs"
[01:37:18] <jepler> I think it's a gender thing
[01:37:23] <cradek> must be
[02:00:33] <SWPadnos> that looks very mazak-esque
[02:05:58] <jmkasunich> so you made the leap, eh?
[02:06:45] <cradek> yep
[02:06:53] <cradek> it looks like it will be great
[02:07:03] <cradek> it's a linear rail machine
[02:09:15] <jmkasunich> screws and everything look OK?
[02:10:14] <cradek> I think so - kind of hard to tell since it doesn't work - but it all moves smoothly
[02:10:42] <jmkasunich> indicator on table, push/pull and see if it moves? (backlash check)
[02:11:07] <cradek> can't lock the screws
[02:11:31] <cradek> I could get to X and turn it manually, and it felt perfect
[02:11:38] <cradek> I think usually it's the worst
[02:15:49] <jmkasunich> what kind of servo motors? DC?
[02:15:55] <cradek> yes dc
[02:16:00] <jmkasunich> drives included?
[02:16:03] <cradek> yes
[02:16:18] <jmkasunich> what about spindle? DC like the mazak, or AC?
[02:16:54] <cradek> ac, only one gearing, big fancy looking drive
[02:17:02] <cradek> 8000 rpm
[02:17:22] <jmkasunich> only one ratio? so not a ton of torque at low speed
[02:17:29] <jmkasunich> what is rated spindle HP?
[02:17:31] <cradek> yep
[02:17:44] <cradek> 5 hp constant, 7.5 for a half hour
[02:18:34] <jmkasunich> how much power do you have available to feed it?
[02:18:59] <cradek> 50ish amps?
[02:19:31] <cradek> at 240
[02:30:08] <jmkasunich> so you'll get rated HP
[02:30:10] <jmkasunich> nice
[02:30:28] <cradek> nifty
[02:30:53] <cradek> I haven't been able to figure out what all is 3ph. I don't have wiring diagrams.
[02:31:13] <cradek> I can keep using my rotary converter if I have to.
[02:34:08] <cradek> http://timeguy.com/cradek-files/emc/pockets.png
[02:34:12] <cradek> this is a good start...
[02:34:27] <cradek> the hal output is a pocket number, not a tool number
[02:34:39] <cradek> also, there's no longer a low limit on valid tool numbers
[02:34:59] <SWPadnos> wouldn't 1 be a valid lower limit?
[02:35:01] <cradek> but hm, two tool 1s
[02:35:08] <cradek> err
[02:35:17] <cradek> there's no longer an arbitrarily-low upper limit
[02:35:22] <SWPadnos> heh
[02:35:23] <SWPadnos> ah
[02:35:42] <cradek> you can still only have 56 or so pockets
[02:35:57] <cradek> you can name your tool T1237583 if you want
[02:36:05] <SWPadnos> because those bytes are more expensive :)
[02:36:18] <cradek> well it's still a fixed size array
[02:36:26] <SWPadnos> rigth
[02:36:29] <SWPadnos> uh
[02:36:30] <cradek> which makes some sense - you only have so much carousel
[02:36:32] <SWPadnos> right
[02:36:55] <SWPadnos> yeah, though there are "chain-type" changers with a couple hundred tools IIR
[02:36:57] <SWPadnos> C
[02:37:13] <cradek> you can fix it by enlarging a mumble mumble nml mumble buffer
[02:37:25] <SWPadnos> yep, in mumble.cc/.hh
[02:38:00] <jepler> you can't make it arbitrary-sized easily, because it has to fit in the buffer sized in emc.nml
[02:38:41] <cradek> hi moses
[02:38:49] <mozmckb> hi cradek
[02:39:01] <cradek> while I was away my coconspirator found a banjo at a garage sale
[02:39:20] <cradek> needs some repair but it looks basically sound
[02:39:23] <mozmckb> neat! what is it?
[02:39:29] <jepler> (change CANON_TOOL_MAX in canon.hh)
[02:40:11] <jepler> (it's 56, who knows why..)
[02:40:46] <cradek> "epiphone made in china"
[02:40:48] <SWPadnos> why, that's a 7-byte bitfield lenght, of course!
[02:40:53] <SWPadnos> length
[02:41:06] <mozmckb> my python component works fine on emc2 master, but it dies on emc2 2.3.2 with this "custom.hal:10: pin 'serial-relays.0.relay1A' does not exist"
[02:41:52] <mozmckb> same setup. oops. I changed it from serial-relays.relay1A to serial-relays.0.relay1A to see if that helped, but same error.
[02:42:09] <cradek> is your component loading? check halcmd show?
[02:42:17] <jepler> put a "show pin" before you try to link it. see what pin name (if any) is actually created. Make sure you're using the right "wait" flag with loadusr.
[02:42:56] <mozmckb> cradek: that will probably make a good starter banjo...
[02:43:14] <mozmckb> jepler: "wait" flag?
[02:43:30] <jepler> yeah, loadusr -W or -Wn
[02:43:31] <mozmckb> here's my custom.hal
[02:43:32] <mozmckb> loadusr ./serial-relays.py
[02:43:32] <mozmckb> net coolant-mist <= iocontrol.0.coolant-mist
[02:43:32] <mozmckb> net coolant-flood <= iocontrol.0.coolant-flood
[02:43:32] <mozmckb> net coolant-mist => serial-relays.0.relay1A
[02:43:32] <mozmckb> net coolant-flood => serial-relays.0.relay1B
[02:43:55] <jepler> ok, the component name is "serial-relays"? Then use loadusr -Wn serial-relays ./serial-relays.py
[02:43:58] <SWPadnos> loadusr -W ./serial-relays.py
[02:44:28] <jepler> no, that only works if the component name is ./serial-relays.py, unless some name processing was added when my back was turned
[02:44:40] <SWPadnos> oh - it probably wasn't :)
[02:44:47] <jepler> (the heuristic you're imaging would probably be a good one, though)
[02:45:12] <mozmckb> why does it work fine on master without it?
[02:45:30] <jepler> luck
[02:45:48] <jepler> I doubt very much it works 100% of the time on master, or fails 100% of the time on 2.3
[02:46:47] <jepler> halcmd and serial-relays.py are two separate unix processes. if linux happens to run halcmd through the 'net' line before it runs serial-relays through the corresponding .newpin() line, then it doesn't work
[02:46:51] <jepler> if it's the other way around, it does
[02:47:02] <jepler> maybe something's changed about the timing in master to make "success" more frequent, but it's still just luck
[02:47:17] <mozmckb> hmm, seems to. I tried SWPadnos line and it looks like emc is running in the background or something. how to I kill it all?
[02:47:37] <mozmckb> I see.
[02:47:37] <SWPadnos> just kill the serial-relays process
[02:48:17] <jepler> halrun -U tries to forcibly stop and unload every hal-using thing
[02:48:32] <mozmckb> should the 'n' after -W be some number?
[02:48:41] <SWPadnos> no, it's the component name
[02:51:40] <mozmckb> got it! maybe the bit about loading the component should be in the documentation page on making python components
[02:51:56] <SWPadnos> it is
[02:51:59] <SWPadnos> man halcmd
[02:52:04] <SWPadnos> or halcmd help loadusr
[02:52:14] <SWPadnos> it should be in the manual too
[02:52:19] <SWPadnos> (but I don't know for sure)
[02:52:24] <SWPadnos> err
[02:52:31] <SWPadnos> if I could read, it would be helpful
[02:52:38] <mozmckb> oops, hadn't looked there. I was looking on the website
[02:52:58] <SWPadnos> you're right though, feel free to add a note to any wiki pages you think need it :)
[02:53:53] <mozmckb> will do, but that was on the linuxcnc documentation pages.
[02:54:08] <mozmckb> halcmd won't run here.
[02:54:17] <mozmckb> RTAPI: ERROR: could not open shared memory (errno=2)
[02:54:36] <SWPadnos> you need to have halcmd loaded
[02:54:41] <mozmckb> this is on hardy with a standard install
[02:54:41] <SWPadnos> err, you need to have emc loaded
[02:54:56] <SWPadnos> or halcmd can't run (even for help, which is annoying)
[02:55:18] <mozmckb> I see. I haven't really used halcmd yet...
[02:55:26] <SWPadnos> well, get to it! :)
[02:55:40] <mozmckb> workin' on it!
[02:56:05] <mozmckb> ok, I better go tell the fellow I made the component for how to load it properly now...
[02:59:46] <mozmck> cradek: what's wrong with the banjo?
[03:00:11] <cradek> hardly anything - broken string, slightly bogus bridge
[03:00:29] <cradek> we'll probably take it to the local tune-up guy who fixed our mandolin
[03:01:17] <cradek> the action seems high so I bet he can shave down the bridge and save it
[03:01:26] <mozmck> ah. shouldn't be too bad. if he knows banjos he can get it to sound pretty good.
[03:01:39] <mozmck> don't shave the bridge, adjust the neck
[03:01:55] <cradek> the bridge has little chunks out of the top of it
[03:02:22] <cradek> it was twisted 90ish degrees while at least one string was through its notch
[03:02:36] <mozmck> probably best off with a new bridge. the neck just bolts on, and can be adjusted one way or another.
[03:02:55] <cradek> ah ok
[03:03:21] <cradek> would you adjust the bridge position by getting the octave fret to sound like an octave? it seems like it should be easy to get it close?
[03:03:43] <mozmck> head tension is critical to a good sound, and even a bad banjo can sound decent with a good setup, but most repair people don't know enough about banjos to do it right.
[03:03:45] <cradek> duh, or measure it
[03:04:19] <cradek> hmmmm
[03:04:26] <cradek> maybe I'll bring it to fest next year :-)
[03:04:38] <mozmck> you can measure it to get it real close, then I put a tuner on it and fret at the 12th fret and make sure it is identical to the open note.
[03:05:09] <cradek> ok, sounds easy enough
[03:05:25] <mozmck> :) yeah, I can do a setup pretty quickly. I had my banjo in the truck this time...
[03:05:26] <SWPadnos> HAL tuner anyone?
[03:05:41] <cradek> dang, you should have played for us.
[03:06:12] <mozmck> didn't think about it.
[03:07:47] <jepler> 'night guys
[03:07:55] <cradek> goodnight
[03:08:10] <cradek> yay, glad I took tomorrow off. I feel like I've been driving all weekend.
[03:31:45] <SWPadnos> where was the machine?
[12:20:07] <cradek_> cradek_ is now known as cradek
[12:30:07] <skunkworks_> join ubuntu
[12:30:16] <skunkworks_> heh
[12:50:07] <jepler> hi skunkworks_
[12:50:17] <jepler> in case you didn't see them yet: http://emergent.unpy.net/01248037746
[13:01:21] <alex_joni> jepler: nice
[13:02:50] <SWPadnos> cool
[13:03:13] <SWPadnos> jepler, you and Ingrid probably would have enjoyed the bike tour Sharon and I did this past Saturday
[13:04:02] <SWPadnos> started at an orchard, rode a few miles to Shelburne Farms, had lunch and a coulpe of rours (bakery and cheese making), biked to another farm. then a winery, then back to the orchard
[13:04:14] <SWPadnos> with talks at each of the farms about how they do things
[13:09:40] <jepler> SWPadnos: sounds fun
[13:09:55] <jepler> ugh, I should go to the office :(
[13:09:57] <SWPadnos> oh, and there was food involved, and a wine tasting as well :)
[13:10:50] <jepler> it all sounds fun except for the biking part
[13:11:02] <SWPadnos> only 10 miles over the whole day
[13:11:47] <jepler> bbl
[13:22:53] <skunkworks_> jepler: very neat. I don't know how you can get so close :)
[13:23:18] <SWPadnos> macro lens :)
[14:24:33] <skunkworks_> but the bug still has to stay there.. ;)
[14:43:53] <cradek> so I'm thinking of another mesa order for the new mill - at least 5i20/7i33. what other new cool stuff do they have that I've missed?
[14:46:24] <skunkworks_> you got a new mill?
[14:46:38] <cradek> it's not here yet, but yes
[14:46:52] <SWPadnos> when you count the ATC, you might think about a 5i22 instead
[14:46:57] <SWPadnos> the extra connector could come in handy
[14:47:12] <cradek> SWPadnos: I was wondering about that. a lot more expensive though.
[14:47:24] <cradek> 2x 5i20 is not much more than 1x 5i22, and you get 6 instead of 4
[14:47:34] <SWPadnos> that is true
[14:48:24] <SWPadnos> the 5i23 isn't much more than the 5i20, and has a larger FPGA ($229 vs. $199). though I don't know what the extra gates would be useful for at this point
[14:49:39] <cradek> if hostmot2 fits, I don't care how much room is left
[14:50:04] <cradek> I wonder how tight it is currently
[14:51:44] <SWPadnos> one day, I think it would be cool to have something like CL In the FPGA
[14:51:59] <SWPadnos> or at least a part of it (logic and some timers)
[14:52:05] <jepler> cradek: unless I get reenergized about the beagleboard project, I have a 7i43 spare
[14:52:47] <jepler> that'd plus a 5i20 gets you 5 connectors of I/O
[14:53:03] <cradek> cool, I'll keep that in mind
[14:53:19] <SWPadnos> I seem to be missing a few 5i20 cards
[14:53:22] <SWPadnos> I wonder where I put them
[14:54:03] <SWPadnos> oh. there are two in that test machine. phew
[14:54:15] <cradek> have spares you want to unload?
[14:54:37] <SWPadnos> I probably don't need them all, considering that I have a 5i22 as well :)
[14:55:26] <SWPadnos> sigh. time to further disassemble the washing machine
[14:55:28] <SWPadnos> bbl
[14:55:36] <cradek> heh, ok
[14:55:39] <cradek> sounds fun.
[15:00:40] <skunkworks_> cradek: what did you get?
[15:02:16] <cradek> a small vmc with tool changer
[15:04:11] <cradek> http://www.emachinetool.com/usedcnc/catalog/vertical.cfm?ProductID=13201
[15:04:21] <cradek> haha, ignore that price, wow
[15:05:03] <cradek> "machine appears to be in good condition"
[15:06:13] <skunkworks_> very neat - after looking at the mori seikis at stuarts shop - they look really nice.
[15:06:33] <cradek> big ballscrews (1.5"?) and linear rails
[15:06:42] <cradek> 8k rpm spindle
[15:07:13] <skunkworks_> dead controller?
[15:07:20] <cradek> dead/missing controller
[15:07:36] <cradek> used for parts
[15:08:33] <skunkworks_> what kind of servos?
[15:08:37] <cradek> dc
[15:08:40] <skunkworks_> nice
[15:12:41] <skunkworks_> anything major missing?
[15:13:39] <cradek> don't think so. The oiler is busted, control boards missing, a few holes in the table
[15:14:10] <cradek> but basically sound I think/hope
[16:44:59] <cradek> huh, I pushed a new branch to git and didn't get any email or cia
[18:04:40] <jepler> "random_toolchange"? I see it on gitweb..
[18:42:58] <fenn> jepler: i haven't been paying too much attention lately.. what's "the beagleboard project"?
[18:43:06] <CIA-1> EMC: 03cradek 07random_toolchange * r028dd2b265c5 10/src/emc/ (7 files in 5 dirs): stop being ridiculous and start counting properly from zero
[18:44:58] <jepler> fenn: I had hoped to get workable realtime on the beagleboard, and get emc running with the interface hardware being a 7i43 conversing over spi
[18:45:37] <fenn> just curious, but, why?
[18:46:40] <jepler> fenn: Since rtai isn't ported to OMAP, I did some work based on rt-preempt and kernel threads. This gives some pretty good results on an x86 PC (enough to possibly run servo-thread-only systems) .. but on beagleboard I got 300us latencies in good trials and worse latencies in other trials..
[18:46:54] <fenn> what's interesting to me about beagleboard is its small size and low power consumption; not super useful in a machine tool
[18:47:52] <jepler> fenn: why? well, I thought (wrongly, as it turns out) that in such a simple system it would be possible for me to identify and fix the causes of latency .. easier than in x86 where stuff like SMI, PCI bus mastering, and so on are so variable from one machine to the next
[18:48:06] <fenn> ah, right
[18:48:11] <jepler> and unlike a lot of embedded systems, OMAP3 has a useful-sounding floating point unit so that wasn't expected to be a problem
[18:51:53] <jepler> hi ehj666
[18:53:34] <jepler> anyway, I am glad I learned the kernel threads stuff even if it turned out to have limited applicability
[18:54:00] <fenn> i hope rtai gets ported to OMAP eventually
[18:54:42] <jepler> either I'm not enough of a hacker to do it, or I don't care about it strongly enough
[18:54:47] <jepler> I prefer to think it's the latter
[19:02:07] <ehj666> Hello
[19:20:39] <jepler> cradek: in random_toolchange, how do you make sure no tool is loaded in the spindle?
[19:21:24] <cradek> you have to load a "tool" from an empty pocket. there is no way to load no tool, since the only operation supported is to exchange two pockets.
[19:21:33] <jepler> in effect, you'll have to keep track of which pocket goes with tool number 0?
[19:21:58] <cradek> you could put tool zero in your tool table, and leave it empty
[19:22:25] <cradek> but that's up to you and not hardcoded anywhere
[19:22:54] <cradek> a machine with 16 carousel positions can happily use 17 tools - there really are 17 pockets.
[19:25:31] <skunkworks_> cradek: thank you.
[19:25:39] <cradek> skunkworks_: :-)
[19:25:43] <cradek> you will use this, won't you
[19:27:18] <skunkworks_> that would be the easy way... yes.
[19:27:48] <skunkworks_> the harder way would be to use the barcode rings on the tools. (that might be phase 2) ;)
[19:28:26] <cradek> it would be nice to do the random change but also verify the barcode and error if it's wrong
[19:28:33] <cradek> it's pretty easy to get it all confused
[19:29:03] <cradek> anyone have a junk box full of 40 taper tooling they don't need?
[19:30:42] <skunkworks_> I think we only have 50 taper
[19:30:52] <cradek> and I have 30...
[19:33:00] <SWPadnos> I thought that tool 0 was supposed to guarantee that no tool is in the spindle
[19:33:16] <cradek> there is no such operation on a random-toolchange machine
[19:33:30] <cradek> it cannot remove a tool without putting another one in its place
[19:33:47] <SWPadnos> unless it's pulling from an empty pocket
[19:34:08] <cradek> sure, some pockets may be empty
[19:34:26] <cradek> but IMO, it's silly to require you to keep one empty for the sake of a T0 rule
[19:35:26] <SWPadnos> I guess that depends on how that spec might be used, which I surely don't know
[19:35:46] <cradek> the spec doesn't support this kind of machine
[19:36:10] <SWPadnos> I don't know that the interp is the place to put the pocket/tool code actually
[19:36:20] <cradek> yeah I wonder about that too.
[19:36:22] <SWPadnos> that should be in HAL, since it's a hardware specific thing
[19:36:31] <cradek> seems like HAL should only care about pockets - hardware is pockets
[19:36:48] <cradek> I think tool numbers are bookkeeping, not hardware
[19:37:25] <SWPadnos> hmmm
[19:37:27] <cradek> something has to convert from T# to pocket, and I don't think that's a job for HAL
[19:37:36] <SWPadnos> I think pocket numbers are hardware-specific, so the interp shouldn't care ;)
[19:38:04] <SWPadnos> in theory, the interp should ask for a certain tool number, and HAL/"the rest of the machine" should deliver that tool number
[19:38:06] <cradek> the interp does manipulate the tool table
[19:38:24] <cradek> it has to read it (diameters, lengths) and write it (G10 L1)
[19:38:33] <SWPadnos> whether it has to spin to a certain spot, move to somewhere to pick it out of a pocket, prompt the user, or email mcmaster to buy one
[19:38:35] <cradek> using it to do translations is no more dirty than that
[19:38:52] <SWPadnos> that's true, though the offsets are interp numbers, not HAL numbers
[19:39:13] <cradek> it's sure true that this does nothing for grid tool changers
[19:39:22] <cradek> maybe I haven't thought big enough
[19:39:51] <cradek> that's really a problem because of the motion though
[19:41:23] <SWPadnos> yeah
[19:41:35] <SWPadnos> wow. custom cable, only $3/foot
[19:41:50] <SWPadnos> more or less cat5e + USB2 in a single sheath
[19:58:53] <CIA-1> EMC: 03cradek 07random_toolchange * r410af7ebc429 10/src/emc/ (4 files in 3 dirs): fix AXIS's tool display, tool touch off
[20:06:10] <cradek> huh, every time I type a character in the touch off window, I get a traceback about set_xy_rotation.
[20:06:23] <cradek> I wonder how long that's been broken
[20:10:40] <CIA-1> EMC: 03cradek 07master * r92893893e598 10/src/emc/usr_intf/axis/scripts/axis.py: fix traceback when typing into the touch off window
[20:10:40] <CIA-1> EMC: 03cradek 07random_toolchange * rc52ebfcbcc6d 10/src/emc/usr_intf/axis/scripts/axis.py: fix traceback when typing into the touch off window
[20:12:16] <cradek> neat, AXIS comes up with the currently loaded tool showing
[22:18:38] <cradek> hm, now that I really like the idea of the tool table keeping track of what tool's in the spindle, I'm not sure how to handle the non-random (manual?) case
[22:19:06] <cradek> I had it do everything except change and rewrite the tool table, but the pocket-0-is-spindle assumption doesn't work then
[22:19:32] <cradek> I could copy the selected tool into pocket 0, but that's kind of ugly
[22:21:00] <cradek> it strikes me that a human can emulate a random tool changer (number the pockets in the tool holder on the table)
[22:21:19] <cradek> but I don't see much benefit to doing it that way
[22:21:39] <cradek> I put the tools in the table holder in the job's order
[22:22:11] <cradek> I hate when I run out of design before I'm done
[22:22:12] <jepler> yeah -- in terms of user interaction I think it should stay about the same for manual changing
[22:23:01] <cradek> including losing track of the loaded tool? that's a neat feature (and there's the M61 evil hack because it was missing)
[22:25:25] <jepler> losing track over a restart?
[22:25:30] <cradek> yes
[22:25:32] <jepler> it's not much trouble to T9M6 or whatever
[22:25:43] <jepler> or do you mean in case I've forgotten which tool that is?
[22:25:46] <cradek> think of the mazak
[22:26:02] <cradek> it's nonrandom, but a pain
[22:26:24] <jepler> why wouldn't you use it as random with your patches?
[22:26:25] <cradek> also, I wonder what problem M61 solved -- something similar I think
[22:26:57] <cradek> I think you're missing the point, let me try to explain
[22:27:12] <cradek> say you have a tool changer that puts back its tools where it got them, like a table grid
[22:27:35] <cradek> if you have a tool loaded and restart emc, you can now not change tools because you can't put yours back where you found it -- you don't know what it is
[22:27:57] <cradek> so you have to do some recovery process
[22:28:14] <jepler> ah
[22:28:26] <jepler> I was thrown off when you mentioned mazak
[22:28:45] <cradek> well considering its ladder logic set, it's currently nonrandom and has this problem
[22:29:28] <cradek> so I think it's valuable to save the spindle tool's data
[22:30:02] <cradek> but the mazak needs that in hal, so saving it in the tool table gives you nothing
[22:30:14] <cradek> (except AXIS shows the right tool info when it starts)
[22:30:26] <jepler> so the two possibilities are "returns to pocket == tool number" and "returns to pocket == new tool's pocket number"?
[22:31:01] <cradek> well, I don't like pocket == tool number because I want to number all the tools in my shop uniquely
[22:31:14] <cradek> drills start at 1000, end mills start at 2000
[22:31:34] <cradek> * cradek inflates a giant balloon
[22:33:37] <jepler> so you'll have to remember the pocket number that the loaded tool came from, except there's no place to store it..
[22:33:57] <cradek> in which case do you mean?
[22:34:15] <jepler> in the case of the table grid
[22:34:53] <jepler> otherwise how do you know what pocket to put T2000 in
[22:34:56] <jepler> when you put it away
[22:35:16] <cradek> the tool table has pocket 1 = tool 2000
[22:35:28] <jepler> I thought if it was loaded it has pocket 0 = tool 2000
[22:35:35] <cradek> well that's the problem
[22:35:53] <cradek> that's why I proposed the bad idea of copying pocket 1's data to pocket 0
[22:36:16] <cradek> that's confusing for the user I bet
[22:36:44] <cradek> there could be another column "currently in spindle"
[22:37:21] <jepler> blah, I want to get out of the office
[22:37:24] <jepler> talk to you later
[22:37:27] <cradek> ok
[22:37:31] <cradek> me too, bbl
[23:23:06] <jepler> hi stustev !
[23:23:27] <stustev> good evening jepler
[23:23:49] <stustev> I was just reading some history from the last couple days
[23:24:03] <stustev> I like the random tool changer :)
[23:24:12] <jepler> big surprise, cradek is working on a feature he needs for himself
[23:24:21] <jepler> (perhaps you'
[23:24:29] <jepler> ve discovered a secret for how to get a feature into emc)
[23:24:38] <stustev> jah
[23:25:07] <stustev> I was somewhat accused of being diabolical
[23:29:34] <stustev> bbl - must work on car - old but new to me
[23:59:30] <cradek> jepler: you make it sound like a bad thing!