SWPadnos: similar step to what?
oh right, that's a different file
that's from the rtai debian/rules
btw, so far so good on the compile. Took 1:40 on Lenny.
right - the rtai config also needs that, but of course the kernel build doesn't care/know about that since it's a separate config file for RTAI
SWPadnos: you lost me
for the linux kernel image, you use a config file
which defines CONFIG_NR_CPUS and so on
for rtai you could use a config file, but it's not needed
you can also pass most of the info to rtai's ./configure
right. there's a config file for rtai as well, which defines the max number of CPUs for RTAI
it doesn't have to exist :)
you can just call the rtai configure --enable-shm --enable-fpu --disable-rtailab --disable-netrpc --enable-cpus=8 etc
for some old reason I had to downlod linux-0.01.tar.bz2
now I get to read that instead of sleeping :D
some comments are really funny: "Wirzenius wrote this portably, Torvalds fucked it up :-)"
vsprintf.c -- Lars Wirzenius & Linus Torvalds.
EMC: 03bigjohnt 07TRUNK * 10emc2/docs/man/man1/iocontrol.1: add pin type and direction
you find the most amazing things alex_joni
* BigJohnT heads upstairs to be with wife for a while
* alex_joni is off to bed
ehj: I'm with you in spirit (and I've bookmarked this discussion, alex's comments will help me too)
jmkasunich: how is the robot?
will you make it?
I think so
contest is the 20th
I have the internal representation of the maze set up (data structs, etc)
I have a human (debugging) view of it working
and am about to get a "make what the camera should be seeing" view working
sounds good - it always seems like so much time when you start, but then it goes away
once I get this "should be seeing" view, then its time to start correlating camera to maze
that will be the make-or-break task I think
woot, another bug squashed
[03:32:04] <jmkasunich> http://jmkasunich.com/pics/mach-vision/mazelog-000-0028.png
jepler: do you still have tort.py? I think if you would modify it to not change planes, the paths could be run with comp on
jmkasunich: is that from image recognition?
no, it is what I think is out there
IOW, given a list of nodes and edges that make up the portion of the maze I know about, that is what I expect to see
(edges aren't being drawn yet)
will you know something about the maze?
initially I'll only know the section at the bottom
I will be starting somewhere between the section with a cross line, and the dead end at the bottom
ah I see
so those two nodes and the edge connecting them will be part of the initial model
so you have to explore it
then as I see things, I'll add new nodes to the model
neat (and very challenging)
I added two more nodes as part of a test
[03:36:39] <jmkasunich> http://jmkasunich.com/pics/mach-vision/mazelog-000-0030.png
same maze in "show the human" debug format
this format can show the entire maze in a reasonable size image (about 600x600 pixels
the other format would be multiple megapixels, so I only generate a portion centered on where I think I am
alex_joni: after your last commit: emc/rs274ngc/rs274ngc_pre.cc:293: ostrzeżenie: control reaches end of non-void function
ah, right.. thx
alex_joni: I think it was late commit ;)
yeah, missing a return :)
EMC: 03alex_joni 07TRUNK * 10emc2/src/emc/rs274ngc/rs274ngc_pre.cc: fix warning by actually returning a value
alex_joni: M61 must set iocontrol.0.tool-number or not ?
it doesn't do it now
and in halui tool_number is u32 and in iocontrol it is s32
M61 cause change halui.tool.number
micges_mill: it should set iocontrol.0.tool-number
EMC: 03alex_joni 07TRUNK * 10emc2/src/emc/iotask/ioControl.cc: update iocontrol.0.tool-number when EMC_TOOL_SET_NUMBER is received
micges_mill: fixed now.. let me know if it's ok
and thanks for spotting it
micges_mill: they probably should be u32 both
since tool number is only positive, or 0 for no tool loaded
I think the same
alex_joni: I'll test it soon
EMC: 03bigjohnt 07TRUNK * 10emc2/docs/src/ladder/classic_ladder.lyx: add numfloatin numfloatout
EMC: 03bigjohnt 07TRUNK * 10emc2/docs/src/gcode/main.lyx: add g4 to table
EMC: 03bigjohnt 07TRUNK * 10emc2/docs/src/gui/images/ (5 files): move to images directory
EMC: 03bigjohnt 07TRUNK * 10emc2/docs/src/gui/ (axis.lyx axis_fr.lyx): moved a few images
* BigJohnT is off to work
are you pissed at me about the splash screen thing?
no, why do you ask?
your message to emc-devel
hmmm, did I send the message to chris to emc-devel?
cradek: could stuart's issue come from updating in the wrong dir?
maybe only updating axis.py, and not tcl, or the other way around?
anyway I'm not pissed at all just opened mouth and inserted foot I guess
BigJohnT: oh, you didn't mean that to be public?
ohhh, I didn't guess that
* alex_joni suspected from the first paragraph :)
I was trying to make chris feel a bit better about it
alex_joni: oh, maybe in src, not getting share?
not something BigJohnT would say in public ..
cradek: that's what I thought
BigJohnT: I'm sorry I got worked up over the splash screen thing, fwiw
alex_joni: good guess, you might be right
I have a bad habit of doing that
jepler: got a chance to look at my latest emctask.cc change?
I'm not happy with it.. but it was ~2am..
* BigJohnT has a red face now
BigJohnT: don't sweat it
alex_joni: I'm sure I can find some verbal abuse for you too, hold on
[15:01:56] <alex_joni> http://cvs.linuxcnc.org/cvs/emc2/src/emc/task/emctask.cc.diff?r1=1.34;r2=1.35
oh, I'm used to that
* alex_joni grew a thick skin over the years
alex_joni: why the synch thing?
jepler: duplicating that function seems daft, but I thought it's better than fixing all calls to the original function (if replaced by the 2 param one)
* BigJohnT should stop reading e-mail first thing in the morning before coffee is done
cradek: I just copied the old emcTaskPlanExecute() function
don't ask me why it's like that :D
the diff is not quite the best way to show what I don't like
I basicly had to duplicate the emcTaskPlanExecute() function
and I don't like duplicated code..
* BigJohnT wanders off to the license office to give away some money
alex_joni: that's a perfectly good example of inheritance and polymorphism in abject oriented programming. http://typicalprogrammer.com/?p=8
I get that, but that still means touching lots of calls to the initial function
EMC: 03cradek 07TRUNK * 10emc2/src/emc/usr_intf/axis/scripts/axis.py: fix BIG DRO for joint mode (nontrivkins)
UnboundLocalError: local variable 'droposstrs' referenced before assignment
EIP: [<f8f81a92>] hm2_encoder_tram_init+0x15/0xf0 [hostmot2] SS:ESP 0068:f6fa5bf0
somehow he caused NULL to be passed to hm2_encoder_tram_init, but I don't immediately see how that would happen
it shouldn't be, so the config string parsing probably needs to be improved a little
if it is actually the config string that's the problem
I have question: Is there any issues to put sub on top of gcode not at end after m2 ?
It would never have occurred to me to put subroutines after m2
I always put them before
micges: I agree with jepler
as a programmer I also think it's more natural to put the subroutines before they are called
so I stick them in the beginning of the file
alex - SMP compile ran 45 min to an hour, then errored out on 'dh_testdir'; /bin/bash: dh_testdir: command not found; make: *** [custom-install-rtaismp] Error 127
ehj: seems like you're missing dh_testdir
try to install it ;)
Where is it? I see the reference is only in files in rules.d
(if you don't know what package provides it, use apt-file search)
apt-cache search dh_testdir
if that doesn't help then apt-file search dh_testdir
k, I was thinking it was a variable which was trying to be executed as a command.
I think it's a command
and it's part of debhelper if I'm not mistaken
debhelper is now installed, will see what happens.
Got past that, now complaining about dh_gencontrol. Have a guess on what package that is in?
maybe try: sudo apt-get build-dep linux-image-2.6.24-16-rtai
no install with apt-get?
no, apt-get has more commands than install
build-dep means install the build dependencies for a certain package (meaning programs used to build the package)
Could not find package linux-image-2.6.24-16-rtai
maybe try: sudo apt-get build-dep linux-image-2.6.24-23-generic then
or whatever kernel package you have installed
Yes, that worked, as far as installing.
did it install any new packages?
Yes, quite a bit,72MB so far.
Compile is off chugging again.
Nope, same error.
Several errors preceed it of the form package linux-image-2.6.24-16-rtaismp is not in control info.
dh_installchangelogs, dh_install_docs, dh_installdeb
hmm.. that's not good
can you pastebin the list of errors?
I did ./build.sh > log.txt, but the error messages still displayed to the terminal, not in the log file.
select with a mouse, copy .. then paste at pastebin.ca ?
or use script before the build
Alex - Doesn't copy.
select the text, then middle-click in the text entry field
without deselecting the text or selecting anything else
Here is the link to the error messages; http://pastebin.com/mb9f233c
After I did "script ./build.sh > log.txt the length of build.sh went to 0
ehj: no other message just before the top message?
script <however you set the log file name>
No because it got captured in the log file, but that file just go overwritten.
don't redirect build to the log, script does that for you
and it includes stderr and stdout
well in the case of ehj, he named the logfile ./build.sh
so script tried to write there
k, too late now, build.sh got zapped
that's a potential problem :)
there was no subsequent command, so build.sh got zapped
obviously you have a backup, so all is fine
remember to exit from the script shell
ehj: is this PC connected to the internet directly?
so it has a real IP address?
build.sh only contains one line:
Well I can look it up, it is dynamic, created by verizon.
"DEB_BUILD_OPTIONS=parallel=2 NOEXTRAS=1 fakeroot debian/rules custom-binary-rtaismp && dpkg-buildpackage -S -us -I.git"
did you put that in the build.sh ?
about procedures I've asked time ago:
Yes just got it in
this is the file
run it in sim_mm
ehj: ok, no go to the top dir
(the one that contains Documentation, arch, .. , debian, and so on)
yes I am there.
Says it is up to date.
, try stop and restart it at line 61, sim_mm config
it will run from line 767
now "debian/rules debian/control"
ehj: still around?
k, full log posted to http://pastebin.com/m6f0cae48
yes, sorry didn't realize chat had scrolled.
it's really close now :D
ehj: did you run "debian/rules debian/control" ?
yes, said everything was up to date
oops, wait, there were two commands like that, just a sec while I do the second one.
ok, ran through, did not give any errors, just dumped a bunch of script.
now grep debian/control and look for anything called rtaismp
for example: grep -e rtaismp debian/control
Nothing came back
grep -e rtaismp debian/control.stub ?
Nothing there either.
ok, so something isn't right :)
I am glad you are smiling. :)
why shouldn't I?
it's nice if there's something not right, means we get to fix it
hang on a bit
there should be a line called "all_custom_flavours = lpia rt lpiacompat xen openvz rtai"
add rtaismp to that line
k, I am there
close enough :D
Got it once I typed on the right keyboard.
ok, now we do the "debian/rules debian/control.stub"
and grep -e rtaismp debian/control.stub
ok, now got something ending with "ensure that upgrades work".
from the grep?
ok.. lets assume it's ok
k, build again?
rebuild debian/control (using debian/rules debian/control)
then run the build.sh
got past dh_gencontrols
dpkg-buildpackage: unknown option or argument -ur
-us .. probably my typo :/
20:41 < alex_joni> "DEB_BUILD_OPTIONS=parallel=2 NOEXTRAS=1 fakeroot debian/rules custom-binary-rtaismp
&& dpkg-buildpackage -S -us -I.git"
hmm... nope, your typo :P
k, just a sec.
I am lucky just to key on the right keyboard. :)
you can now run only the second part of the command, the first one succeeded apparently
dpkg-buildpackage -S -us -I.git
ok, seems to be chugging past that point
Too late, I already restarted it.
I guess this is where a many-core machine would come in handy, huh
if the first part succeeded then you have your binary .debs; the second step is preparing debian source packages.
jepler: right, probably unimportant for ehj
I have a much faster machine, it was just easier to build for the machine on which I am attempting to run.
yep (unless the other one also runs Ubuntu 8.04)
which I guess it doesn't
No still on 6.06 and dual boots to WinXP.
incidebtally, which processor architecture did you end up with?
no, I mean the processor type in the kernel config
Results 1 - 10 of about 224,000 for 8086 SMP
May have finished, ends with warnings "secret key not available" "clearsign failed", etc
ehj: going one dir up, you should see linux-image-2.6.24-16-rtaismp_*.deb
and the same linux-headers-*.deb
yes and yes
presto, that's what you needed :)
now to see if they install & boot
k, dpkg -i ...
you need to install them on this machine too
k, just a sec
in order to build a rtai package against it
if you only want to build the rtai package, we can do that now
This is the same machine on which it is to run.
But building is fine.
jepler: do you still have tort.py? I think if you would modify it to not change planes, the paths could be run with comp on
cradek: not sure, but I can look for it
thanks. I thought I had it, but I only have some output
ehj: did you download the rtai source?
cradek: I found this but I'm not sure it's what you want: http://media.unpythonic.net/emergent-files/sandbox/comp_tort.py
Hmm, I thought I did. I remember the version number being 3.1 rather than 3.2
I will download it again.
doesn't matter that much
I don't seem to have the original, but it looks like this one is already (partially?) converted to output paths specifically for testing cutter comp
ok, I see, it is named rtai_3.6.1-linuxcnc..., I was looking for a file by a different name.
jepler: yeah it looks promising, thanks
Extract into the home folder?
I think it will work if I can get entry moves that are long enough
ehj: no go to debian/
extract in debian?
no, you said you already extracted the file above
in rtai/ there should be a folder debian/
in debian/ there is a file called rules
second line: KERNEL_VER=2.6.24-16-rtai
you need to change that line.. but I'll let you guess into what :)
now run the build.sh in the top dir
Still referring to the old linux headers (Unmet build dependency linux-headers-2.6.24-16-rtai)
Use -d to override?
fix debian/control too
There is Build-Depends, Package and Depends referring to ...-rtai, change all three to rtaismp?
Looked like it work, just a similar Failed to sign... warning at the end.
now you have a rtai-modules-2.6.24-rtaismp package
or something like that
if you can stick it somewhere on the web, I'll put it in the /experimental directory on linuxcnc.org (assuming it boots :) )
Yea, just tell me where to stick it. I just had to say that. :)
you can stick it anywhere you like :)
* alex_joni would have an idea where to stick it.. :P
if you have web space somewhere, just put it there and give us the URL
Yea, let me try to put it to my ftp site.
kernel, modules, rtai - whatever packages you end up with
* alex_joni runs for a while
ehj: let me know if it boots ;)
Rebooted fine and detects 4 CPUs.
Download and compile EMC from source normally?
jepler: Issuing EMC_TRAJ_CIRCULAR_MOVE -- (+221,+168, +0,nan,nan,0.000000, ...
cradek: you really ought to fix that kind of bug
I've got it generating some nasty test cases... thanks
how do I turn on the nan trap?
cradek: in an object file in the program you want to trap, add
fpu_control_t __fpu_control = _FPU_IEEE
& ~(_FPU_MASK_IM | _FPU_MASK_ZM | _FPU_MASK_OM);
jepler: I need your secret key to build this emc2 .deb file - please post it!
yea, I thought that was pretty good...
but really, it complains and specifies Jeff by name!
wheeee Program received signal SIGFPE, Arithmetic exception.
swp: Debs posted to my ftp site. Nothing tested of course. ftp://ftp.camalytics.com User Name: linuxcnc Password: emcrules
jepler: I already found a gouging case I hadn't considered - this is very helpful.
ehj, ok thanks. I'll let you know when they've been transferred
k, IP address is 188.8.131.52 in case DNS has not propogated.
cradek: I don't understand your cryptic image name but that is a bit of a head-scratcher
"who the hell would write that!"
Folder is emc2.2.8/emc-debs
found it. the files are all transferred
well, it's a crazy case, but it's a reasonable way to stay "to the right"
(the entry move is the straight-down one)
swp: np, I will leave them there, or update as necessary.
ehj, did you end up with source packages also?
cradek: I was slowly figuring that out
since the next move was an arc
Is "exact reversal" a case you hadn't done yet?
swp: No, not so far.
jepler: no, it should be ok
ok, not problem then - I wanted to get them too if they exist
well, you never want to program it, but comp will stay to the side (loop around it)
As soon as Alex tells me how, I will create them. :)
dpkg-buildpackage -S -us -I.git
I think it's this line ^^^ judging by my fuzzy memory of dpkg-buildpackage without looking at the manpage
right - the second half of the build, with -S
-S means "build source"
swp: I have the original source packages which are unchaged expect for some script files like in rules.d and of course the .config copied over from debian lenny.
"changes" files were generated for all three packages.
for source you either need dsc+tar.gz, or dsc+orig.tar.gz+diff.gz
ehj: managed to build emc2?
[20:47:52] <SWPadnos> http://www.linuxcnc.org/experimental/
(binaries only at the moment :) )
Doing that now
ehj: basicly 2 approaches
build from source, or build a package
if you want to move emc2 to another machine lateron, build a package
Building from source now.
sounds good.. that's fastest
Ok, looks like I need to install some more packages. I skipped emc2-install.sh and apt-get build-dep emc2, thinking it might overwrite something.
I need to run that?
you can peek at the build-depends line in the generated debian/control, and install packages based on that list
that's essentially what apt-get build-dep does,
ehj: are you using the 2.2.8 source?
jepler: I remember what I meant: I think 'file/save gcode as' should put the save-as target on the recent menu
that's different, and a good idea
er, no sorry, pre-2.3 (Trunk)
but is it a new feature?
ask the release manager
frankly I'm a bit worried that he plays favorites
it's a bug if the latest saved file isn't in the recent menu
ehj: either should be fine.. 2.2.8 would be more correct though :D
especially if you want to redistribute the packages :)
it's a question of whether you're "exporting a copy" or changing the currently loaded file
it may be less surprising if the "current file" turns into the "save as" target, with the result that the save as target gets put in the recently loaded menu
(if the menu item were file/export then it would be different)
Alex: There is a bug in one of the modules which I fixed and need, plus ISTM the appropriate place to release it would be with 2.3
cradek: it turns out to be a 2-liner: http://emergent.unpy.net/files/sandbox/saved-gcode-to-recent-list.patch
What is the package for glib?
this program's output looks like someone has been practicing their shorthand
ehj: I think: libglib2.0-dev - Development files for the GLib library
What about tcl? tclx8.4, tclx8.4-dev, both?
How about tk lib?
tk8.4 and tk8.4-dev
I installed both, ./config is still complaining about tk lib not found.
dpkg -l tk8.4
I missed tcl8.5, should I install that?
dpkg -l | grep tk8.4
tk8.4-dev is the package that should be installed
I must be doing something wrong on the command line, but synaptic shows that it is installed.
EMC: 03cradek 07TRUNK * 10emc2/src/emc/rs274ngc/interp_convert.cc: give errors instead of bad results for a few extremely odd situations found by testing with random paths
alex: Never mind, got it.
How about python headers? I know I can skip that with --disable-python.
ehj: did you look at debian/control ?
there is a line called Build-Depends: there
install all packages from that line
Yea, I saw a bunch of them all through the file. There did not seem to be enough in any one depends line.
I specifically typed Build-Depends
ok, well it is working now. Let me try do do a make.
the 5th line here: http://cvs.linuxcnc.org/cvs/emc2/debian/control.in?rev=1.26
good night all
later, thanks Alex
EMC: 03cradek 07TRUNK * 10emc2/src/emc/rs274ngc/ (interp_convert.cc interp_internal.hh rs274ngc_pre.cc): the move immediately after G40 must be straight, not an arc, because the arc would have mismatched radii.
EMC: 03cradek 07TRUNK * 10emc2/src/emc/task/emctaskmain.cc: I don't want to lose this, but I also don't want it enabled all the time.
cradek: does the straight move after the G40 have to be any minimun lenght like 1/2 the tool diameter?
or does it matter?
BigJohnT: I don't think it matters. It will "become" longer since the target of the move gets shoved back to the nominal path.
the problem is if you shove the endpoints around like that on an arc, it becomes bogus (radii don't match anymore)
isn't there code to calculate the "effective centerpoint" of a new arc already?
I know you jmk and I discussed it at length on a couple of occasions
yes, but the payoff is zilch and the work is nonzero
if not for breaking existing programs it woudl be very tempting to remove the arc entry now - it is not needed.
some time if you're feeling up to it, we should work on the cutter comp docs. They are full of irrelevant things now.
ok, do you have anything on top of your mind at the moment?
it would be nice to have a general description of how it works, plus maybe a picture of each failure case and the error message it gives
all the stuff about the complicated entry moves and wordiness about how inside corners don't work can be removed
entry move is now any straight line that's long enough
at least the tool radius long?
let me check - I think that's the limit
I just use any old approaching move (a rapid above the work)
then compensation is fully on before touching the work
I think that's a good rule - the entire move after a g40/g41/g42 should not touch the work at all, because it is not fully compensated
ok, sounds a lot easier :)
yeah I think if we're careful we can explain it with a lot fewer words than now
does all that stuff about path contour matter any more?
I don't know which you mean
[23:17:02] <cradek> http://www.linuxcnc.org/docs/devel/html/gcode_tool_compensation.html
the material edge contour/ path contour part
oh right, is the programmed path a part outline or the path of a nominal size tool
you can still use it either way
for tool path contour 184.108.40.206 you do not need to program those arcs at the corners now
pretty much all of 1.4.2/1.4.3 is unneeded now I think
1.3 (TLO) is written in programmer-speak
I cleaned up some other stuff like that. It makes the mistake of describing the implementation, instead of the behavior
it's a common mistake programmers make when writing docs
I'm on it like a chicken on a June bug
heh, I have no idea what that means, but ok :-)
I'm hearing the dinner bell here!
bbl, and thanks BigJohnT
that's hillbilly speak :)
EMC: 03bigjohnt 07TRUNK * 10emc2/docs/src/gcode/main.lyx: add info on move after G40