well, home might be with the spindle in the middle of the work surface, not at an end
SWPadnos under what cercomstances?
it doesn't strictly need to be 0,0,0 eitherr
well - I may want a machining envelope that goes from -10 to +10, instead of 0 to 20
if I do bolt circles all the time, for instance
(shaft hole at 0,0, and nake acircular array of holes around the origin)
make a circular ...
SWPadnos Ah, well unless I installed a DRO and use that as a HOME switch, it's gonan have to be 0,0,0
physically on the machien that is
I was just pointing out that home is a well known position - it doesn't have to be at the end of travel
SWPadnos ah, ok. ty =)
yeah - it's easier and less expensive to use the same switch, and on a budget machine, you'd want to do that
SWPadnos Well, like in your example. You can't have a physical switch right in the middle (not practically anyway). But I do understand what you are saying, but I would think that would be a virtiual point rather than 0,0,0
sure you can - use a microswitch with a roller actuator, and a triangular piece of metal on the table
the metal block will depress the actuator as the table passes by
SWPadnos what purpose what that serve?
it would give you home in the middle of travel ;)
SWPadnos (btw, I'm NOT being a smartass here)
SWPadnos well couldn't 0,0,0 plus 50 do the same thing?
assuming full travel is 100
there is an ini setting ofr "home position"
it's usually 0,0,0, but doesn't have to be
ok, and that need to be recalirbrated each time the machien is turned on.
all that tells EMC is that the position is defined as X when the switch is hit
say I have a machine with 25x25 travel (familiar?)
and I want the 0,0,0 reference to be in the center of the work platform
and 5 inches above it
I can put the home switches at the travel limits (on the minus side, say)
and put -12.5, -12.5, -5 as the home position in the ini
now, the table will physically move to the left, front, down -most position it can get
so instead of always mounting the starting point at 0,0,0 you cna now do dead center instead (as example)?
but the display will then change to (-12.5, -12.5, -5)
a g0 0,0,0 will move to dead center
you can also do that if you have a home switch that isn't at the end of travel - you can offset the defined home coordinate for the position of the switch
(most of htese switches have rollers, and will allow travel beyond the dwitch point)
actually - look at these (and buy them, if I were you) http://cgi.ebay.com/ws/eBayISAPI.dll?ViewItem&item=7520414137
* Jymmm looks
these allow you to put the switch somewhere, and have an adjustable block that pushes the switch
SWPadnos whats the diff in those compared to microswitches?
these look harded to mount
microswitch as in the little ones you get at radio shace, or the Honeywell Microswitch brand
[00:14:36] <Jymmm> http://www.lakesidepinballparts.com/switch.jpg
no major difference, except for ruggedness, I think
like that, but withthe longer paddle
also, these are made to have a positionally accurate trip point
it varies by like 0.1 mm or something
I could be wrong, but on that machien, it would seem very difficult to mount those.
where a microswitch can fit in almost anywhere
those seem more like a conveoyer system
true - they are bigger
well - they're environmentally sealed, and have a 1/2" conduit thread on the back
you can run the cable in a liquid-tight conduit
lol, I'm looking at using twisted pair =)
on a larger machine, conduit is essential, since people are slinging around multi-hundred pound blocks of steel
but I know exactly what you mean.
Yep, or on a bottling line
(1 6" vise is around 85 opunds - bad if you drop it on a cord)
these are the ones I have, except 4 of mine have rollers: http://cgi.ebay.com/ws/eBayISAPI.dll?ViewItem&item=7520535866
Cool. I think I'll stick with ms on the 25x25 machine. When I get to 125x125, then we'll talk =)
more like these http://cgi.ebay.com/ws/eBayISAPI.dll?ViewItem&category=55833&item=7520451388&rd=1
do you have the switches yet?
nope, $0.76 each
i go to bed, night all
ok - get some, and see how accurate they are
good night jacky^
I guess I could mount one to my calipers (somehow) and measure it
use a dial indicator if you have one
(not a dti)
dial calipers is what I have
whats dti ?
dial test indicator
same idea, but 100x more sensitive
oh, heh nope dont got one of those
i'll just use the jaws on the dial calipers to simulate the linear motion
but... I do like the idea of using a DRO scale as a limit switch. Just zero it where you want HOME to be
ok - my Omrons have a +- 0.8 mm variation in operating position
jymmm, as a home switch you mean
SWPadnos: that's not very good
Jymmm: one other thing to think about with the open switches is junk gumming them up - the industrial ones are sealed, and chips won't stop them from working
no - it's worse that I expected
on most hexapods they cover the whole moving assembly with thick waterproof bellows; only the clamping surface/spindle is exposed
makes a lot of sense to me
but that's why people are interested in using an index pulse to do accurate homing
heh you could have a cam on your leadscrew that trips a switch :)
well - -I'm lucky enough that my encoders have index, so I'm all set
[00:29:23] <Jymmm> http://oeiwcs.omron.com/webapp/commerce/command/ProductDisplay?prrfnbr=741&prmenbr=316
(in fact, I can AND the index with one of the phases, and get a 1/4000-revolution accuracy)
[00:32:15] <SWPadnos> http://oeiwcs.omron.com/webapp/commerce/command/ProductDisplay?prrfnbr=755&prmenbr=316
0.01 mm repeatability - that's better
SWPadnos heh, login and tell us the $$$$$$$$$$$$$$$$$$$$$$$$$$44
If only I had a login :)
$35 in 10's at Mouser
$35 in 10's at Mouser :)
for $35/ea I can buy 20 extra at $0.76/ea =)
but where would you mount them all? :)
on the 80/20 =)
i saw a homemade optical switch somewhere on the net that was accurate to better than .0001" (.002mm)
ah - that would work
you could do without encoders - just read the position from the switches
assuming you have leadscrews in the irst place
I like the idea of using a DRO scale as a dynamic HOME switch
hit the zero butotn, and you're home baby =)
you can do that with EMC
just select each axis and hit the home button, and you're home, baby
it's just if you want it to *mean* anything, you'd use switches
I need to go drill some holes for this mounting plate. bbl
see ya - it's time for ET anyway :)
ET phone ****************HOME*****************8
SWPadnos is now known as SWP_Away
trying to get axis to run with emc2
it's looking for plat/ but plat/ doesnt exist
emc2 doesnt hve a working make install either
plat is an emc1 thing
so i'm trying to figure out where to put stuff to make it work
nope - emc2 runs from the compile directory
supposedly this is the version of axis that runs with emc2
I've never tried axis... alex got it working with emc2 I think
yeah a couple days ago
gonna look at the source to see what its trying to do
doh! i forgot to patch it.. *bonk*
+ printf("alex_joni was here\n");
is he taking credit? or blame? ;-)
territory, i think
Hi Fellows, I desperatley need some help with some code, I keep getting to line 13 and get a "joint 0 following error"
even though EMC verified the program.
that means your PID tuning is set up wrong (i think)
bpmw: this is emc2, right?
it means the code is sending commands to the motors faster than it thinks the motors can keep up
I'm using emc2
1) you need to adjust the ferror and min_ferror numbers in your ini file (I can help you with that)
Ok I believe they are set to 1 and 0.0001
2) you are being bitten by a bug in the stepgen module (which I have been trying to fix for the last week, I'm a couple hours away from releasing the fix)
1 for ferror is certainly high enough, that's not your problem
but 0,001 for min-ferror is probably too low
Should I try 0.0004?
what is your scaling (steps/inch)?
(or are you using mm?)
what is max velocity in the ini file
0.1 inches/sec (6 inches/min)?
but I only rapid at F3 and Mill at F2 otherwise it dies. I have to eliminate all G00 commands.
yes to above.
ok, you may be seeing the bug
try changing FERROR to 0.010, and MIN_FERROR to 0.003
if that doesn't fix it, then it is almost certainly the bug
Ok, I will give that a try! I'll let you know shortly.
next question: how did you get your copy of emc2? did you follow the instructions on Weyland's wiki page?
Yes I followed them to a tee.
ok, that's fine.. however that means you checked out a specfic version of emc2 (the one I wanted weyland to run) and so you won't get my fix when I commit it
John do I change in all axes?
to fix the version issue:
change to the emc2 directory
and do: cvs up -dPA
could someone send me the generic.ini file... My BDI machine won't save to a floppy, nor does it have a net card.
ohh... don't do that cvs command yet!!
you just reminded me
copy your ini file(s) to another name before you do the cvs up command
sorry A-L-P-H-A, I thought you were bpmw...
bpmw, save your config files before you do the ipdate
don't worry my controller is in garage, have to bring in the house to connect to internet. I'll try ferror avenue first.
I did copy the generic.ini to generic_original.ini
and then started to tinker.
A-L-P-H-A: exactly which files (from which version of emc) do you need?
but something's whacked with that machine, it powers itself off.
this is BDI 4.20 /usr/local/emc/generic.ini I am looking for.
I have 4.20, I can send you that file... /msg my you addy
s/my you/me your/
note: if you are doing anything realtime on a machine (like EMC), you should go into the BIOS and disable all power management stuff
dunno if that has anything to do with your problem or not, but it's worth a try
bpmw_ is now known as bpmw_[A]
* bpmw_[A] is now away - Reason : be right back
jmkasunich, sorry didn't catch that.
now my questions are now to do with the acceleration, pause, and all that other gunk.
[02:03:28] <A-L-P-H-A> http://pastebin.com/296865
<-- movement stuff
generic.ini is on the way
takes a while for email to get there
fenn: it bounced... some overzealous anti-virus didn't like a file named <anything>.ini
what's this Cycle_TIME setting?
renamed to generic.txt and it worked
I'm not entirely sure, there are several cycle_time settings in different sections of the file
you are running the bdi-4 branch which is mostly emc1 - I don't know emc1 very well
in general, you shouldn't be changing stuff like that unless you know exactly what you are doing
limit your changes to stuff like scaling, accel and velocity limits, and such
A-L-P-H-A: your pulley/gear ratio is backwards
should be 30/48
30 is on my motor, 48 is on the drive mechanmism
bpmw_[A] is now known as bpmw_
I got 12800 steps/in for X and Y, 32000 steps/inch for Z
Hi John, That seemed to do the trick. Machine is running right now on 3rd hole. I'll try the update tommorow night. Thanks a bunch!!!!
right me too
bpmw_ that's great
.25" / 2000 pulses * 48 teeth (drive mechanism) / 30 teeth (motor) = 0.0005" = 8000steps/inch.
A-L-P-H-A: think about what happens when you increase the pulley/gear size on the ballscrew
are you subscribed to the users or developers mailing list?
Bye for now.
it should take up MORE steps
jmkasunich, whom? me
A-L-P-H-A: add units (i.e steps/rev steps/in) after each term in the equation and see if it balances out
0.000078125" / step.
yeah, I think you're right... I do have the steps messed up.
now you know why I prefer steps/in instead of in/step
the numbers are nicer
.1" / 2000pulse * 0.625ratio = 0.00003125"/step
no WONDER TurboCNC was messing up so badly.
I was supposed to get 6.35mm, and I kept getting 6mm.
shib. I shoulda double checked my math.
why 30 and 48 tooth gears anyway?
<-- B.Sc Mathematical Sciences too.
fenn, uh... it was what I had handy. haahahhaha
only cost me $25CDN a set.
real live gears? like, involute tooth?
seems like overkill for servos
nono... timing gears. I couldn't get real gears for that price.
XL timing gears.
good enough for my purposes.
oh, you mean pulleys and timing belts?
I'm not machining areospace parts.
yeah, timing gears/belts.
yah i call those things toothed-belt pulleys
jmkasunich yeah the timing belt for a 251 clevland =)
gears mesh with each other, pulleys or sprockets go with belts and chains
pretty easy to make with a lathe and drill press
but these mesh with toothed belts
whatever, you guys know what I'm talking about now. :D
SWP_Away is now known as SWPadnos
you guys have such boring names :)
Actually, I'm Stephen
too many lloyds around here
sorry stephen ;-)
two syllables, beat THAT!
[02:27:47] <A-L-P-H-A> http://lloydleung.com/gallery/Mill%20Photos/IMGP0211.JPG
It's spelled Stephen, but pronounced Steve :)
hey dmess, wanna carpool to the CNC-workshop?
in that case, I was just using the phonetic spelling
nope - not high here
(except in latitude)
where's it at...??
Illinois - near Peoria
about 13.5hr drive. if we don't get lost.
out in the boonies is fine for me... I don't like traffic and big cities
a long way from Matatchewan
i dind get lost... ' )
jmkasunich Population 1,000,000 is small
not around here - that's twice the population of the state!
camp got lost
Jymmm, but those 1,000,000 people don't live in appartments... they live in REAL houses.
I grew up in a town with 6000
there are around 8000 now though
other way with my town, about 3000 now
dmess, Monday, June 20, thru Sunday, June 26, 2005
aqnd it's just south of the "big city" of 50,000
steel mill shut down, my whole generation pretty much had to move away for work
3000-16000 depending on yhe $$ of gold
mostly retirees now
ah - bummer
the county planners here were pretty smart - they started getting high tech companies in the '60s
A-L-P-H-A: www1.atwiki.com/cnc-workshop for what it's worth
not likely ALPHA... landing gear to make... you know..
damn roland never put the link up
dmess, damn you!!!! you're the only one near me to carpool with.
who's in Michigan?
dmess oh come one now... wing it w/o landing gear!
OH!!! isn't Les from Michigan?
ray is in the UP of MI
RAY_H! ahh. yes.
i'll drive the cab... but i gotta be at work on Monday
hehehe... wonder could I get him to drive the rest of the way?
he's going there the friday before
rayh_wayaway is now known as rayh
yes, maybe even thursday
Hi guys. Nice evening and food on the beach.
speak of the devil... you been lurking ray?
Someone looking for a ride.
Where you starting?
oh i carry my own landing gear.. but some of the customers are funny about the initial pics they seen WITH wheels
tu parle francais??
alpha: I'm driving from Cleveland
out on Saturday, back next Saturday
just a jont ALPHA... LOL
hmm... wonder could I meet you in Toledo.
probably... you'd have to fiqure out someplace to leave your car
wonder how much a flight from Toronto to Detroit would be.
welcome to CANADA the largest contry on the planet.... 18 hrs to travers ONTARIO alone... we have 10 provinces and 3 territories... wann go for a drive.. ??
A-L-P-H-A - or toronto to cleveland
Toronto to Chicago is around $375
one and a half ways!
good german car.. not with your yankee shite
circle jerk tour
closer to $600 to Peoria
SWPadnos, found them for $301
im familiar SW
even better - is that CAD?
peoria is bound to involve connections... detroit or cleveland would be direct flights
not bad - that's probably your best bet - food and lodging on the way tend to add up
I think northwest has a detroit hub, continental has a celevland hub
but did they mention YOU get ON the plane.... not IN the plane
SWPadnos sleeping bag and doritos
just like on the plane
SWP: you going to the workshop?
dmess: you associated with messier-dowty or is it just a freak coincidence?
ohh theres a difference...
jmkasunich: I would like to, but I don't think I can
i would so be ..
catch you later guys.
whos fenn associated with
I hope so :)
hmm... $524CDN round trip from Toronto to Peoria.
the scorched earth party
plus my anniversary falls in the middle - I should be here if it's possible :)
cool i fly non powered - self landed stuff too
forget it... out of my budget.
uhhh, yeah, that would be wise
SWPadnos if you ever want to see your testicals again that is
yep - and she can't come along (and probably wouldn't want to :) )
unless Dmess can get a cesna to fly for those days? :)
I want her to see them, but yeah :)
A-L-P-H-A, you have my email... if you want to catch a ride from cleveland, toledo, or detroit, get in touch
hmmm - I can get there for $312 though - hmmm
oh you still get to look at them,,, they show 'em to ya in the jar,,,, for a loonnnggg ting
dmess yours sitting on the mantel huh?
no she dont let mee see 'em that often...
but i got pics from another girlfriend
you gotta lojack them the next time you see em
take em back underground... deep...
go minin' again
[02:52:17] <dmess> http://www.nt.net/~klglover/macassa.html
when MEN were MEN and women were weak in the knees
[02:57:37] <dmess> http://www.kirklandlakegold.com/KLGold2005ver1_files/frame.htm#slide0232.htm
good nite all... be well
jmkasunich: I'd like to confirm that I understand a couple of things about HAL....
ok. a HAL component basically exports pins, parameters, and functions, but doesn't actually do anything until one or more of those functions are added to a HAL thread, right?
internally, a write to a pin (connected via a signal to one or more other pins) happens immediately, since it's just an indirect store
the signal has storage associated with it, the pins are pointers
ah - OK
when a pin is connected to a signal, that means it's pointer is adjusted to point at the signal's storage
I was thinking of the gearchanger module ide I had a long time ago :)
when a pin is not connected to a signal, it points at dummy storage
so the module can dereference the pointer without worrying about where it points
idea, not ide
this is also more generically applicable to the general filter idea I mentioned in my email
I guess that kind of thing will be put together in the .hal file - the integrator can just set up a thread with the gearchange logic module running before the "standard" spindle module
connected via signals
yes - the integrator has to decide which functions should execute first
probably by looking at the flow of data
yep - I'm not sure a program could do it anyway
I think it could as long as you explicitly break loops such as feedback
if you had more metadata associated with each pin, telling the program what function reads or writes the pin
depends - in my idea, there may be several functions which get chained together to provide support for one piece of hardware
I want to go there eventually, but that will definitely be after the big refactor
as an aside, have you seen the work ValarQ has done on a graphical configurator?
no, where is it?
one sec - looking
we talked it through, and he's basically making a graphic front end to halcmd
[03:12:07] <SWPadnos> http://arda.no-ip.org/crapahalic.png
heh - I thought you might like it
we realized that the only way to get the exported pins was to load the module, and see what it publishes
yeah, that is a failing
since the modules can generate different numbers and types of pins, depending on the parameters
actually, the idea is this:
(though I haven't gone over all of this with him yet)
wow crapahalic is really coming along
1) present a list of the components in some directory tree (the same place halcmd would look)
2) when the user puts a component on the canvas, scan the file (or some config file) for parameters to the module, and prompt the user for them
3) load the module with the given parameters (via halcmd)
you are speaking of insmod time parameters at this point, not HAL params, right?
yes - command-line params
4) draw the new part(s) on the canvas, with the pin names from a halcmd enumeration of pins
that's the way to get pins - I can go on to parameters and threads if you like :)
I like that idea... that means as soon as you add a new component, it becomes available to the GUI
yes, but the downside is that you can't run the configurator on a machine that doesn't have HAL
however, it's great for hobbyists, who will be configuring the machine they intend to run EMC on
some of the refactor ideas will help the gui situation
is there a published list of goals for the refactor?
one of the goals of the refactor is to eliminate insmod time parameters
that's a good one :)
lots of people wlil want to configure hal via windows...
dunno if it is the best thing to encourage them though
I won't be encouraging them to use windows ;-)
I'm not sure of that , but they would probably like to "play with it" on Windows
I suspect that there will be a distinct lack of encouragement for that :)
i would definitely like to play with it without having to patch a kernel
re: goals.. no, they aren't written down anywhere. perhaps I should start a wiki page for that so we can share ideas
that would be good
re: config without a patched kernel... that might be possible
I think that figuring out a "large object" atomic update would be good
as long as you don't need to actually run RT threads, I think the rest could be done on vanilla linux
(ie, larger than the machine word size)
I have some misc ramblings on the refactor written down in a couple places (mostly me capturing my ideas, not neccessarily readable by anyone else)
I should gather those notes together, clean it up, and post it
well - I'd put it somewhere on your to-do list, but not hte highest priority
I do remember rambling about how to do large objects (using your ideas of an extra level of indirection, dual buffers, and separate pointers to read and write)
yep - double buffering and a double dereference will probably work
the biggest conceptual change, however, is:
right now, at insmod time, the module reads command line params to see how many and what kinds of hal "blocks" you want
and immediately exports the pins, params, and functs for those blocks
right - you want to be able to spawn blocks dynamically
the refactor wouldn't do that
instead it would export "blocktypes", which are the kinds of blocks it can export
right, you got it
are there technical reasons why HAL functions don't directly call functions in other modules?
(or is ait a design decision)
then a halcmd command can create an instance of a blocktype (we were referring to instances as "blocks")
jmkasunich : My new toy (just ordered it today) http://www.k2cnc.com/KS-2525_detail.asp
ok - can you point me to the technical issues?
if a hal function calls another function by name, then that other function must be present when the module is loaded, so that kernel linking can connect them
which kind of defeats the dynamic linking that HAL is all about
ah - I thikn it works if the modules are loaded on the same insmod line (though I could be thinking of RPM :) )
modules are still loaded one-by-one, and all symbol references in the first module must be satisified from already loaded modules (or the kernel itself) before you go to the next module
thats only a problem if there are circular references though
and the integrator already has to know what depends on what to get the thread ordering correct
but if module A must always have module B loaded to provide some function, then why not combine them?
because module C may also depend on A, but not B
and B and C may be mutually exclusive as well
you mean A depends on C, right?
I think I see where you are going...
right - sorry
A callls foo()
B and C both contain different implementations of foo()
and you choose which one to load?
A provides foo(), which is needed by B and C, but only one of B or C may be loaded at the same time
or like you said - both are applicable
direct calls between modules breaks some of the modularity that HAL has now
since the interdependence is only through pins, which are always valid
you could use the same logic to make direct data connections between modules without using pins, but I don't think it's a good idea
I had thought of that, but I think it's not necessary, since indirection is cheap
though it would reduce configuration troubles
hal function calls are pretty cheap too
there could be a HAL "function" pin
are you trying to reduce the amount of configuration by making modules somewhat self configuring (IOW, they assume some things about associated modules instead of making you explicitly stagte those things)?
it would stretch the input / output metaphor
I was referring to the fact that there are three statements required to connect two pins
oops - pin1 signal
linkps pin2 signal
you are describing two (or more) modules that when loaded would interconnect themselves (either data or execution paths) without using the pin/signal or function/thread mechanism
ah - yes - that would happen with direct function calls
ok, let's talk about the "three statements" issue
it is perfectly legal for a module to call newsig and linksp from within it's init code
so it can make a named signal, and connect one of its own pins to it
so a module could, upon installation, first export pins, then create some signals and connect them to the pins automatically
example: (I dunno if we would actually want to do this, but it's something I thought about)
input to the block (if it was a block) is 6 coords
output is 6 joint values
the main motion core could export those 12 pins
create 12 signals, and connect them to the pins
that presents a problem though - you can't run more than one instance of a module that does that
and you have to be sure that no two modules create the same signal name
then when you load the kins module, it would export it's own 12 pins, and connect them to the signals that it "knows" the core module just created
any connections (function or data) between modules has the same requirements
yes, but they're named in the .hal file, by a human
if you "hard code" connections between modules, that assumes some shared knowledge of the hooks needed for those connections
yes - I'm thinking about fairly specific types of modules needing this stuff (and I'm not sure it's necessary - that's why I want to know why it isn't done :) )
if module A calls foo() in module B directly, you can't have two instances of A for the same reason
heh - ok
if A.0 calls foo(), and A.2 calls foo(), you probably don't want both calls to foo() to manipulate the same HAL pins or other data
granted you can pass a pointer to an instance of whatever foo() is supposed to mess with
it would be no different than one function being called from different threads (like a read or write function)
but that is still more shared info between the caller and the callee
there are very few cases (maybe none) where a function will be called from more than one thread
multiple threads using parts of the same parport, for instance
each has to call read, or it can't be sure the pins are current
nope, that's not how the HAL aproach works
everything is periodic, sampled
lets assume we're talking about read (write is similar, just in reverse)
that introduces aliasing problems when you have multiple threads
the fastest thread that wants to read the port calls read(), which reads the HW and updates the hal pins
all other threads use the pin data
HAL pin data that is
since they are slower, there is no aliasing issue
that's a configuration nightmare (or at least a pretty bad dream)
two threads calling the same function (and possibly interrupting each other) is worse
unless the HAL lib automatically assigns the read/write funcsto the fastest thread that uses them
"enough rope to hang yourself with"
I don't think that is any more of a nightmare than any other part of the thread/function API
fenn: you got it...
heh - there is that
I was discussing PLC functionality, and how it can fit in with HAL
if you have a 1mS thread writing your parport, and you try to send step/dir info from a stepgen running in a 25uS thread thru that port, it ain't gonna work
that's pretty obvious
so how does "obvious" turn into "nightmare"
if I have two threads that run at similar rates, and I change one to be a bit faster,
I need to change which one has the reader / writer functions
it means that I have to do non-local changes for simple things
can you give me a concrete example... all the RT SW I've ever worked with had only a few threads, and each was at a distincly different rate
nope - no concrete here :)
for instance, in a motor drive, there is one thread at the PWM rate, say 4KHz, another at about 5mS for slower stuff, and a third at 50mS
things naturally fall into differnt threads, and you don't go randomly shuffling things around
emc does more than one thing.
there can be a mix of steppers and servos
likewise for EMC, there is a fast thread for software stepgen and encoder counting (completley unused if you don't do those things), the servo thread, and the traj thread
ther could even be more than one "machine" being controlled simultaneously
ok, mixed stepper/servo
(looking at big picture stuff - a pallet changer could be another 3 axes of motion)
using different kinematics
all axis run their axis control code at the servo rate, true servo axis write DACs at the servo rate, stepper axis write position commands to stepgen at the servo rate
q: does it cost more to run another thread with the partport module?
a PLC would have several threads, independent of motion, but similar in rate
then the high speed part of the stepgen module reads the postion command and makes steps for those axis that needs steps
why similar in rate?
I can see having a 1mS thread, a 10mS thread, and a 100mS thread, but not two 1mS threads
well - a PLC usually has toughly 1ms, 10ms, and slower threads (maybe 100ms or 1 sec)
the servo rate may also be 1ms
they won't be in the same thread (maybe)
and I suspect that they wil lrandomly change which runs first
ok, so you have a 1mS thread in the system, which calls the motion functions(s) and the PLC function that evaluates the 1mS ladder
the 10mS thread calls the PLC function that evaluates the 10mS ladder, and etc
then you decide you need a 1.5 KHz servo rate (or PLC rate), and you have to change configuration of the other thread as well
it would also be ideal if one or the other could be shut down, by stopping its thread
I would always run the fastest PLC and the motion in the same thread
I'm not sure HAL should be made so that's the only viable choice though
every place you have data passing from one thread to another, you have potential for aliasing and non-atomic issues
hence, I would very much want to minimize that, by not having multiple threads unless there is a really good reason for it
(like a 10:1 speed difference)
sorry for being ignorant, but what are the non-atomic issues?
well - in testing, I'd want to be able to disable a particular thread by commenting the start command in the .hal file
start affects all threads
OK - then the thread create command (s)
turning off only one thread could be a disaster if there is any interaction between threads
for instance, if a PLC is handling limit switch signals that go to motion
run the motion without the PLC, and you have no limits
* fenn sulks
fenn: if you have a 64-bit piece of data on a 32-bit machine, you can get interrupted after having written the first 32, but before the last 32 have been stored
true - one would have to be careful
right... if that data is being passed from one function to another on the same thread, no problem, because you know the first function finishes running before the second one starts
not so if the functions are in two differnet threads
how heavyweight are HAL threads?
a HAL thread is an RTAI task
heh - how heavyweight is an RTAI task :)
calling individual HAL functions from a thread is very light
and switching threads?
tasks aren't too bad
different stacks of course
save/restore FPU state if either one uses the FPU
I see that there are two radically different ways of configuring a machine with HAL
1) make about 3 RT threads, and load each one with everything that needs to be done for the machine
same memory mapping (assuming the current system, with RT code in kernel space) (the RTAI folks are working on ways to run RT code in user space)
2) make separate threads that perform specific tasks, at whatever rate is appropriate for the task
2) requires much more awareness of RT coding issues
I'm not so sure of that
it depends on the interactions between the threads
and whether the single loaded thread needs optimization to fit within its period
2 does require much lighter task switches to be efficient though
1 thread that does A, B, C, D will always be faster than 2, one doing A & B, the other doing C & D
yes, assuming that a task switch is more costly than the method used to chain functions (which it almost certainly is)
of course if CD can run at half the speed of AB, then the net load is ABABCD and even with task switches it might work out
but in that case, you better not be casually changing to ABCDABCD, or ABCDCD
however, the ability to add or remove functions is much greater with option 2
each thread could be removed without changing the configuration of any other thread
(except for interactions between them)
you mean removing a group of functions?
ie, a PLC can be added or removed without affecting ervo
do you mean add/remove by editing the file and restarting, or dynamically?
and without affecting the part of the .hal file that does servo thread configuration
but dynamically sure would be cool
i'll shut up now
it would also be easier dynamically, if it's possible to stop an individual thread
* jmkasunich needs to check something before I put my foot in my mouth
(and start one, of course)
kill -SHUTUP :)
or SHUTHUP, I guess
checked, my memory is right
in addition to addf, there is delf
mv SWPadnos /dev/null
that was the fastest memtest I've ever seen :)
so you can remove a function from a thread dynamically
cat Jymmm > /dev/null
also, addf accepts a postion argument, so you can add a function anywhere in a thread, not just at the end
OK - that's a good thing :)
"remove a function from a thread dynamically" that can be done (in general) ?
not perfect tho... the arg is a number, you can't say "add this function right after PLC", you have to say "make this function 4th from the beginning" or "2nd from the end"
can you ask which number is PLCFunc0?
fenn: yes, dynamically (use with caution when your machine is running)
jmkasunich that sounds dangerous
halcmd show thread gives you the list, and I think there are numbers
Jymmm: it is, in fact adding a locking mechanism is on the TO-DO list
jmkasunich : I just mean in general (thread wise) be it emc or anything at all.
it happens every time you run or close a program
Jymm; hal takes care of the nasty details like making sure the function doesn't get called after it's code has been removed, unlinking it's pins, etc
SWPadnos Well, if you want to halt, that's fine. but to just shove something on a thread seem s awefully ugly.
but of course if unlinking the pins disconnects some vital part of the machine....
proper operation is not guaranteed
Jymmm: normal configs will set up all threads before starting them
that's pretty neat.. so i could say "remove steppgen" when i'm done using my toolchanger that has a stepper in it?
jmkasunich : Seriously dont mind me. I have a tendancy to see things from a life safety point of view.
that's a good point of view.. and thats why we will have locking that won't let you remove functuons, add functions, link or unlink pins, etc, when the RT is running
fenn: you could do that but I don't think it's a good idea... you'd just have to reconnect it before the next toolchange
for the generic.ini file, should I change linear_units to "INCH" and change all the step UNITS for each axis to my appropriate setting in inches? Or should I change them to their MM equivalent?
jmkasunich I've worked on "things" where they control 5,000 gallons of toxic "stuff" that can drop ppl dead on 4 seconds. so =)
can you change the thread timings dynamically?
fenn: nope, that you can't do
the fastest thread determines the period of the HW timer on the mobo
the other threads are integer submultiples of that
urk - OK
(the realtime OS makes those rules, not hal)
you might be able to change things on the fly, but you'd have to use the RTOS api to do it, and you'd have to be very carefull
I think it would be just about impossible to do it without significant disturbances
a n d t h i n g s g o t s l o w
so they set the timing back to normal :)
in theory if you changed the HW timer only, everything would speed up or slow down proportionally
what about stopping hal and starting with a different configuration
stop realtime threads, stop timer, unload everything, load new config, start threads
that's probably good enough for anything I would ever want to do
there are some messy things today, because of the lack of a userspace->kernel path for halcmd
are the slower threads just queued every N PERIODs?
hmmm - so ther eisn't likely any "load leveling"
I say probably because that's most likely how the RTOS does it...
where do I read about the EMC ini file setup?
let me know if you find out
A-L-P-H-A: try the User.pdf on sourceforge
set timer interrupt for fastest thread (say 1ms), on interrupt, mark the 1mS task runnable, every Nth time also mark the Nms thread runnable
HAL doesn't get involved in thread scheduling, it leaves that to the RTOS
A-L-P-H-A: both the trajectory planner and axes (linear_units and units) are set to 1/25.4 in my .ini
and if there are N, M, and P, all of which are multiples of N (like decades), then you end up woth 3 or 4 threads being ready in the same tiny little stepgen period
fenn, but how do I set the the step size then??
right... but they have decreasing priorities
INPUT_SCALE nad OUTPUT_SCALE
the rtos scheduler runs the highest one that is runnable
if P is still running and it becomes time to run N again, N is higher priority, P is suspended, N runs, P resumes
if the 1mS thread needs 200uS each time, it uses 20% of the CPU
yep - it works out OK, since they aren't run from the fastest task (as it would be in an RTOS-less micro)
A-L-P-H-A: my input_scale is 6400 and output_scale is 1000 (but i hear they are supposed to be the same? but it works anyway)
if the 10mS thread needs 5mS to run, it runs in several 800uS chunks which add up to 5ms
ie, every N interrupts, do this extra thing as well
right... I've done things like that. now I know what you mean by load leveling
yep - differnet "phases" do different rate tasks
do A at 1mS, 11mS, 21mS, do B at 2mS, 12mS, 22mS, etc
GOD this emc.ini file is a pain in the mofo arse.
heh - that it is
just wait until you have to configure a hexapod :)
luckily you only have to deal with 87.3% of it :)
(note: emc1 does "every N interrupts do this extra thing" for the TP
servo code runs on every servo cycle, then every traj cycle the traj code runs too... and it must finish before it's time to run the servo code again
OK, but independent of freqmod, if it's used
the "fast" thread that is used for stepping is independent
emc2 creates three threads, the "fast" one, the servo one, and a traj one
but right now, it doesn't use the traj one
it runs the traj code every servo cycle
I wonder if that's why weyland (I think) said it was smoother?
but the intent is to move the traj code into the traj thread, so it can spend more time if needed
I don't think so - I think his problem was mostly PID tuning
* jmkasunich thinks it's insane that you have to tune steppers
not really - they're subject to mid-band resonance and acceleration curves just like servos
(though the driver needs to take care of some of that)
PID tuning can't do squat about that, it has no feedback
the EMC1 PID "feedback" is just a count of the outgoing pulses
Can someone help configure my system? What else do I need to know? http://pastebin.com/296899
yeah - it does allow a slowdown if the pulse generator can't keep up though
right - followed by an overshoot later
and if you don't have it tuned right, it can still accel/decel faster than the motors can track
well - that's not ideal
I guess they shouldn't need tuning, but they sure do need setup and testing
the emc2 stepgen module will never exceed accel or velocity limits and is overshoot free except under some rare conditions
the rare conditions are an input signal that just slightly exceeds the limits of the motor, then abruptly stops
if the input is within limits, stepgen tracks it
that module operates on a position input, right?
if well outside limits, stepgen makes a smooth move to the final value
A-L-P-H-A: table size, acceleration, velocity,
ah right - you wanted to short-circuit the PID
right - there is no PID block in stepgen, instead a bunch of math and conditionals
A-L-P-H-A: axis direction is probably best figured out once it's running
fenn, 28" x 8" (x&Y respectively) Acceleration = dunno. Velocity >=40 ipm would be nice.
does some lookahead and estimatiing to decide when to slow down
A-L-P-H-A: you have to figure out what maximum accel/velocity will work before your motors choke
A-L-P-H-A: velocity is determined by your motors and such...
k, well, what I HAD working with turbocnc was the following: Acceleration = Acceleration=5000.000000000000
right - I was thinking that it should take a "standard" velocity output, like a servo driver would (similar to JonE's stuff)
those are in Hz.
with EMC2, I would start by driving the motors independent of EMC itself (using hal siggen) and determine what they can do
freqgen takes a frequency/velocity input and makes pulses... you can use that with a PID block if you like PID tuning
or you can use it in other applications that need frequency output
stepgen takes position input
both provide position "feedback"
yep - design goal: take position input
I've got no feedback mechanmism right now
A-L-P-H-A: wth is StartSpeed?
that's incompatible with taking velocity input :)
fenn, initial freq to output.
fenn, start faster than 0?
you dont start at 0?
fenn, it's cause Turbocnc doesn't have lookahead, or continous motion.
but you don't use an emc ini file with turbocnc
are those numbers you gave us your Turbocnc config data?
that still seems weird to me
and there's no equivalent in emc (AFAIK)
SWPadnos, thank you. :) I'm trying to MOVE from turbocnc to EMC.
you're welcome :)
I'm afraid I don't know anything about turbocnc so I can't help you translate your TC params to EMC params
SWPadnos, fenn, that was the data from my turbocnc.ini file, that I'm posting, to show you what I was running before.
did it take 3 seconds to get up to full speed?
those parameters that I just posted, where the acelleration and max speeds of my machine that worked with turbocnc.
they will, and I understand will be difference in EMC.
what are the units on acceleration?
but lets work with those numbers for the time being... so I can get my machine to at least move.
yes - 15000 max speed, 5000 accel - did it take 3 seconds?
but we have not idea what the numbers mean...
SWPadnos, about that.
actually 2.7 seconds, if it started at 1500
ok, so we're guessing that Tcnc would start at 1500Hz, then ramp at 5000Hz/sec to a maximum of 15000Hz
yep - that's my guess
IF that is true then we can calc the emc numbers
OK - 12800 steps/inch on X & Y
15000Hz at 12800/inch = 1.172 inches/sec top speed
I swear, once I figure this INI file out, I'll write a parser in php, and slap it up on the web for all the use.
OK by me
especially if you include the USC stuff
5000Hz/sec accel at 12800/inch = 0.390 inch/sec^2 accel
wow those numbers are so not matching up. :/ hahaha
ini file probably needs more comments, huh?
well what was your max speed in inches per second running Turbocnc?
1.172 IPS is 70.32 IPM
fenn, oh yeah... the ini file DEFINITELY needs some formating, and what's important to change and what's not.
OH!!!! IPS != IPM.
k, now the numbers are matching up.
I hate minutes as a unit of time
yeah who thinks in minutes?
no - the sec is much better
like "I'll just be a sec"
even better - surface feet per minute ;)
"in 0.252 minutes i'll be done with this part"
unless you're using Excel... the default time unit there is days
that's just for recalcs though
jmkasunich, well... time has NO natural phenom. to equate too. Not like mass. or something. I guess if you want to time the frequency of a cesium atom at STP... but I digress.
k do we have enough info for my EMC ini file?
we'll find out
you can try max velocity 1.172 for X and Y, max accel 0.39 for X and Y
one second is exactly the time it takes light to travel 299,792,458 m - that's a natural phenomenon
Z will be slower, cause it's 32000 steps/in in stead of 12800
186200 *miles* /sec
SWPadnos, only in a perfect vaccuum. If there's matter in the way, it slows down.
a m is a meter
SWPadnos I'm lazy... alright?!
yes - I'm fine with that
as long as you don't have any space-time distortions caused by a nearby star or universe
jmkasunich, Z speed isn't _that_ much of a concern, as long as it's able to go >20ipm.
SWPadnos (in a vacuum)
A-L-P-H-A... what it is able to do is determined strictly by your motors, drives, and machine
it'll be around 27 or so, I think
the ini file is telling EMC how fast EMC should tell it to go
yes - in a vacuum
299792458 m / s
if the ini says go at 200 ipm, EMC will ask it to, and you'll get missed steps
jmkasunich, okay, understood.
z will probably be less than x and y, since it has to lift a mass
What is IPS (Industrial Pipe and Steel?!)
there will also be a limitation based on the PERIOD you choose
inches per second
what is this period? the time between pulses?
ips != ipMinute?
period is another ini file parameter
ideally, the motors will e the limiting factor, not the fastest period you can use
jmkasunich I think SWPadnos was confusing me
he's doing 10x microstepping, so max frequency might be the limit
period is the rate emc runs at (?) something like that
yeah, I am doing 10x microstepping. G201 drivers.
the PERIOD in the stock generic.ini file is 0.000024, 24uS
hmmm - you may want the G901s, especially for the Z axis
that's 41.666KHz interrupt rate, so 20833Hz maximum step rate
you can turn up the period to get a higher step rate
on a fast enough machine
actually you make PERIOD smaller to get a higher step rate
and if you make it too small your computer locks up
A-L-P-H-A: is this the same machine as you used for TurboCNC?
k, default of 0.000024 should be okay.
SWPadnos, yes. I've made it dual boot with DOS and EMC.
nevermind - a duron 700 should be fine down to 20 or maybe 15 microseconds
TurboCNC is working fine, just without the features I _want_ / _need_ now... so I'm turning over to EMC... it's been a process for a while.
I can always dump a Athalon 1400 in there... just need to learn this INI file.
1/PERIOD = interrupt rate
max step rate = 1/2 interrupt rate
max velocity = max step rate / steps per inch
on my pentium 2 period is .000016, and i haven't even tried taking it to the limit
hence the G901 suggestion for Z at least - 32000 sptes per inch is a lot
max accel is harder, that is determined by motor, load, and drive characteristics
(for software generated pulses)
probably need to start low on the accel and increase until you start losing steps, then reduce it by 20% or so
jmkasunich max accell. Is that 'whatever', jogging, underload ?
SWP: slower travel on Z isn't usually a serious problem, because Z is usually short
Z = 3.5"
I expect jogs use max accel
dunno if this is applicable, but accel too high can affect accuracy also
the machine wobbles around a lot
normal machining moves have their speed and accel determined more by the part program and the feedrate
when the steppers lose steps and chatter
yeah its more noticeable on a really wobbly machine like mine
but it will still happen at the .001" level on a bridgeport
what's this P, I, D stuff? Can that stuff be ignored, as I'm using steppers?
fenn 'wobbly machine' like it's not rigid enough?
unfortunately no, not with EMC1 (or the bdi-4 branch you are using)
fenn : ah, ok. I was just trying to understand your techincal terms here =)
A-L-P-H-A: yes you - you can probably set I and D to 0, and P to something like 1 or 10 (or whatever they say in the sherline doc)
the mdf table is heavy and causes the gas pipes to flex around
A-L-P-H-A: yes you, answering the PID question
ff0, ff1, and ff2 should also be set to 0
fenn black pipe for rails?
Jymmm: yes, i didn't build it, it's a terrible design but it works
fenn : I'm not judgeing, just asking as I can't see the pipes in the pic =)
MAX_VELOCITY = 1.0 <--- does that mean right now, 1" per second?
just wanted to get that out there first :)
yes, 1 inch per second
jmkasunich: go write some code!
but I keep bothering him with HAL questions ;)
that was a good discussion, worth a little lost sleep
ah - good then
just doing final checks and cleanup before a commit
then I'm outta here
fix the overshoot but?
wow... this is so much stuff to cram into my head.
A-L-P-H-A: there's a fair amount of stuff in there, but it's not too hard if you break it down
A-L-P-H-A: wait until you have to start programming EMC
emc is very capable and configurable, so there is a lot in the ini file
fenn : You got an aweful lot of EPS in there too =)
i love that stuff!
mostly for lost foam casting
fenn what are you doing with it?
and other noodling around type stuffs
where do you get EPS that's 2" - 3" thick?
SWPadnos Home Depot
nope - I think they have 2", but not 3
hmmm.. bender lumber (local) has up to 2" blue stuff, i found the 4" stuff in a construction dumpster
I have the RQ Riley plans for a carbon fiber recumbent bike, and it uses foam as the core material
still dont know where to get pink stuff
you can glue foam sheets together with rubber cement
SWPadnos : The mfg of EPS sells almost excluively to Home Depot and Lowes. I spoke with their Marketing Mgr. Just go to the order desk.
but! it can make a little ridge where the two sheets are joined
pink foam.. that reminds me of something I saw on the web a couple months back
ah - hadn't tried the contractor desk
college kid build a model airplain out of pink foam, with electric power
yes 24 FEET
okay, so what do I set for the input and output scales? As I have no feedback, does input matter?
that must've cost a lot just for the foam
fenn I have hot glue for EPS =)
A-L-P-H-A: yes - input scale should match output scale
set them both to 12800 (or 32000 for the Z)
fenn just use low temp glue and gun and you'll be fine
Jymmm: hot glue isn't very accurate when you're gluing matched pieces together
if the table goes the wrong way (for a given axis), then flip the sign of *both* input and output scales
[05:24:56] <SWPadnos> http://www.rqriley.com/xr2.htm
fenn that's what gorilla glues is for =)
well, i'd rather have something that doesn't release cyanide when i burn it
gorilla glue=cyanoacrylate based
fenn since when?
eh, i thought it was
it's a water activated polymer base
okay it's polyurethane
IN CASE OF FIRE, FORMATION OF CARBON MONOXIDE, CARBON DIOXIDE, NITROGEN OXIDE, ISOCYANATE VAPOUR AND TRACES OF HYDROGEN CYANIDE IS POSSIBLE.
anyway, i haven't found anything that works better than rubber cement, not even "StyroGlue"
SWPadnos: that's a pretty neat bike
yeah - I thought so too
my wife bought me the plans
should be really easy if you have the cad files
they're in Rhino, so it's not as easy as it could be :)
but yes - that was an idea - cnc, CAD plans, good combo
nice that the total weight is 27-32 pounds as well
kinda heavy compared to most modern bikes
especially made from CF
but a CF bike is $2500
do I have to worry about any of the torque units and whatnot? Roto Inertia etc?
03jmkasunich * 10emc2/src/hal/components/siggen.c: fixed a couple of comments
I don't think so
A-L-P-H-A: that's why you're doing max accel
that stuff is mostly used for simulation of servo motors
(they are the specs of the imaginary motors)
are those in the [AXIS] sections, or an [EMCSIM] section?
03jmkasunich * 10emc2/src/hal/components/blocks.c: added a 4 input multiplexer block to HAL
03jmkasunich * 10emc2/src/hal/components/stepgen.c: rewrote the position loop in stepgen to prevent overshoots when following a command that is right at the accel and velocity limits of the stepgen block
[05:37:40] <A-L-P-H-A> http://pastebin.com/296913
<-- only did the changes for the first axis.
is that right? or assumely correct?
you should enter a max_acceleration
SWPadnos, what line?
I think John had the max_velocity at 1.172
uncomment that, and change it to 0.390
is that your backlash number?
yeah, that's my backlash.
0.0065" it used to be much smaller.
I dunno why it's grown... but a factor of 3.
used to be like 0.002"
if you have problems with lost steps, change backlash to zero and test again
and I haven't put any hours on it really.
k, I will change it to zero for now, and test
I think SETUP_TIME and HOLD_TIME (lines 200,201) are also applicble to steppers, not servos
if you have problems with backlash, and they go away when you set backlash to zero, you might want to consider emc2... but try emc1 first
Max_Velocity is how FAST in inches to accelerate per second. (?)
SETUP_TIME and HOLD_TIME are not documented.
setup time is how many periods emc waits after a direction change, before outputting a step pulse
hold_time is how many periods the step is kept active
or it it how long after the step pulse before it can change direction?
silly me, i thought velocity was velocity and accel was accel
that may be important for geckos
I wonder if it's used in both capacities?
so should they be left alone? or changed for osmething?
I'm not sure... emc2 does that differently
you can probably change hold_time to 1
no, leave it at 2
I think that is for geckos
is that the total step duration (high and low)?
I think it is time from end of step pulse to direction change
at 15 uS PERIOD, one is plenty for either
okay, where do I tell it what PIN to use?
geckos want you to hold the direction input (Mariss prefers that you change direction only immediately before step)
you don't - those are hardcoded in emc
you can't tell it what pins to use, that is hard coded (you'd need to edit code and recompile, or use emc2)
well, luckily I have them set to what the pins are supposed to be.
true, but the hold time is in the 2 uS range, not 15
but still... that's kinda silly to do it that way.
well, once this works, I'll worry about EMC2 for kicks.
so, am I _almost_ good to go with this ini file then?
A-L-P-H-A: hardcoded pins are really stupid IMHO
this is a BDI install, right?
SWP: trust me, geckos have a very strange direction timing requirements
yes, bdi 4.18 or was it 4.20?
the newest one.
actually it might be the pulse multiplier ones only (G210, or G901)
jmkasunich: yeah - I know, but the numbers are all below 5 microseconds - the max. step rate is 200 KHz
the direction bit must remain stable untill all the multiplied pulses have been generated
yes - you may be right about that
so perhaps not a factor for alpha, he's not multiplying
but better safe than sorry
210 / 310, with the 901 instead of the optoisolator only
now I know how the stupid girls feel, when they ask me for math help back in Uni.
Matt Shaver is the one to ask about SETUP and HOLD
he put them in, and I think he did it for geckos, so he probably knows how to set them
* fenn gets out his slide rule and pocket protector and does a few quick calculations
I can hear my bed calling me....
I've honestly never seen a slip stick in real life. just in pictures.
jmkasunich, thanks for th ehelp
damn, it's almost 2am... I think this I'm just gonna save it, and test it in the morn.
though I am hungry right now. :/
if you've got it hooked up, you might as well see what happens
otherwise you'll toss and turn all night
the only other things to change are the min and max limits
don't really need to do that just for testing
fenn, the other issue, is that the stupid floppy doesn't mount! so I can't copy the files over... and I dont' have a NIC in the computer. (I thought it did have one, but no)
SWPadnos, I disabled them on purpose.
mount /dev/fd0 /floppy ?
fenn, shouldn't it pick it up automagically?
i think he meant soft limits
no - it's not automatic
yes - I mean soft limits
automagic can be annoying sometimes
your machine has 28 inches in X - you may want to set +/- 10 for limits so you don't try to drive off the end of the machine
SWPadnos, I made them 1000, and -1000... even though my machins is 28 x 6 x 3
SWPadnos, I can't... the machine physically can't do that.
unless you have a good E-STOP, I'd put some kind of limit in there for testing
k, I'll do that.
and what happens when the machine hits the end, and the stepper is driver further?
and set your machine to where you want 0,0,0 before you start emc for the first time
SWPadnos, the motor just skips
no damage to anything?
SWPadnos, nope... well... I'd probably wear out the belts early... but belts are $2-3CDN a piece.
ok - then leave it :)
fenn, SWPadnos, thanks for the help thus far.
sure - good luck
yes, some day i'll be old and grumpy and ignore you
promises, promises :)
if i'm lucky
hehe... most of the people that went to codefest are old... only personw tihout grey hair is SWPadnos.
maybe he just dyes it.
I think Martin had blond (but he took the photos :) )
I've got natural blonde hair... well, a patch of it... and then blonde highlights.
that's funny.. whenever i think of linux programmer i think "generation X"
<-- trailing end of GenX.
but what's the range of valid values for X?
siblings are GenY.
borne in the 70's. Late late 60's count.
ah - not me then
ah - me then
well - maybe
65 to 79 are GenX.
I guess I'm generation WXY or so
80+ Gen Y. 90+ gen nothing yet.
GenX is essentially the babyboom echo.
ah - my parents reproduced later than average, so they're not baby boomers, but some of us were born in the genX timeframe
so parents that were born 1945+ but before 1955.
well... you count.
shouldnt gen Y be the children of gen X? seems like people have it all wrong
fenn, no... cause there's also people after the babyboom.
but PRE genX.
yeah but they dont have anything to do with the babyboomers
usually, a generation is considered 25 years, I think
Essentially GenX are the ones that get the shaft.
no specific requirement that everyone reproduce in that timeframe though
google, genX timeframe.
(my oldest sister had her baby at 40, and a neice at 18)
it definitely varies widely
The years 1965-79, 1964-82, 1960-1970, 1966-1977, and 1970-1983 have also been used in articles on Gen-X, but these all seem very arbitrary, and as you can tell, are all over the map, demographically.
a niece had one at 18 - to be more clear there
I'll be back in bit... contacts out and food.
well - I'm gonna head for bed - it's 2 AM
greetings and salutations! who's still awake?
SWPadnos is now known as SWP_Away
i'm awake, but brain-dead as usual
spent all day trying to get axis to comple on emc2
hmmm... that's bad. i'm still trying to compile the kernel... lol
well, at least the kernel has documentation
yeah, i just don't read manuals unless i'm at the end of my wits
hmm.. bad idea in linux
i know. i'm not a linux guy. just starting in linux.
[06:07:48] <fenn> http://www.digitalhermit.com/linux/Kernel-Build-HOWTO.html
i can tell you about M$ internals but zilch on linux
are you doing just a plain old kernel?
or patching rtai?
i just downloaded the 4.20 bdi yesterday and am just starting to try emc2
ah.. should be good to go i think
the source is in there. i have rtai3.1 and am just setting up
just fudging along
is there a doc on how to get started?
have you read http://wiki.linuxcnc.org/cgi-bin/emcinfo.pl?BDI-4_Install
hmm... read that as well
uh. cd /usr/local/emc/src/ ; make ?
umm.. not trying to run emc1
trying to go for emc2_HAL
ah yes of course
[06:11:33] <fenn> http://wiki.linuxcnc.org/cgi-bin/emcinfo.pl?HowToTryEMC2
i'm the one in the dev email trying for world domination.
yep, read that too.
oh you're johnathan perez?
yeah i had the same idea
what i need is an idiots guide.
sorry that's the best we got
i'll probably write one myself after i get through this
i'll be documenting what i do as i go along
have you looked at the printed manuals? user.pdf and integrator.pdf have some sections on using linux
yup, read those as well. devoured all the doc i could find
i'm trying to get all the docs in one place so they're easier to find
that would be nice
okay, so what do you need to know?
Kn1ghtjp yeah, i just don't read manuals unless i'm at the end of my wits
um... i'll try to hack through the thingy at the moment and maybe bug you when you're less brain dead
you might want to get some rest
i learn more by making mistakes.. hehehehe
well, learn how to set up limit switches before you do the trial and error method
okidoki! catcha later.
* fenn blinks.
btw your workflow idea is very similar to what i was imagining
i want (someone else) to write a conversational programming layer above gcode
workflow is a bit mature now than when i started 6 years ago
i was a consultant for Unisys specializing in workflow and imaging
I integrated the Unisys workflow product in myriads of installations for government, financial, medical and whatnot
i also got to work with the FileNet workflow product and some others
this is for OCR type stuff?
i could easily see workflow being used to automate production flows for EMC
right. most include ocr, icr type stuff
from document imaging to processing to archiving.
i need some of that.. trying to get rid of all my paper books
i'm more experienced in high level software engineering than bits and bytes
good, that seems to be lacking around here
lol, you should have seen my desk. we sell the idea of paperless offices, but the e-business team has the most paper
well, at least certain people don't like high-level programming
paperless might work if the tablet idea ever actually works in reality
that's because it's less programming and more design. geniuses like to dispense with designing and go straight to code
well, geniuses and morons like me like to skip design and go straight to coding
but that doesn't work in a collaborative environment like open source
people just say "wtf is this"
just what do they say right now? *wink*
get the design documents! we can fix this yet! i hadn't been an IT consultant for 10 years for nothing.
half my life is paper
half of a consultant's job is documentation
the other half is the actual work
um, design documents..
righto.. where are they by the way
still being created
emc2 is supposed to fix the mess that was emc1
but half of emc1 crept back in
more than half actually
ah... i know the feeling. i have been in some projects like that
and, since "it works" people say there's nothing wrong with it
maybe that's a little oversimplified
well, if it ain't broke, don't fix. but why make emc2 then?
but that's what the whole NML controversy is about
i stayed up last night reading the RCSlib stuff
read my email to the dev list "rocking the boat" for my view of the situation
needs a couple of nice graphicalfront end stuff though
RCS and NML are ridiculous when you actually look at the code
well, NML is, havent looked at RCS
the concept for rcs is good. the NML is actually workflow stuff.
i was actually surprised to find that out
what it needs are proper carriers which are not documented/implemented
by carriers, i mean the transmissiion protocol in the transport layer
mind if I interject a bit here?
I have the RCS book - though I haven't read it all
most of hte NML related code is auto-generated by a graphical application
i've just gone through the tutorials and stuff on the website
geez no wonder
yah, saw that. it's in java
that's part of why it looks so crappy
if most people only have that graphical app or something better.
NML is multi-OS, multi-transport, multi-CPU
that's a *hard* thing to do elegantly
it takes care of things like endian-ness automatically
yup, it's all stated in theory. few implementations though. the graphical program is in java.
I've looked at the stupid 480-line case statment, and wanted to replace it
it's not a theory - there is a windows GUI that can run a remote emc machine
the implementation for EMC2 has to be decided though. It
i think the problem with NML is that the code isn't high-level enough
sorry, wrong word used. I meant that it's all design.
implementation is not provided
a large machine (think of a 300-foot long printing press) needs to have an I/O and motion system that supports distributed operations
you can't use things like C++ RTTI when you send an object over a wire
RCS is high level. RCS uses NML for the messaging protocol
but you cant do that in realtime anyway, so why worry about using low level stuff to send messages?
unless you guarantee that all systems have been built with identical compilers (and CPUs and OS)
a message saying "paper low" doesn't need to be RT
but it may need to be 100 feet from the controller
It's a (what's the word used) Framework
NML is a message transport system
SWP_Away depends if you have to actualy MAKE the paper =)
RCS is a design methodology that happens to use NML
and on that not...
dang that food is yummy
* fenn does photosynthesis through his eyes on the light coming out of the computer screen
no, instant noodles, fried egg, and veggies... a feast I tell you!
anyway - when you look at the communications libraries out there, you see that there aren't a lot of them where:
(a) it's lightweight
(b) it's open source
(c) it's multi-platform
aol is coming out with some protocols... I believe for voice and webcam video.
(d) multi-platform extends down to microcontrollers on a serial line
c) is hard and d) is damn near impossible for ANY piece of software
NML accomplishes all of them
lightweight being a matter of opinion, of course
haven't seen NML itself, can't comment on that. on paper, it looks good.
[06:39:22] <A-L-P-H-A> http://slashdot.org/article.pl?sid=05/06/03/1529240&from=rss
I am wrong.
one other minor thing, before I actually go to bed :)
I was wondering about the execution speed of a humongous case statement, and how to improve that function
most of the compilers that I've looked at assembly output from have been for microcontrollers
SWP_Away, depends on how intelligent the compiler is.
you'd have to actually test the output.
so the case statements are a sequential check of all the cases
break the case statement into little bits
you have to add a lot to the design
but apparently, gcc and many modern compilers make a B-tree out of it
so the execution speed goes up in O(log n)
what's the target platform? i may have missed the thread
all of them! bwahaa!
target for what?
for the compile
for the compile of what?
of the program with the case statements
(that probably looks like an extremely stupid question)
ah - that case is part of emc, so the target is Linux
i thought it was part of NML, which you want to compile on doze and microcontrollers as well, right?
i was going to recommend manual window optimisation, but that is not feasible for linux, hehehe
the particular function is an NML -related part of emc - hold on
to optimise, start with the case statements for the most processed routines, ending with the least processed routines
its emcsh.cc right?
that'll take away a few if/then mc in the loop
ah - in BDI4 sources, it's src/emc/nml_intf/emc.cc
the emc_format function - get a barf bag before looking
yay! i get to loook at the code... rigga ragga noggin.
sorry - emcFormat
then the next one - emc_symbol_lookup
ah yes emcFormat's a good one
I agree that the use of C++ is pretty horrific in the NML library
also, that things like those two functions are abominations
but, I can't deny that there are a lot of good reasons to use NML, and only a couple of good reasons not to
I'd love to come up with a way to fix the few problems, but I haven't been able to
in my opinion it's stalling new development, and that's a good reason to try for something different
I think any new system would stall things a lot more
yes, for a while
imagine the effort to convert to CORBA or SOAP
(or whatever those are - I can never keep track :) )
i think anything you need to read a whole book on to learn how to use is too complicated
i saw a book - Learn CORBA in just 14 days!
I can write NML programs today - I just don't know it well enough to be able to make deep technical comments on it
i think NML and RCS are a lot of fluff
I read about 70 pages of the RCS book
"The RCS Library does not specify implementation details. Therefore, it does not limit the implementation on particular hardware or software. "
but that doesn't mean anything!
sure it does
I'm off to sleep I think
CORBA is useful in many situations. Because of the easy way that CORBA integrates machines from so many vendors, with sizes ranging from mainframes through minis and desktops to hand-helds and embedded systems, it is the middleware of choice for large (and even not-so-large) enterprises
now that means nothing! :)
and i dont want to have to sift through all that crap when i'm learning about something
right - do you have a suggestion for a replacement library?
i'm leaning toward D-BUS
I'll look at it, and see if it meets what I thinik are the requirements of EMC
not that I'm a real power here
i think they are exceedingly modest about reliability
the d-bus programmers
maybe i just like it because it doesn't pretend to be the final product
oh - I don't think NML does either, but that's just my opinion
by final product i mean "NML will run your robot for you!"
they don't say that
or "CORBA will organize your computer!"
not in so many words
they way "here's a way to send messages to do thinkgs like controlling a remote robot"
okay the RCS documents do a lot of that; the nml documents don't, you're right
yeah - rcs is a whole other thing entirely
and that's why it was thrown out for emc2 :)
i was surprised to find out that NML takes about 70 times longer to send a message than d-bus
hmmm - measured how?
i dont know anything about how code style affects performance; that doesnt make sense to me
i'll have to look it up again
no - though D-BUS doesn't handle endian-ness, for example
[07:08:46] <fenn> http://www.isd.mel.nist.gov/projects/rcslib/nmlperf.html
hello mr Away
[07:10:12] <fenn> http://lists.freedesktop.org/pipermail/dbus/2004-November/001779.html
i'm probably reading that wrong
can't recall where i have heard about it...
it's an inter process message layer
i'm back! interesting discussion. The compararing of D-Bus and NML would be like comparing apples to oranges
note that NML was sending over a network (10 mbit ethernet), and DBUS was over a local "bus" (for the comparable tests)
i just quickly snuck to the dbus link
fenn: ah, i was thinking hardware
* ValarQ confuses himself
D-bus more an implementation. a set of libraries
NML as it is. is not.
if you are comparing the NML implementation to the dbus implementation, maybe the NML library is at fault
because they seem to do the same things.
in concept. heheheh
dbus looks like it really isn't meant for netwrok communication, and certainly not serial. It will still work over a network because it can use a socket, but it's not meant for it
i think one of the main reasons they developed DBUS was that DCOP was flaky over a network
not that we're ganging on you fenn, DBUS looks great, but it's not NML. (does that make sense?)
hehehe, confusing myself now
DBUS wasn't designed for exactly what we're doing, but neither was NML
well - I think NML was, actually :)
you can use DBUS to implement NML, actually.
actually - no - you're right - it wasn't
RCS was made for something at NIST, and one of the guys working on EMC heard about it, and decided to use it
I think that was the deal
anyway - It's now 3:17 - really time for bed.
good discussion - keep looking for the perfect library
machinists know there is no such thing as "perfect"
fenn, question, would Dbus be able to support interplatform communication?
rigga ragga noggin
well? whaddya want
that's not very important to me, so it doesn't really influence my judgements
the email on dev,
fenn: Power, Money and Women. :)
i wanted to run Windows GUI and EMC backend
Not in that order of course. :)
i got replies saying i should compile RCS lib on windows, and rcs lib on linux and get the 2 to talk somehow
i'm not much help with multiple platforms since I don't have multiple platforms
so, i don't even know what the differences are
the NML has sample code, but APIs like DBUS are good if they already exist
i like reusing code. i love copy and paste.
aside from that, power, money, women look good
i read somewhere on the dbus mailing list that someone had done work on a windows port of dbus
[07:25:43] <fenn> http://lists.freedesktop.org/pipermail/dbus/2004-September/001551.html
(that wasnt the message btw)
i'm always collecting alternatives, ah ok. over sockets or named pipes.
i wonder if java web services would be fast enough?
fenn, how complete is the emc2 design document?
HAL is written up, that's the realtime side of things
any diagram on the overall architecture?
does it follow RCS?
anything written down would be here: http://wiki.linuxcnc.org/cgi-bin/emcinfo.pl?Future
we're still discussing the overall architecture i think
at least swp and i are :)
if you mean "sense, model, act" then no, not at all
ah ok. so, roughly, a gui would interact with a daemon through a messaging layer, the daemon would control Sensor API, Motion API, etc?
what form would the callbacks take?
not sure you're using the term API correctly
what's the term used?
i thought API was a set of guidelines for writing code that works with a library
Application Programming Interface - API
ok nevermind about what word to use
how is it right now? i've read emc2 runs a mill
i know about HAL, what controls hal?
does the Hardware abstraction layer also encapsulate sensors? (sorry, my newbieness leaking out)
right now the g-code interpreter goes into task, goes into motion, goes into hal ?
all that code is emc1 code
ah ok, the Task block contains the movements, the motion block contains the implementation of the movements, and hal takes care of the hardware interface?
just verifying my understanding. what does "movements" include?
sorry, not familiar with the terms you use. making it up myself as i go
you learn pretty fast
i just started mucking with emc in the last 3 weeks
how did you find it?
i'm probably the wrong person to learn from :)
lots and lots of irc logs
easy? troublesome? difficult?
irc logs a good source of info?
maybe with more disciplined use of searching tools
there's the log repository
gak! that didn't work.
ooops, copied the "See " part
FYI anytihng with "mod" is an emc1 thing, anything with "gen" is a HAL thing
so stepmod == emc1 and stepgen==HAL
part of my problem is i've never been involved in a "real" software project before
but that's also why i'm doing it in the first place
gotta go over the hump some time
Aha.. I've been looking for this page.. http://www.crydom.com/products/productFamily.aspx?id=24
that's not as bad as i thought.. $30 or so each
Yeah, And the Zero-Crossing units are the cheaters way to handle 3-phase. :)
i've been in too many software projects. ran several myself. too many=very bad for your health.
life is a terminal disease, caused by birth
life has a 100% mortality rate
All people die, no exceptions. well maybe elijah and that other guy
Enoch was his name.
immortality is easy if you're an alchemist
nah, Dumbledore destroyed the philosopher's stone. it's hard again.
this might be interesting re: dbus on multiple platforms: http://dbus.freedesktop.org/doc/api/html/group__DBusTypes.html
hmm. dumbledore. i was talking about real alchemists.
what are the 3 bus types? i'm trying to find out the available implemented transports
Starting a server seems to start up a listener
"There are four types of messages in D-BUS: method calls, method returns, signals, and errors. "
yuk, dbus wiki still under development
and it will be forever, no doubt
what are the transports?
there's IPC, you mentioned sockets,
oh, found the tutorial.
it has wrappers
fenn: What's the whole bit with multiple machines needing sync?
the implementation of dbus is very different from nml...
Kn1ghtjp: i really dont know what you mean "what are the transports"
each app has to have a message queue running
Phydbleep: if you have the gui on one computer and the motion control on another
Phydbleep: you don't really need sync on a microsecond level
and it's impossible anyway
fenn: the transport layer in the OSI (open system intercommunications) standard is where the connections are set up ... well, nevermind... i forget halfway
it's been too long
i'm getting old
this is like, TCP/IP?
or the protocol on top of tcp?
right, TCP is Transport control protocol. it's on top of TCP.
what are sockets, exactly? i never learned that
IPC- or interprocess communication happens when an app calls a dll
over the internet, or a network, when an application wants to talk 1 on 1 to another app, that's what's usually used
* Phydbleep wonders why SMTP (Think pro music not email) has not been considered.
SMTP - simple mail transport protocol --- too simple
pro music -- dunno -
Standard Media Timecode..
loopback sockets are sometimes used within a computer as well
oh time protocol
ah... the video editing stuff
yeah that works for syncing
the answer is simple, the media doesn't support it. lol
It's the same system that is used to sync massive multitrack recordings.
yes, but the media records the timing.
No all the time.
right, when the computer can keep time for the media
in the digital world, clock cycles are used.
NTP network time protocol
Take $20 worth of firewire cards/cables and use that for the control link.
you're obsessed with firewire :)
More immune to RF in the shop. :)
more expensive codecs too
has anyone made an opensource USB breakout board?
i'm running out of inputs on my hw
i'm sure they have
Kn1ghtjp: What codec? Run it as raw sockets or mod the ip1394 stuff.
Kn1ghtjp: Like for switch inputs?
how much is a 1394 chip for the receiving end?
ok i gotta go to bed, you guys play nice
not familiar with firewire
G'nite fenn :)
do you use firewire?
For a few things... Tested the ip1394 driver, I have a firewire card/drive/port on laptop.
what do you control with it?
Were you wanting a CHEAP switch>USB breakout?
switches, inputs, motor control
* Phydbleep has an easy fix that reads as an aux keyboard.
i mean... emc-->usb--->breakout board --> drivers --> motors
Get a $12 Dual LPT card.
and possibly... sensors --> breakout board --> usb --> emc
yeah, i got one. am running out of slots though
Switches>USB>EMC is easy.
yeah, saw the keyboard mods
Get a $9 USB keyboard and gut that sucker. :)
I know where there is a bi-directional PC/USB chipset for <$15....
* Phydbleep just realized how easy it would be.
I'm in Australia, i usually get stuff from jaycar or dick smiths... when i have to order, postage makes it expensive
where? where? i like cheap
How about Wal-Mart or Tesco?
no wal-mart or tesco here.
Tandy just got bought by dick smiths
dunno what ASDA is.
Best-Buy? Cheap PC parts place?
yup, there are places around for PC parts. what's it called?
a force feedback usb mouse?
* Phydbleep was looking for the manufacturers link.
* Jonathan looking around for it as well
It's a Philips/Gemini "Recoil" http://www.thetwistergroup.com/product/GGE908%20D25297.html
Force feedback, 12 button, dual analog joystick. :)
oooh, usb gamepads, i got several of those!
hmmm, time to open one! thanks for the tip!
I paid USD$15 for this on.
I think the feedback motors are independantly controllable in this one.
interesting... did a make on emc2. didn't get any errors. i must have done something wrong.
how are you doing today?
just got to work
soon I'm heading home
oh - that's too bad :)
SWP_Away is now known as SWPadnos
at least it's not so warm outside
that's good - I don't like much heat wither
got your mail, but I need to get home to test it
I actually found out that I had a STL viewer installed ;)
but this viewer has problems with that STL
seems some parts are missing
there is a binary STL version
and that one works
it will be interesting to see if the dxf looks right
(maybe the file is broken?)
we shall see..
did you produce a dxf?
maybe you can mail me that one
I could try it out now
python is what I lack at the moment ;)
can I just dcc it?
just a minute: transferring
did you get the request?
sorry.. wason the phone
cradek: got it
how r u doing
cradek: the gcode.ulp mods to do odd-sized holes with an end mill is coming along nicely
cradek: it's pretty buggy
but I suspect the STL was broken
alex_joni: what looks wrong?
alex_joni: do you have a known-good stl?
you'll have to write a new configuration file that looks like ".03125\n .032;.028;.038\n .042;.038;.048" to give the mill diameter (.03125), and for each drill you have the range of sizes you want to actually drill with it. (eg drill .028 through .038 holes with the drill you call .032)
the one I know it's good is not ascii
but hang on, I might have a good stl
it'll also screw up if your board has a hole smaller than the mill that isn't done by a true drill. I guess in that case I'd need ot error out.
jepler: it will be nice to figure out the tweaks (acceptable drill sizes) once and then have the software figure it out.
alex_joni: my program ignores the surface normals that are specified in the stl, so it's possible some triangles face the wrong way. I'm not sure whether acad's 3DFACES have a front and back, though.
alex_joni: if they don't, it doesn't matter.
cradek: gotta go now,
if I find a STL I'll mail you one
alex_joni: ok, bye
you need an stl from solidworks?
I could use a simple, known-good, ascii STL
i can make one in solid works if you like but not sure ascii?
I have a pretty simple, known-good ascii SAT file ;)
have a look at it and see if it's human readable
joe2000chevy:it should have an option on the export
(in an editor)
how about an adjustment block from my cnc machine?
cradek: how about an SAT ?
i cut them in UHMW
sure, anything that I will be able to look at and see if it's right
looks nice too ;)
alex_joni: what is an SAT?
cradek: think I know what the problem is
only option is the asci sat
STL is supposed to have only one solid in it
stl does not say ascii
cradek:autocad only does binary stl's
export that is
* cradek shrugs
yes, the sat file can open in editor
facet normal 0.979799 0.000000 0.199984
i can email both i just created if ya like?
it looks like this?
sure, email is fine
here is the beginning of it.
1300 0 1 0
37 SolidWorks(2004231)-Sat-Convertor-2.0 12 ACIS 13.0 NT 24 Wed Jun 08 09:44:31 2005
1 9.9999999999999995e-007 1e-010
-0 body $1 -1 -1 $-1 $2 $-1 $-1 F #
-1 name_attrib-gen-attrib $-1 -1 $-1 $-1 $0 keep keep_kept ignore copy @13 Small Adj Blk #
-2 lump $3 -1 -1 $-1 $-1 $4 $0 F #
-3 rgb_color-st-attrib $-1 -1 $-1 $-1 $2 0.75294117647058822 0.75294117647058822 0.75294117647058822 #
-4 shell $-1 -1 -1 $-1 $-1 $-1 $5 $-1 $2 F #
-5 face $6 -1 -1 $-1 $7 $8 $4 $-1 $9 reversed single F F #
-6 rgb_color-st-attrib $-1 -1 $-1 $-1 $5 1 1 1 #
-7 face $10 -1 -1 $-1 $11 $12 $4 $-1 $13 reversed single F F #
-8 loop $-1 -1 -1 $-1 $14 $15 $5 F unknown #
that's not an STL
-9 cone-surface $-1 -1 -1 $-1 0 0 -19.050000000000001 0 0 1 12.699999999999999 0 0 1 I I 0 1 12.699999999999999 forward I I I I #
-10 rgb_color-st-attrib $-1 -1 $-1 $-1 $7 0.75294117647058822 0.75294117647058822 0.75294117647058822 #
no the sat
stl solid works does not output it in ascii
oh, I see
this is the stl from solid works in notepad.
but i can import it in acad
what are you trying to do?
test my program that converts from ascii stl to dxf
I wrote it for alex_joni
well how do you get the stl to start with?
I don't know; it's his file
oops closed wrong window
indeed young emc'ers
I trust we are all well?
hi robin_sz , well
robin_sz: do you know some good cad for linux to create 3d text - g-code ?
jacky^: yeah, ask webersys, nice package, not free, but fairly priced
he has ttf to dxf conversion in it now I think
want to see some 3d text I did?
[19:51:41] <robin_sz> http://www.quacky.co.uk/~robin/woodcarve_old/
click "samples" onleft side
that is an OLD site,
like 5 or 6 years
very nice :-)
is yours the website ?
yeah, not used any more
sold the router :)
those where doen with either Signlab
my compliments, very nice
robin_sz: you buyed synergy ?
it wasn ot exactly what I needed for my application, but I was impressed and the pricing was OK
better value than say, Autocad
i don't like to use non open sorce software
and does a LOT more
i think like rayh.
i'm a little fanatic, i use debian
I like to use whatever works best for me
can't find any software
its hard for linux cad
whenever I can I use open source
i think if i buy a sherline products, maybe i also help the developers
but, when the best is not open source, I pay.
seem to me a good thing
well, for fun or hobby, you can be a fanatic if you like, thats fine. in business, you have to keep up with the best, or your business is gone.
I use open source if I can, but sometimes, its not a good business move
ciao alex_joni :)
otherwise i'm absolute contrary to proprietary software :\
sherline is the official sponsor of the group
let see if can i use credit card to buy synergy..
ah.. but synergy is a sherline product ?
* jacky^ ugh
synergy has no conection with sherline
with the staff of linuxcnc maybe ?
the only connection between emc and synergy is that synergy is on the latest BDI
and that's because paul_c and websys were so kind to include it
robin_sz: how's life?
npt tpp bad
seems you're catching an accent in ch
not too bad
hey, im in the UK still
.ch is septembre
it's still june here
still pursuing a couple of decnet sized laser jobs
never mind alex_joni, he's feeling funny tonight
both looking promising :)
* ValarQ isn't to bright either
right ... I need to go do some drawrings
ValarQ: go on crapplication ? :P
jacky^: "go on"?
acc.. my bad english
you mean i should burn it on a cd and walk on it?
are you working ?
no, er yes, er no
i'm hitting my head against a wall
take a pause then
i'm so dumb it's a miracle i haven't burn down the house yet
ValarQ: that's cute;)
i have been making a new servocard for our milling machine today
yeah, would be even funnier if i didn't make so many mistakes
it worked after a couple of hours thought
and this time i didn't destroy that much...
the hacker attitude..
to bad i don't have a photo...
it's a (more) stable version of this: http://arda.no-ip.org/ip2.jpg
(ignore my copy of "Bored of the rings" under my wallet)
nah, not that nice, the new card looks much better
but it's a lot of fun :)
* ValarQ is of to grab some food
Hello folks, does anyone know if John got the new stepgen module done, and is ready for updating?
bpmw_: seen some commits from him
I think it should be ok
bpmw_: you knowhow to update?
He gave me the command last night, but had to finish milling a couple of pieces. So will try when I get home tonight.
bpmw_: should be ok
Better get back to work, bye for now!
alex_joni: do you ever sleep?
soon ValarQ, soon
I learned to sleep fast
* ValarQ is of to bed
gotta compress it ;)
this is it for me too
alex_joni : it's only 1400
[00:31] <Jymmm> alex_joni : it's only 1400
get your ass back here! =)
heh.. night Jymmm
just in case: good morning, good evening & good night ;)
alex_joni oh go away before I take away your fuzzy bunny slippers!
forget afternoon :)
Jymmm: US ?
jacky^ : TZ
jacky^ : as in Twilight Zone
ah.. i've not idea..
Jymmm: noooo, not my bunny slippers
jacky^ : Yes, PDT California
I'll get cold without them
wow california ? :P
alex_joni : and your favorite blanky too!
i've been in LA in 2002..
I'm only 30 minutes from the beach
Jymmm: that's what I meant
i'm also at 5 min of the beach ! :P
we had some very warm weather last week
about 30 C
south italy ionio sea
also here ..
now it's only 12
but it's nice, I like cold weather
i've seen venice beach, fantastic
* alex_joni liked venice
alex_joni no you dont, you just like having an excuse to wear your fuzzy bunny slippers!
and my blanky
well..newsflash..I don't need my blanky
but.. beware if smbdy messes with my bunny slippers
I burned it anyway
Well, I guess I did my good deed for the day
Jymmm: here is a photo from L.A http://www.roboitalia.com/modules.php?name=coppermine&file=displayimage&album=lastup&cat=&pos=5
Cool, I havne't been to Univ Stu in YEARS
uff. connection lost :\
i installed synergy via apt
and now , how to run it ?
syner-tab nothing Syn-tab nothing :\
ah.. /usr/weber/bin/synergy !
[21:54:22] <A-L-P-H-A> http://linuxdevices.com/articles/AT7871136191.html
<-- just something of interest
Hey - that's my university!
if I just shove a NIC into the computer, will BDI-4.20 recoginize it immediately? or do I have to script in some drivers?
A-L-P-H-A: which card ?
I actually don't know.
has a few chips on it... PNIG, DELTA, MYSON.
lspci will tell you
you should find something like this:
0000:00:04.0 Ethernet controller: Silicon Integrated Systems [SiS] SiS900 PCI Fa st Ethernet (rev 91)
you also need to setup /etc/network/interfaces to work in dhcp or static
* anonimasu yawns
how's things goiung?
bah, I need more crimp connectors
bedtime for me too
I'm such a neophite. I decided to screw reading the docs, and just reinstal bdi4.20 to get the NIC to work.
52x CDrom doesn't take _that_ long.
A-L-P-H-A: maybe nothing will change
lspci what says ?
I'll let you know once it's completed.
are you reinstalling ?
I'm going to the mall to return something... hate over paying shit. it was marked on sale for $20. they sold it to me for $30. :P
I am reinstalling... in the other room. :)