Re: [Emc-developers] Proposal: Stop supporting Py2 and GTK2 in Master.

2021-05-12 Thread Frank Tkalcevic
> Python3 is available on all supported OS versions.

Is it safe to say just Python3, or do we need to specify a version - the python 
download page offers 3.6, 3.7, 3.8, 3.9 with all different End of Support 
dates.  I used some software the other day that would only work with 3.8; not 
3.7 and not 3.9.




___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


Re: [Emc-developers] chart of arrays

2021-04-29 Thread Frank Tkalcevic
Doxygen can do most of this.  It can generate interactive html from source
code.  If you format your comments the way doxygen likes, they appear as
part of the documentation.  

It's also free.

-Original Message-
From: Stuart Stevenson [mailto:stus...@gmail.com] 
Sent: Thursday, 29 April 2021 12:20 PM
To: EMC developers
Subject: Re: [Emc-developers] chart of arrays

This looks like what I (think) I want. It is not free but not terribly
expensive if it is usable on this project.

https://www.sgvsarc.com/demo.htm

thanks
Stuart


On Wed, Apr 28, 2021 at 3:39 PM Matt Shaver  wrote:

> On Wed, 28 Apr 2021 10:19:21 -0500
> Jon Elson  wrote:
>
> > This would be a great tool, maybe somebody has written such
> > a tool.
>
>  I haven't looked in a long time, but before 'egypt' was about the
>  closest thing I ever saw. But a long time has passed...
>
> Thanks,
> Matt
>
>
> ___
> Emc-developers mailing list
> Emc-developers@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/emc-developers
>


-- 
Addressee is the intended audience.
If you are not the addressee then my consent is not given for you to read
this email furthermore it is my wish you would close this without saving or
reading, and cease and desist from saving or opening my private
correspondence.
Thank you for honoring my wish.

___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers



___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


Re: [Emc-developers] Home_use_index issue revisited

2021-04-04 Thread Frank Tkalcevic
What I'm seeing (and I'm not a linuxcnc expert) looks correct.  After the
homing sequence it jumps to HOME.  This is documented here (0.1.3.7)
http://linuxcnc.org/docs/2.4/html/config_ini_homing.html




-Original Message-
From: Feral Engineer [mailto:theferalengin...@gmail.com] 
Sent: Sunday, 4 April 2021 1:58 PM
To: EMC developers; Enhanced Machine Controller (EMC)
Subject: [Emc-developers] Home_use_index issue revisited

Finally getting back around to messing with this mechanical/prox home
issue. See attached video link. I show what it is doing and explain what I
want it to do.

Thanks in advance for your help

https://youtu.be/XVz6v2YNXJQ

Phil T.
The Feral Engineer

Check out my LinuxCNC tutorials, machine builds and other antics at
www.youtube.com/c/theferalengineer

___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers



___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


Re: [Emc-developers] Axis and Joint limits

2020-10-12 Thread Frank Tkalcevic
> Under what sort of circumstances would you have different axis and joint 
> limits? 

A robot arm will have joints and axis that completely different.



___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


Re: [Emc-developers] framebuffer xmotion

2020-03-02 Thread Frank Tkalcevic
> My question:
>
> Will using the framebuffer (instead of X) make a better environment for 
> LinuxCNC?

For low spec. computers, not having the overhead of X, is a bonus.  You'll
also boot faster into linuxcnc.  

But, you won't be able to run other applications or utilities.  And you'll
need to write everything from scratch - X's OpenGL is used for the 3d.

> ( I am ankle deep in FB programming now and wondering if I should get in
deeper or head for higher ground )

I played around with Qt and its option to use the framebuffer as the output
device (with the command line option '-platform linuxfb:fb=/dev/fb0').
Theoretically, you can write 1 Qt program that would work with X or FB. That
proof of concept worked, but I didn't have time to take it further.   

Recently I tried to apply the same option with one of the Qt linuxcnc UIs
(pyqt?), but they used other parts of X so it would not run (from memory it
was IPC libraries; D-bus?)




___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


Re: [Emc-developers] Touchy Tweak?

2020-02-26 Thread Frank Tkalcevic
No.  I remember having sizing issues with all of my tweaks, and ended up
hard coding a lot of fields to make it look ok on my screen (10" 1920x1200).
The buttons are a little bigger than fingertip size, but spaced far enough
apart to not hit the wrong one.


-Original Message-
From: John Thornton [mailto:j...@gnipsel.com] 
Sent: Thursday, 27 February 2020 10:35 AM
To: emc-developers@lists.sourceforge.net
Subject: Re: [Emc-developers] Touchy Tweak?

That is a good idea! Did you get a touch screen sized buttons on your popup?

JT

On 2/26/2020 3:16 PM, Frank Tkalcevic wrote:
> I did that on my version of touchy.  The shutdown button pops up a dialog
and gives 3 options - shutdown, restart, or close (and cancel the dialog).
They just exit touchy and return 0,1 or 2  to the calling script (to do a
clean linuxcnc exit).  The script then executes the shutdown or restart.
>
>
> -Original Message-
> From: andy pugh [mailto:bodge...@gmail.com]
> Sent: Wednesday, 26 February 2020 11:57 PM
> To: EMC developers
> Subject: [Emc-developers] Touchy Tweak?
>
> I use Touchy on my lathe and Mill.
> I find it fiddly to shut down the PC / System using the touch-screen.
> Noting an unused space on the Startup page of the GUI, I am wondering if
it
> is worth considering adding a shut-down button (probably with a yes/no
> dialog to make sure)
>
> Thoughts?
>


___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers



___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


Re: [Emc-developers] Touchy Tweak?

2020-02-26 Thread Frank Tkalcevic
I did that on my version of touchy.  The shutdown button pops up a dialog and 
gives 3 options - shutdown, restart, or close (and cancel the dialog).  They 
just exit touchy and return 0,1 or 2  to the calling script (to do a clean 
linuxcnc exit).  The script then executes the shutdown or restart.


-Original Message-
From: andy pugh [mailto:bodge...@gmail.com] 
Sent: Wednesday, 26 February 2020 11:57 PM
To: EMC developers
Subject: [Emc-developers] Touchy Tweak?

I use Touchy on my lathe and Mill.
I find it fiddly to shut down the PC / System using the touch-screen.
Noting an unused space on the Startup page of the GUI, I am wondering if it
is worth considering adding a shut-down button (probably with a yes/no
dialog to make sure)

Thoughts?

-- 
atp
"A motorcycle is a bicycle with a pandemonium attachment and is designed
for the especial use of mechanical geniuses, daredevils and lunatics."
� George Fitch, Atlanta Constitution Newspaper, 1912

___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers



___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


[Emc-developers] How to retreive the source for an old version of linuxcnc

2019-12-19 Thread Frank Tkalcevic
I'm trying to get the source for version 2.6.0~pre

 

I tried.

 

git checkout tags/v2.6-pre0

 

but the VERSION file shows 2.5.0~pre 

 

output.

 

> git checkout tags/v2.6.0-pre0  

Note: checking out 'tags/v2.6.0-pre0'.

 

You are in 'detached HEAD' state. You can look around, make experimental

changes and commit them, and you can discard any commits you make in this

state without impacting any branches by performing another checkout.

 

If you want to create a new branch to retain commits you create, you may

do so (now or later) by using -b with the checkout command again. Example:

 

  git checkout -b new_branch_name

 

HEAD is now at 70f2237... Merge branch 'v2.5_branch'

 

 

 

 

I can find when the change was made in the git log, but how do I find the
right tag or branch.?

 

git log.

 

 

commit 6f3211f6795c3744c088097be00a851f776f67ff

Author: Sebastian Kuzminsky 

Date:   Thu Mar 10 10:11:03 2011 -0700

 

master is now the 2.6 branch

 

diff --git a/VERSION b/VERSION

index 557f94d..171aabc 100644

--- a/VERSION

+++ b/VERSION

@@ -1 +1 @@

-2.5.0~pre

+2.6.0~pre

 


___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


[Emc-developers] Motors left enabled after inversekinematics failure.

2019-10-07 Thread Frank Tkalcevic
I'm using the latest master.

 

If I get an InverseKinematics failure (I'm playing with this at the moment),
the power to the machine is cut (the power button on axis pops), but the
motors are left enabled state, ie joint.0.amp-enable-out remains TRUE.

 

It is a bit worse than that, because e-stop won't function.  If I press
e-stop, I get messages in my launching terminal like.

 

task: main loop to 0.107656 seconds

 

and it remains on.

 

And even worse than that, if the movement that caused it is an MDI, it seems
to continue trying to complete the command.  Hitting power locks axis for a
few seconds.  The only way to recover is to restart.

 


___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


[Emc-developers] Homing API

2019-08-14 Thread Frank Tkalcevic
In the “Updating LinuxCNC” documentation, section 12.2.2 Homing says…

 

Ø  A homing api is provided by src/emc/motion/homing.ini to support users'
custom homing code in out-of-tree homing.c source files.

 

 

What is this?  Where is this?


___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


Re: [Emc-developers] Homing robot arm differential joint [ was robot arm, free to a good home]

2019-03-26 Thread Frank Tkalcevic
Thanks for the suggestion, but I don't think that will work.  I need to move 
both motors in the same direction to home the hinge part of the wrist.  Then I 
need to move the same motors in opposing directions to home the rotation of the 
wrist.  Only after both joints are homed can the motors be considered homed.

I may be able to home the rotary part by sending the motors off in opposite 
directions, then I'll have to find another solution for hinge part.

-Original Message-
From: andy pugh [mailto:bodge...@gmail.com] 
Sent: Tuesday, 26 March 2019 8:18 AM
To: EMC developers
Subject: Re: [Emc-developers] Homing robot arm differential joint [ was robot 
arm, free to a good home]

On Mon, 25 Mar 2019 at 21:10, Frank Tkalcevic
 wrote:

> I'm not sure how to home these joints.  To find the 2 home positions (bend 
> and rotate) requires moving both motors at the same time.  That doesn't work 
> in joint mode homing as each motor/axis homes independently.

If you give both motors the same homing sequence number then they will
home at the same time.

With v2.8 / Master if you give them the same _negative_ homing
sequence number then each axis will "wait" for the other like is best
for a gantry. That might suit your requirements.


-- 
atp
"A motorcycle is a bicycle with a pandemonium attachment and is
designed for the especial use of mechanical geniuses, daredevils and
lunatics."
� George Fitch, Atlanta Constitution Newspaper, 1916


___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers



___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


Re: [Emc-developers] got math problem I can't check in backplot

2019-02-28 Thread Frank Tkalcevic
I have a cheap ebay $100 probe.  I had doubts about the accuracy, so I
perfomed a test probing a precision disc from all orientations.  (The disc
came from a 1"-2" micrometer - it is used to "zero" the micrometer).

The results were pretty poor, with the error ranging from 0.3mm to 0.75mm.

http://www.franksworkshop.com.au/wordpress/2019/03/01/touch-probe-accuracy/#
results


> I have no way to measure how good MY probe is.





___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


Re: [Emc-developers] [Emc-users] [EMC] NML_FILE = emc.nml

2018-12-04 Thread Frank Tkalcevic
You want...

If there is a new message

AND 

The connection is valid

So...

 if((stat->peek() == EMC_STAT_TYPE) && (stat->valid())) 
 {
 // Good
 }
 else
 {
 // Either bad, or no message
 }

But really, it should be

If ( !stat->valid())
{
// connection bad 
}
else
{
int status = stat->peek()
If ( status ==  EMC_STAT_TYPE )
{
// new message
}
Else if ( status == 0 )
{
// no new message
}
Else /* if (status == -1 )
{
// error reading message
}
}

-Original Message-
From: theman whosoldtheworld [mailto:bleachk...@gmail.com] 
Sent: Wednesday, 5 December 2018 6:24 AM
To: EMC developers
Subject: Re: [Emc-developers] [Emc-users] [EMC] NML_FILE = emc.nml

Nooo ... the right code is these??:

 /***  CASE 1 ***/

 if((stat->peek() == EMC_STAT_TYPE) || (stat->valid())) /*
error ... these condition never valid */
 {
 /** send my best position to ui **/
 }
 else { /** error condition?? **/ }

or these one?

 /***  CASE 2 ***/
 if((stat->peek() == EMC_STAT_TYPE) || (stat->valid())) /*
error ... these condition never valid */
 {
 /** error condition?? **/
 }
 else {   /** send my best position to ui **/ }

IF THE RIGHT CASE IS 1 (ONE) ALL WORKS RIGHT ... nothing to do  else if
the right id CASE 2 ... I have some problem 
I not know stat->peek()  but stat->valid() i think is boolean so
probabili I invert the condition and the right case is CASE 1  so my
program works.

Can you confirm these?

regards
bkt

Il giorno lun 3 dic 2018 alle ore 20:20 Frank Tkalcevic <
fr...@franksworkshop.com.au> ha scritto:

> Just confirming, which line do you still get the error?  What is the
error?
>
>
> Here are some things you can check...
>
> After
>
> RCS_STAT_CHANNEL *stat = new  RCS_STAT_CHANNEL(emcFormat, "emcStatus",
> "xemc", "/home/mypc/linuxcnc-dev/configs/sim/axis/emc.nml");
>
> you can
>
> if ( !stat->valid())
> {
> // there is an error
> }
>
> Also, stat->peek() returns...
>
> -1 on error,
> 0 no new data,
> EMC_STAT new data
>
> Did you update the path to the emc.nml file in the ini file?  Both
> linuxcnc real time and your program need to use the same .nml file.
>
>
>
>
>
> -Original Message-
> From: theman whosoldtheworld [mailto:bleachk...@gmail.com]
> Sent: Monday, 3 December 2018 11:53 PM
> To: EMC developers
> Subject: Re: [Emc-developers] [Emc-users] [EMC] NML_FILE = emc.nml
>
> @franks  thanks  never understand that I must insert in my config
> folder (or absolute path file) with emc.nml file . so actually as test
> pourpose I've insert in my c++ app an adbolute path like these:
>
> RCS_STAT_CHANNEL *stat = new  RCS_STAT_CHANNEL(emcFormat, "emcStatus",
> "xemc", "/home/mypc/linuxcnc-dev/configs/sim/axis/emc.nml");
>
> now nothing about error in compiling time  the app start ... but i've
> an error in these point of code:
>
> RCS_STAT_CHANNEL *stat = new  RCS_STAT_CHANNEL(emcFormat, "emcStatus",
> "xemc", "/home/mypc/linuxcnc-dev/configs/sim/axis/emc.nml");
>
>
>  if((stat->peek() == EMC_STAT_TYPE) || (stat->valid())) /*
> error ... these condition never valid */
>  {
>  corri = false;
>  corriPlus = false;
>  sendPosition(Error, Error, Error);
>
>  qDebug() << " errore EMC_STAT_TYPE ..   ";
>  }
>  else
>  {
>  EMC_STAT *emcStatus =
> static_cast(stat->get_address());
>
>  /*std::cout << emcStatus->motion.traj.position.tran.x <<
"
> "
>  << emcStatus->motion.traj.position.tran.y
> << " "
>  << emcStatus->motion.traj.position.tran.z
> << "\n";*/
>
>  X =
> QString(QChar::fromLatin1(emcStatus->motion.traj.position.tran.x ));
> /***  these conversion is really wrong /
>  Y =
> QString(QChar::fromLatin1(emcStatus->motion.traj.position.tran.y )) ;
> /***  these conversion is really wrong /
>  Z =
> QString(QChar::fromLatin1(emcStatus->motion.traj.position.tran.z )) ;
> /***  these conversion is really wro

Re: [Emc-developers] [Emc-users] [EMC] NML_FILE = emc.nml

2018-11-30 Thread Frank Tkalcevic
This is what I use on mine...

https://github.com/ftkalcevic/CNCConfig/blob/master/9x20lathe/emc.nml

I've added entries for my own process, hidcomp.  The linuxcnc I'm running is a 
bit old, so I don't know if the buffer sizes are correct.




-Original Message-
From: theman whosoldtheworld [mailto:bleachk...@gmail.com] 
Sent: Friday, 30 November 2018 11:34 PM
To: Enhanced Machine Controller (EMC)
Cc: EMC developers
Subject: Re: [Emc-developers] [Emc-users] [EMC] NML_FILE = emc.nml

no solution for these ... if I try to insert the row obtain an error
relative to "impossible establish nml connection" (more or less these is
the messages that appear on terminal) if not insert these row if I try to
ruan a c++ program like these:

void qtdro::dro()
{
   // const QStringList args = QCoreApplication::arguments();
const QStringList args = QApplication::arguments();


if(args.isEmpty() || (args.size() < 1))
{
/*std::cerr << "Usage: " << argv[0] << " NMLFILE\n";*/
qDebug() << "NMLFILE is not open yet";
qDebug() << "args is open? " << args.isEmpty();
qDebug() << "args.size? ... " << args.size();
qDebug() << "args.[0] contains? ... " << args[0];
}
else
{
qDebug() << "args is open? " << args.isEmpty();
qDebug() << "args.size? ... " << args.size();
qDebug() << "args.[0] contains? ... " << args[0];
qDebug() << "args.[0] contains? ... " << args[1];

QString s0 = args[0];
QString s1 = args[1];
QString s2 =
"/home/mypc/linuxcnc-dev/configs/sim/axis/axis.ini";

   const char *nmlfile = s2.toStdString().c_str();
   qDebug() << "consta chars c2 contains? ... " <<
s2.toStdString().c_str();
   qDebug() << "consta chars c2 contains? ... " << *c2;
//RCS_STAT_CHANNEL *stat = new  RCS_STAT_CHANNEL(emcFormat,
"emcStatus", "xemc", nmlfile);
   RCS_STAT_CHANNEL *stat = new  RCS_STAT_CHANNEL(emcFormat,
"emcStatus", "xemc", "/home/mypc/linuxcnc-dev/configs/sim/axis/axis.ini");

I've a return messages like these:

libnml/cms/cms_cfg.cc 496: No buffer-line entry found for buffer emcStatus
in config file /home/mypc/linuxcnc-dev/configs/sim/axis/axis.ini.
libnml/nml/nml.cc 370: NML: cms_config returned -1.

**
* Current Directory = /home/mypc/linuxcnc-dev/scripts
*
**
* BufferName = emcStatus
* ProcessName = xemc
* Config File = /home/mypc/linuxcnc-dev/configs/sim/axis/axis.ini
* error_type = 0 (NML_NO_ERROR)


libnml/nml/nml.cc 1343: NML::peek: CMS not configured.

So my original question (make some time and post ago)  is: But in SIM only
installa (no preempt), NML server is running??

sob ... I know my english is quite bad ... I hope was all clear ..

bkt



Il giorno mer 28 nov 2018 alle ore 15:33 andy pugh  ha
scritto:

> On Wed, 28 Nov 2018 at 10:26, theman whosoldtheworld  >
> wrote:
>
> > [EMC] NML_FILE = emc.nml
> >
> > these row in file.ini is still valid?
>
>
> Some sections of code still look for it:
>
> https://github.com/LinuxCNC/linuxcnc/search?l=C%2B%2B=NML_FILE
>
> No version of the docs (back to 2.2 at least) has ever mentioned that
> entry.
> I think it must be the case that the default value is OK.
>
> --
> atp
> "A motorcycle is a bicycle with a pandemonium attachment and is designed
> for the especial use of mechanical geniuses, daredevils and lunatics."
> � George Fitch, Atlanta Constitution Newspaper, 1916
>
> ___
> Emc-users mailing list
> emc-us...@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/emc-users
>

___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers



___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


Re: [Emc-developers] Something odd in halui.cc ?

2018-09-15 Thread Frank Tkalcevic
The arrays are num_joints+1 in size, but the loops only initialise
num_joints members.  The extra code initialises some of the last element.

That's what the code does, but doesn't explain why it does and what the
extra array element is used for.

On Sat, Sep 15, 2018 at 9:01 PM, andy pugh  wrote:

> https://github.com/LinuxCNC/linuxcnc/blob/master/src/emc/
> usr_intf/halui.cc#L1512
>
> There seems to be two loops to initialise the axis and joint jogging.
> Then for some reason the "top" element of each array is re-initialised
> along with the singleton items.
>
> Is this an error, or am I missing something about array initialisation in
> C++?
>
> --
> atp
> "A motorcycle is a bicycle with a pandemonium attachment and is
> designed for the especial use of mechanical geniuses, daredevils and
> lunatics."
> — George Fitch, Atlanta Constitution Newspaper, 1916
>
>
> ___
> Emc-developers mailing list
> Emc-developers@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/emc-developers
>

___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


Re: [Emc-developers] How to build LinuxCNC without GUIs locally?

2018-08-13 Thread Frank Tkalcevic
> That's good. Can we also reduce the amount of depend packages determined 
> by "dpkg-checkbuilddeps"? If we don't need a GUI locally, I think most 
> of them are not necessary.

I don't really know what dpkg-checkbuilddeps does.  If it lists the packages
required to build linuxcnc, then I'd say no, because that is the set of
libraries you need to compile linuxcnc.  The binaries that are built are the
same ones required to run remotely.

What are you trying to do?  As someone has already said, just get a larger
SD card to increase filesystem space.  Also note, building linuxcnc on a BB
or Pi takes hours. 

Another option is to cross compile (build linuxcnc for BB or Pi on a desktop
PC) and deploy only the compiled packages. (I've never done this, but this
is what build servers do)


--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


Re: [Emc-developers] How to build LinuxCNC without GUIs locally?

2018-08-13 Thread Frank Tkalcevic
> > If you don't want a GUI do you want a G-code interpreter, or are you
> > planning on using just HAL?
> HAL, EMCMOT, EMCIO, EMCTASK, NML-SERVER should be on the small board. A 
> GUI will work via network. I think that should avoid installation of 

Axis can run via standard X-Windows.  That's how I do most of my
development.  I use Cygwin/X on my Windows 10 computer, ssh to linuxcnc
computer (ssh -Y username@machinename), then just run axis.  The axis window
appears on my Windows 10 box.  The updates are a little slow though.

You don't need X-Windows running on the linuxcnc box.  This gives back a lot
of RAM.

Frank




--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


Re: [Emc-developers] Checking NML version

2016-12-27 Thread Frank Tkalcevic
> > I had the same problem.  A half solution was to check the size of the 
> > structures eg sizeof(EMC_STAT).  I only need to know if a binary has 
> > changed, and stop when there was a mismatch.

> I wish there was a way to do that at runtime. As far as I know that trick 
> only works at compile time. You get the size of the EMC_STAT class you
>  compiled with, not the version that is currently running.


if ( m_emcStatus->size != sizeof(EMC_STAT) )
{


The size of the structure is in the message, so you can check the version of
your application, against the version of linuxcnc that you are communicating
with.  In my case, I just stop if there is a mismatch - if you want to
support multiple versions, you need to manage version changes yourself ie
create a constant for each size when versions change.  Again, just a half
solution.


--
Check out the vibrant tech community on one of the world's most 
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


Re: [Emc-developers] Checking NML version

2016-12-26 Thread Frank Tkalcevic
I had the same problem.  A half solution was to check the size of the
structures eg sizeof(EMC_STAT).  I only need to know if a binary has
changed, and stop when there was a mismatch.


-Original Message-
From: Les Newell [mailto:les.new...@fastmail.co.uk] 
Sent: Wednesday, 21 December 2016 6:30 AM
To: EMC developers
Subject: [Emc-developers] Checking NML version

I am writing an application that remotely controls LinuxCNC. I found
linuxcncrsh was too slow and difficult to work with so I am writing a binary
equivalent that is optimized for speed. So far so good. Now the problem is
that I need to support a number of different LinuxCNC versions. The problem
is that structures such as emcStatus change between some versions of
LinuxCNC. Is there any way to check the current API version?

Les



--
Developer Access Program for Intel Xeon Phi Processors Access to Intel Xeon
Phi processor-based developer platforms.
With one year of Intel Parallel Studio XE.
Training and support from Colfax.
Order your platform today.http://sdm.link/intel
___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


--
Check out the vibrant tech community on one of the world's most 
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


Re: [Emc-developers] incremental change to linuxcnc's APIs for user interfaces

2014-10-20 Thread Frank Tkalcevic
 (The summary of those bugs is: the serial number method for UIs to ensure
a
 message is acted upon by task simply does not work when there is not just
 one UI.  No simple modification will make it work, and no one in the
project
 in 10+ years has taken the time to understand NML with the depth necessary
 to suggest a correct approach.)

1. Copy linuxcnc.nml to your run directory.
2. Edit linuxcnc.nml and create another configuration section for your UI
3. Edit your .ini file and add the NML_FILE configuration
4. When your UI connects to NML, use the name of the new nml section.

I run axis on the local machine, then remote to it using keystick.

Keystick still works because it makes its own NML connection keystick ...

src/emc/usr_intf/keystick.cc

emcStatusBuffer = new RCS_STAT_CHANNEL(emcFormat, emcStatus, keystick,
emc_nmlfile);


 linuxcncrsh doesn't work because it uses a common library (that other UIs
use) to connect to NML.  It uses the same configuration, xemc.

src/emc/usr_intf/shcom.cc

emcStatusBuffer =
new RCS_STAT_CHANNEL(emcFormat, emcStatus, xemc,
 emc_nmlfile);

Everything that uses this library can't run simultaneously - emcsh, emcrsh,
emclcd, axis - axis hard codes the xemc configuration in
src/emc/usr_intf/axis/extensions/emcmodule.cc - so axis, and anything that
uses the emcmodule python library fail.

RCS_STAT_CHANNEL *c =
new RCS_STAT_CHANNEL(emcFormat, emcStatus, xemc, file);


So, you can have multiple UIs.  

However, if an upgraded API allows for other new functionality, I'm all for
it.




--
Comprehensive Server Monitoring with Site24x7.
Monitor 10 servers for $9/Month.
Get alerted through email, SMS, voice calls or mobile push notifications.
Take corrective actions from your mobile device.
http://p.sf.net/sfu/Zoho
___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


Re: [Emc-developers] Vismach docs

2014-10-16 Thread Frank Tkalcevic
I agree.  It can be really tedious.  I spent a lot of time to get the model
right.

I played with OpenRave and got that to display my robot arm.  You can import
CAD models and then connect it to linuxcnc with a bit of python...

http://wiki.linuxcnc.org/cgi-bin/wiki.pl?Ikfast (

You don't need to create a kinematics module.  Just define your model, run
ikfast over it, then hook it up to linuxcnc as a display.  



 -Original Message-
 From: John Kasunich [mailto:jmkasun...@fastmail.fm]
 Sent: Monday, 13 October 2014 5:23 AM
 To: emc-developers@lists.sourceforge.net
 Subject: Re: [Emc-developers] Vismach docs
 
 The problem is that vismach is a neat toy to play with, but has nothing to
do
 with running a real machine.  So very few people use it, and even fewer
use
 it for an extended period of time.
 
 Also, vismach is a library, you have to write Python to actually do
anything
 with it.  So the people who manage to figure it out aren't the kind of
people
 who sit down and write docs for other users.
 
 Andy, it is just a coincidence that you are asking about vismach docs, or
did
 you also get an email from Brazil?
 I suggested that he join the list and post his own question, I guess he
doesn't
 like that idea.
 
 
 On Sun, Oct 12, 2014, at 02:13 PM, Sebastian Kuzminsky wrote:
  On October 12, 2014 11:50:45 AM MDT, andy pugh bodge...@gmail.com
 wrote:
  Am I right in thinking that there are no actual docs for Vismach,
  other than the Wiki page?
  
  This seems an odd omission, if so.
  
  --
  atp
  If you can't fix it, you don't own it.
  http://www.ifixit.com/Manifesto
  
 
---
---
  Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer
  Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS
  Reports
  Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper
  Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer
  http://p.sf.net/sfu/Zoho
  ___
  Emc-developers mailing list
  Emc-developers@lists.sourceforge.net
  https://lists.sourceforge.net/lists/listinfo/emc-developers
 
  I believe this is true, unfortunately.
 
  There was an effort announced a while ago to move the vismach docs from
 the wiki to git, but i dont think it resulted in a review request.
 
 
  --
  Sebastian Kuzminsky
 

--
  Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer
  Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports
  Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper
  Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer
  http://p.sf.net/sfu/Zoho
  ___
  Emc-developers mailing list
  Emc-developers@lists.sourceforge.net
  https://lists.sourceforge.net/lists/listinfo/emc-developers
 
 
 --
   John Kasunich
   jmkasun...@fastmail.fm
 


--
 Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer
 Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports
 Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper
 Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer
 http://p.sf.net/sfu/Zoho
 ___
 Emc-developers mailing list
 Emc-developers@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/emc-developers


--
Comprehensive Server Monitoring with Site24x7.
Monitor 10 servers for $9/Month.
Get alerted through email, SMS, voice calls or mobile push notifications.
Take corrective actions from your mobile device.
http://p.sf.net/sfu/Zoho
___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


Re: [Emc-developers] gremlin backplot

2014-09-29 Thread Frank Tkalcevic
You may want to look at vismach in the source tree.  It is a standalone window 
that shows the geometry of your machine (and plot too - from memory).  There is 
a 5 axis example there.

 -Original Message-
 From: David Armstrong [mailto:cncbas...@gmail.com]
 Sent: Tuesday, 23 September 2014 6:02 PM
 To: EMC developers
 Subject: Re: [Emc-developers] gremlin backplot
 
 Viesturs,
 
 i am looking at 5 axis head as well as a trunnion type table for tilting and
 rotation of the workpiece as well as developing the cam postprocessor , i
 cant find any information on 5 axis and if any modification is needed to
 linuxcnc to display correctly the backplot in these cases .. , such as you
 mention ..
 
 Dave
 
 
 On 23 September 2014 08:52, Viesturs Lacis viesturs.la...@gmail.com
 wrote:
 
  2014-09-23 10:19 GMT+03:00 David Armstrong cncbas...@gmail.com:
   Do you know if the backplot can be changed in Linuxcnc so that the
  drawing
   rotates on B and C axis rather than the tool tip? It basically shows
   a
  path
   for a machine with an articulating head rather than a trunnion table.
 
  If I understand correctly what you are asking, then proper display of
  4 or 5 axis code requires specifying additional machine and part/stock
  geometry. For example,imagine some code to engrave on cylindrical
  surface with A moves instead of Y. To display such a code properly,
  radius of the workpiece is required.
 
  Viesturs
 
 
  --
   Meet PCI DSS 3.0 Compliance Requirements with EventLog
  Analyzer Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI
  DSS Reports Are you Audit-Ready for PCI DSS 3.0 Compliance? Download
  White paper Comply to PCI DSS 3.0 Requirement 10 and 11.5 with
  EventLog Analyzer
 
 
 http://pubads.g.doubleclick.net/gampad/clk?id=154622311iu=/4140/ostg.
  clktrk ___
  Emc-developers mailing list
  Emc-developers@lists.sourceforge.net
  https://lists.sourceforge.net/lists/listinfo/emc-developers
 
 --
 Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer Achieve
 PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports Are you
 Audit-Ready for PCI DSS 3.0 Compliance? Download White paper Comply to
 PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer
 http://pubads.g.doubleclick.net/gampad/clk?id=154622311iu=/4140/ostg.cl
 ktrk
 ___
 Emc-developers mailing list
 Emc-developers@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/emc-developers


--
Slashdot TV.  Videos for Nerds.  Stuff that Matters.
http://pubads.g.doubleclick.net/gampad/clk?id=160591471iu=/4140/ostg.clktrk
___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


Re: [Emc-developers] Custom thread for component

2014-05-18 Thread Frank Tkalcevic
As has already been mentioned, you can whatever you want with as many
threads as you want.  It is up to you to manage them and how they interface
with whatever you interface.

My VFD Modbus component is a user hal component that spawns a thread to do
the USB rs485 comms.  I have to manage how my thread communicates with hal.

However, if you have a requirement that has a very certain predetermined
thread cycle time it sounds like you should be writing a real time hal
component - either your own component or a comp component.  The hal real
time is as precise as you are going to get on linux.  Non-realtime threads
are non-deterministic, so you have no guarantees of the 1us timing.  


 -Original Message-
 From: Marius Liebenberg [mailto:mar...@mastercut.co.za]
 Sent: Friday, 16 May 2014 9:30 PM
 To: EMC developers
 Subject: [Emc-developers] Custom thread for component
 
 Hi
 I am busy with a generic i2c component. I2c has some timing related
features
 and I thought that it would make sense to load the component in a thread
 that has a very certain predetermined thread cycle time. This way it would
be
 very easy to impliment timeing related features. Is it OK to load one's
own
 thread or is the practise not advised.
 P.S. I am testing the code now in a very much slow downed thread in order
 for me to see what happens in Halscope. The production thread could have a
 time of 1us.
 
 Any thoughts?
 
 --
 
 Regards /Groete
 
 Marius D. Liebenberg
 +27 82 698 3251
 +27 12 743 6064
 QQ 1767394877
 
 


--
 Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE
 Instantly run your Selenium tests across 300+ browser/OS combos.
 Get unparalleled scalability from the best Selenium testing platform
available
 Simple to use. Nothing to install. Get started now for free.
 http://p.sf.net/sfu/SauceLabs
 ___
 Emc-developers mailing list
 Emc-developers@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/emc-developers


--
Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE
Instantly run your Selenium tests across 300+ browser/OS combos.
Get unparalleled scalability from the best Selenium testing platform available
Simple to use. Nothing to install. Get started now for free.
http://p.sf.net/sfu/SauceLabs
___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


Re: [Emc-developers] Unit conversions in Canon

2014-04-11 Thread Frank Tkalcevic
 Minor complexity: we have a freaky result due to
 http://www.linuxcnc.org/docs/html/gcode/overview.html#sec:Order-of-
 Execution
 
 consider:
 G20
 F5
 G1 X1
 G21 F125 X100
 
 according to NGC the F125 is taken as inches while the destination is
taken as
 mm!  I hate this special case and think we ought to diverge from NGC if we
 overhaul units handling.  The length units setting should be honored
before
 anything else length-related is read from the block.

Why is that a problem?  If it is documented, then it follows the rules.  If
it is confusing, split it across 2 lines.

If I'm in doubt about operator precedence in C, I add more parenthesis.


--
Put Bad Developers to Shame
Dominate Development with Jenkins Continuous Integration
Continuously Automate Build, Test  Deployment 
Start a new project now. Try Jenkins in the cloud.
http://p.sf.net/sfu/13600_Cloudbees
___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


Re: [Emc-developers] Possibly dumb question about NML buffer size

2014-04-04 Thread Frank Tkalcevic
My understanding is the size is basically the size of the shared memory
block.  It needs to be as big as the largest message that is sent between
processes.  Since linuxcnc works with a queue depth of 1, increasing above
that max msg size (15k I think) does nothing.  Go below the max message
size, and linuxcnc doesn't work.

 -Original Message-
 From: Robert Ellenberg [mailto:rwe...@gmail.com]
 Sent: Friday, 4 April 2014 4:24 AM
 To: EMC developers
 Subject: [Emc-developers] Possibly dumb question about NML buffer size
 
 Hi All,
 
 Is there a hard limit on the size of the NML buffers defined in
linuxcnc.nml? If
 not, does anyone know if increasing the buffer size leads to a performance
 hit on a modern PC? I couldn't find much info on how the channel buffer
 sizes were chosen on the web.
 
 Thanks,
 Rob


--
 ___
 Emc-developers mailing list
 Emc-developers@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/emc-developers


--
___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


Re: [Emc-developers] GCode preview in C++ (Qt)

2014-03-27 Thread Frank Tkalcevic
 I guess I would first ask if the licenses are compatible.  If so, then I
am sure
 you are good.,  If not, then you have to find a path through that
minefield.

Ouch, I never considered that.  I'd hate not to be able to share back to the
linuxcnc community.

 I would say you do not understand a source code repository (particularly
git)
 and how that allows you to set up branches, forks, etc.  Using git in your
own
 named branch is probably the way to go...

Absolutely.  I use simple source code repositories - SVN, CVS.  With a main
trunk and branches that eventually get stitched back to the trunk - so
really there is only one version, or a second on a branch.

I get overwhelmed thinking about my current branch, which is 2 versions old,
then bringing it up to date, then bringing in goodies (branches, JA4, etc)
and how to manage that.  Every text I read on GIT talks about branches as
objects and how multiple branches just come together.

I have asked about git on this mailing list before and been given advice,
but I just haven't taken the plunge yet.


--
___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


Re: [Emc-developers] GCode preview in C++ (Qt)

2014-03-26 Thread Frank Tkalcevic
It's a GUI app, so it is hard to quantify, but simply traversing through a
tree and displaying the contents of the nodes happens almost instantly using
Qt.  I also understand C++ a lot better and find it easier to read than
python.

 -Original Message-
 From: EBo [mailto:e...@sandien.com]
 Sent: Wednesday, 26 March 2014 4:38 PM
 To: emc-developers@lists.sourceforge.net
 Subject: Re: [Emc-developers] GCode preview in C++ (Qt)
 
 Frank,
 
 How huge a performance boost? It is easy to get 10x if it is written in
 straight python, but you can often get it down to 3x if you use numpy.
THere
 are some other tricks I have read about, but not tried that might speed it
up a
 bit more than that.  Probably what Andy needs are python bindings (even if
it
 is written in another language).
 
EBo --
 
 On Mar 25 2014 12:11 PM, Frank Tkalcevic wrote:
  Thanks for the replies.
 
  I've tried embedding gremlin in another project and you lose the
  ability for you application to control the preview.
 
  I'm also trying to avoid python.  My app is a rewrite of a python app,
  and the performance difference is huge.
 
  Frank
  -Original Message-
  From: andy pugh [mailto:bodge...@gmail.com]
  Sent: Wednesday, 26 March 2014 12:18 AM
  To: EMC developers
  Subject: Re: [Emc-developers] GCode preview in C++ (Qt)
 
  On 25 March 2014 06:00, Frank Tkalcevic
 fr...@franksworkshop.com.au
  wrote:
   I want to add a linuxcnc gcode  preview to my C++ Qt application.
 
  Does the QT / C++ combination mean that you can't use Gremlin?
  http://wiki.linuxcnc.org/cgi-bin/wiki.pl?Gremlin
 


--
 Learn Graph Databases - Download FREE O'Reilly Book Graph Databases is
 the definitive new guide to graph databases and their applications.
Written
 by three acclaimed leaders in the field, this first edition is now
available.
 Download your free book today!
 http://p.sf.net/sfu/13534_NeoTech
 ___
 Emc-developers mailing list
 Emc-developers@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/emc-developers


--
Learn Graph Databases - Download FREE O'Reilly Book
Graph Databases is the definitive new guide to graph databases and their
applications. Written by three acclaimed leaders in the field,
this first edition is now available. Download your free book today!
http://p.sf.net/sfu/13534_NeoTech
___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


[Emc-developers] Submakefile nightmare

2014-03-26 Thread Frank Tkalcevic
I've just tried to add a library to one of the submakefile.  The first time
I tried to make, my files compiled, but with errors.  I fixed a few errors,
recompiled and NOTHING!  For next 3 hours I moved my files, renamed them,
created a subdirectory, delete extraneous commands from the submakefile, but
nothing.  I would just get output like.

 

$ make

make: Entering directory `/home/frankt/linuxcnc-dev/ikfast/src'

make: Failed to remake makefile `Makefile'.

copying shared configs

make: Leaving directory `/home/frankt/linuxcnc-dev/ikfast/src'

 

 

 

Then I remembered something about make having problems with dependencies.

 

It turns out, my first edit added in include file.

 

#include file.h

 

which should have been.

 

#include file.hh

 

(two hs)

 

The whole build failed because there was a syntax error in one of my source
files.

 

Is there a way around this?

 

--
Learn Graph Databases - Download FREE O'Reilly Book
Graph Databases is the definitive new guide to graph databases and their
applications. Written by three acclaimed leaders in the field,
this first edition is now available. Download your free book today!
http://p.sf.net/sfu/13534_NeoTech
___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


Re: [Emc-developers] GCode preview in C++ (Qt)

2014-03-26 Thread Frank Tkalcevic
I’m working on a couple of projects.

 

I’m trying to improve GWiz.  I started trying to tweak the UI – but the 
wxPython screens wasted so much of my time I gave up and just re-wrote it in 
Qt.  I want to add a GCode preview so I can see what the wizards are doing (I 
use GWiz for my cnc-lathe – I have collection of wizards that I use to build up 
a simple lathe program).

 

My other project is a QT UI.  

 

Originally I started with my own XML format mixed with Qt’s jscript.  I made 
some progress with this, but got distracted on other projects.  This was using 
4.7.  I read that the scripting I was using was going to be discontinued, so, 
as you suggested, I started version 2 using Qt 2 and QML.  I’ve only done a 
small amount of work, but QML, although flexible, seems a bit slow.

 

When I get the preview working in my GWiz port, I’ll then add it to the Qt UI.

 

The main reason I started writing a new UI was to work with my small LCD 
screens on my pendant.  I also found out that Qt GUI apps don’t need X11 to 
work.  They can use the frame buffer directly – which is what my USB LCD uses.  
It should also work with RPi and BBB.

 

I was aware of your changes the NML infrastructure, and I’ve always had them in 
the back of my mind as to how they would affect my code.

 

Frank

 

From: Michael Haberler [mailto:m...@mah.priv.at] 
Sent: Wednesday, 26 March 2014 9:33 PM
To: Frank Tkalcevic
Subject: Re: [Emc-developers] GCode preview in C++ (Qt)

 

Hi Frank,

 

indirectly related:

 

you probably know that I've been working on replacing the NML infrastructure 
with a zeroMQ/protobuf layer; the mapping of the HAL layer being pretty 
complete and we're now turning to queued command execution (motion, task, 
interp etc)

 

as a first application of the HAL messaging API is done but not public yet; I 
still have to spin out a branch with cleaned history and some readme for 
prerequisites

you can see it here:

 

https://github.com/strahlex/QtQuickVcp

 

this video shows this app on android, running in parallel (synched) with 
gladevcp

 

http://youtu.be/1z9Cw_1hqRg

 

eventually preview and progress display should be integrated as well

 

I think qt5/qml is the most promising route; what will you be using?

 

- Michael


Am 25.03.2014 um 05:00 schrieb Frank Tkalcevic fr...@franksworkshop.com.au:

I want to add a linuxcnc gcode  preview to my C++ Qt application.  So the
first question is, has anyone already done this, so I can reuse the code?



Failing that, I've been looking at implementing it myself.  I can see some
examples such as, gcodemodule.cc and saicanon.cc, which seem to just
implement a whole series of global functions like ARC_FEED and
STRAIGHT_FEED.



Does that sound correct?



If so, my issue seems to be that the class that they rely on, class Interp,
is private to linuxcnc.  I like to keep my code separate from the linuxcnc
git blob - I still don't know how best to manage my changes and the rest of
the world's changes.



Any suggestions on how I can proceede?  I was thinking of writing a public
(to linuxcnc) pure virtual class that wraps the global functions so I would
then create a derived class from that.



Thanks,

Frank





--
Learn Graph Databases - Download FREE O'Reilly Book
Graph Databases is the definitive new guide to graph databases and their
applications. Written by three acclaimed leaders in the field,
this first edition is now available. Download your free book today!
http://p.sf.net/sfu/13534_NeoTech
___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers

--
Learn Graph Databases - Download FREE O'Reilly Book
Graph Databases is the definitive new guide to graph databases and their
applications. Written by three acclaimed leaders in the field,
this first edition is now available. Download your free book today!
http://p.sf.net/sfu/13534_NeoTech
___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


[Emc-developers] GCode preview in C++ (Qt)

2014-03-25 Thread Frank Tkalcevic
I want to add a linuxcnc gcode  preview to my C++ Qt application.  So the
first question is, has anyone already done this, so I can reuse the code?

 

Failing that, I've been looking at implementing it myself.  I can see some
examples such as, gcodemodule.cc and saicanon.cc, which seem to just
implement a whole series of global functions like ARC_FEED and
STRAIGHT_FEED.

 

Does that sound correct?

 

If so, my issue seems to be that the class that they rely on, class Interp,
is private to linuxcnc.  I like to keep my code separate from the linuxcnc
git blob - I still don't know how best to manage my changes and the rest of
the world's changes.

 

Any suggestions on how I can proceede?  I was thinking of writing a public
(to linuxcnc) pure virtual class that wraps the global functions so I would
then create a derived class from that.

 

Thanks,

Frank

 

 

--
Learn Graph Databases - Download FREE O'Reilly Book
Graph Databases is the definitive new guide to graph databases and their
applications. Written by three acclaimed leaders in the field,
this first edition is now available. Download your free book today!
http://p.sf.net/sfu/13534_NeoTech
___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


Re: [Emc-developers] GCode preview in C++ (Qt)

2014-03-25 Thread Frank Tkalcevic
Thanks for the replies.  

I've tried embedding gremlin in another project and you lose the ability for
you application to control the preview.

I'm also trying to avoid python.  My app is a rewrite of a python app, and
the performance difference is huge.

Frank
 -Original Message-
 From: andy pugh [mailto:bodge...@gmail.com]
 Sent: Wednesday, 26 March 2014 12:18 AM
 To: EMC developers
 Subject: Re: [Emc-developers] GCode preview in C++ (Qt)
 
 On 25 March 2014 06:00, Frank Tkalcevic fr...@franksworkshop.com.au
 wrote:
  I want to add a linuxcnc gcode  preview to my C++ Qt application.
 
 Does the QT / C++ combination mean that you can't use Gremlin?
 http://wiki.linuxcnc.org/cgi-bin/wiki.pl?Gremlin
 
 --
 atp
 If you can't fix it, you don't own it.
 http://www.ifixit.com/Manifesto
 


--
 Learn Graph Databases - Download FREE O'Reilly Book Graph Databases is
 the definitive new guide to graph databases and their applications.
Written
 by three acclaimed leaders in the field, this first edition is now
available.
 Download your free book today!
 http://p.sf.net/sfu/13534_NeoTech
 ___
 Emc-developers mailing list
 Emc-developers@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/emc-developers


--
Learn Graph Databases - Download FREE O'Reilly Book
Graph Databases is the definitive new guide to graph databases and their
applications. Written by three acclaimed leaders in the field,
this first edition is now available. Download your free book today!
http://p.sf.net/sfu/13534_NeoTech
___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


Re: [Emc-developers] Board with IEEE 1588 PTP

2014-03-09 Thread Frank Tkalcevic
I played around a bit with RTNET.  I built a very unstable client that ran
on the Atmel NGW100 demo board.  On the server side, the RTNET software uses
RTAPI, so it should integrate into Linuxcnc; as long as you have a
compatible network card/chipset.  I never got it integrated into linuxcnc -
I just wrote a standalone server.

 

 -Original Message-
 From: Joachim Franek [mailto:joachim.fra...@pibf.de]
 Sent: Saturday, 8 March 2014 8:13 PM
 To: EMC developers
 Subject: Re: [Emc-developers] Board with IEEE 1588 PTP
 
 
 On 07.03.2014 23:16, Frank Tkalcevic wrote:
  Cool.  Do you have any plans for it?
 
 The price opens some possibilities for remote drives (3ph pwm and
 quadrature counter are onboard).
 
 But a IEEE 1588 capable eth on the LCNC is necessary to relax realtime
 demands on the LCNC board.
 
 I think the community have to decide about the specs (protocoll etc.) and
can
 only do the work together.
 
 Joachim
 


--
 Subversion Kills Productivity. Get off Subversion  Make the Move to
 Perforce.
 With Perforce, you get hassle-free workflows. Merge that actually works.
 Faster operations. Version large binaries.  Built-in WAN optimization and
the
 freedom to use Git, Perforce or both. Make the move to Perforce.
 http://pubads.g.doubleclick.net/gampad/clk?id=122218951iu=/4140/ostg.cl
 ktrk
 ___
 Emc-developers mailing list
 Emc-developers@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/emc-developers


--
Learn Graph Databases - Download FREE O'Reilly Book
Graph Databases is the definitive new guide to graph databases and their
applications. Written by three acclaimed leaders in the field,
this first edition is now available. Download your free book today!
http://p.sf.net/sfu/13534_NeoTech
___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


Re: [Emc-developers] Board with IEEE 1588 PTP

2014-03-07 Thread Frank Tkalcevic
Cool.  Do you have any plans for it? 

 -Original Message-
 From: Joachim Franek [mailto:joachim.fra...@pibf.de]
 Sent: Saturday, 8 March 2014 5:35 AM
 To: emc-developers@lists.sourceforge.net
 Subject: [Emc-developers] Board with IEEE 1588 PTP
 
 
 ht tp:/ /www.ti.com/ ww/en/launchpad/launchpads-tivac-ek-
 tm4c1294xl.html
 
 Joachim
 


--
 Subversion Kills Productivity. Get off Subversion  Make the Move to
 Perforce.
 With Perforce, you get hassle-free workflows. Merge that actually works.
 Faster operations. Version large binaries.  Built-in WAN optimization and
the
 freedom to use Git, Perforce or both. Make the move to Perforce.
 http://pubads.g.doubleclick.net/gampad/clk?id=122218951iu=/4140/ostg.cl
 ktrk
 ___
 Emc-developers mailing list
 Emc-developers@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/emc-developers


--
Subversion Kills Productivity. Get off Subversion  Make the Move to Perforce.
With Perforce, you get hassle-free workflows. Merge that actually works. 
Faster operations. Version large binaries.  Built-in WAN optimization and the
freedom to use Git, Perforce or both. Make the move to Perforce.
http://pubads.g.doubleclick.net/gampad/clk?id=122218951iu=/4140/ostg.clktrk
___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


Re: [Emc-developers] Non-X GUI Options

2014-01-05 Thread Frank Tkalcevic
I started writing a QT gui so that I could build a display for a 400x240
LCD.   The display is defined by using an XML configuration file loosely
based on the available QT widgets, so I have a few different display
layouts.  It's not much more than a proof of concept at the moment, with
only some of the functionality implemented.  It is designed to be run
side-by-side with axis, or on its own.

I don't know how much work it will be to make it work without X11.  I've had
a quick look at QT embedded before, but my understanding was you needed to
code for it specifically.  I can share it if you are interested.

 -Original Message-
 From: Charles Steinkuehler [mailto:char...@steinkuehler.net]
 Sent: Monday, 6 January 2014 8:36 AM
 To: EMC developers
 Subject: [Emc-developers] Non-X GUI Options
 
 Are there any options for a GUI interface for LinuxCNC that don't rely on
X
 windows?
 
 It looks like the GPU drivers for the BeagleBone are beginning to work
with
 the 3.12 kernel, but so far only for the raw frame buffer and OpenGL, not
for
 X windows.
 
 Is there anything that talks directly to the kernel drivers, or maybe uses
 something like QT?
 
 I'm not figuring there's anything already, but I figured I'd ask.  It
seems like
 even on an x86 machine, having something that ran at or close to bare
 metal might be handy to make a dedicated use CNC control (so no watching
 YouTube or surfing FaceBook while running the milling machine!).  :)
 
 --
 Charles Steinkuehler
 char...@steinkuehler.net



--
Rapidly troubleshoot problems before they affect your business. Most IT 
organizations don't have a clear picture of how application performance 
affects their revenue. With AppDynamics, you get 100% visibility into your 
Java,.NET,  PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro!
http://pubads.g.doubleclick.net/gampad/clk?id=84349831iu=/4140/ostg.clktrk
___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


[Emc-developers] openrave ikfast

2013-12-12 Thread Frank Tkalcevic
For those that are interested, I managed to get ikfast working with
linuxcnc.

 

I've created an ikfast output generator to produce C code that can be
compiled as a realtime object.  Closed form solutions don't link with
external libraries and are very fast.  Numerical solutions use the lapack
libraries.  To get this to work I extracted the lapack fortran files that
were needed, and patched the kernel makefiles to compile fortran.  Although
this is technically feasible, numerical solutions appeared too slow.
Typical closed form solutions run at about 5-10us, while numeric solutions
are around 4ms!

 

Details here http://wiki.linuxcnc.org/cgi-bin/wiki.pl?Ikfast

 

 

 

 

--
Rapidly troubleshoot problems before they affect your business. Most IT 
organizations don't have a clear picture of how application performance 
affects their revenue. With AppDynamics, you get 100% visibility into your 
Java,.NET,  PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro!
http://pubads.g.doubleclick.net/gampad/clk?id=84349831iu=/4140/ostg.clktrk
___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


[Emc-developers] MDI in joint mode

2013-12-09 Thread Frank Tkalcevic
Is it possible to issue MDI or equivalent commands in joint mode?  For
example, on my robot arm, I want to move joint 2 to 45 degrees.

 

I'm guessing no, because you have to be in MDI mode to issue MDI commands
and you can only be in MDI mode when in world mode.

 

If this is the case, are there low level commands (nml?) that can be used to
move to an exact position?

 

--
Sponsored by Intel(R) XDK 
Develop, test and display web and hybrid apps with a single code base.
Download it for free now!
http://pubads.g.doubleclick.net/gampad/clk?id=111408631iu=/4140/ostg.clktrk
___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


Re: [Emc-developers] Slow G code

2013-12-05 Thread Frank Tkalcevic
Any 3d printed file will divide up curves into short line segments.  Here's
an example...

www.franksworkshop.com.au/img_bin/tux.zip

There's a few 3d printer M-Codes you may need to remove.



 -Original Message-
 From: Robert Ellenberg [mailto:rwe...@gmail.com]
 Sent: Friday, 6 December 2013 11:47 AM
 To: EMC developers; Enhanced Machine Controller (EMC)
 Subject: [Emc-developers] Slow G code
 
 Hi All,
 
 As some of you know already, I'm working on an improvement to the
 linuxcnc trajectory planner that will allow much faster movement for
 engraving-type programs with lots of short segments. As part of this
effort, I
 need test cases, both to find rare errors, and to estimate performance
 improvements.
 
 If you'd like to contribute to this effort, I'm looking for G-code that
runs
 slower than the requested feed rate. In particular, I'm looking for
programs
 that have lots of short segments that approximate smooth paths. If you
have
 a program that you think should run faster and are willing to share it,
please
 email it to me. While my fixes won't improve every issue, part of my goal
 here is to survey how common some problems are. If it turns out that a
 slowdown I consider rare is common in your programs, it will justify some
 additional work in that direction.
 
 Thanks!
 Rob


--
 Sponsored by Intel(R) XDK
 Develop, test and display web and hybrid apps with a single code base.
 Download it for free now!
 http://pubads.g.doubleclick.net/gampad/clk?id=111408631iu=/4140/ostg.cl
 ktrk
 ___
 Emc-developers mailing list
 Emc-developers@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/emc-developers


--
Sponsored by Intel(R) XDK 
Develop, test and display web and hybrid apps with a single code base.
Download it for free now!
http://pubads.g.doubleclick.net/gampad/clk?id=111408631iu=/4140/ostg.clktrk
___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


Re: [Emc-developers] How to contribute to LinuxCNC

2013-11-16 Thread Frank Tkalcevic
A section on using Linuxcnc with GitHub would be nice.  That is, if using
github is a good idea.  I forked linuxcnc a year or 2 ago and have been
using it through my github.  I push my changes there so they are all public,
but my fork is 2 years behind.  I don't know if what I 'm doing is correct.

 -Original Message-
 From: Sebastian Kuzminsky [mailto:s...@highlab.com]
 Sent: Sunday, 17 November 2013 2:50 AM
 To: EMC developers
 Subject: [Emc-developers] How to contribute to LinuxCNC
 
 Hello LinuxCNC developers!  There was some concern at Wichita that the
 process for contributing changes to LinuxCNC was poorly documented.
 
 We have a wiki page describing it, but several peple reported not finding
it
 (due to lack of appropriate keywords, perhaps?), and the page itself is a
bit
 of a jumble of git instructions and contributor guidelines, and had many
 broken links.  The wiki page is here:
 http://wiki.linuxcnc.org/cgi-bin/wiki.pl?Git
 
 In attempt to make this information easier for new people to find, and
 clearer, and easier to maintain in the future, i took the good parts of
that wiki
 page, moved them out to our git repo, and put them here:
 http://linuxcnc.org/docs/2.5/html/code/Contributing-to-LinuxCNC.html
 
 I welcome feedback on the content of the new document, especially from
 people who were dissatisfied with the old wiki page.  Does the new
 document work better?  What can i (or you!) add to it to make it clearer,
 more descriptive, more welcoming?
 
 
 --
 Sebastian Kuzminsky
 


--
 DreamFactory - Open Source REST  JSON Services for HTML5  Native Apps
 OAuth, Users, Roles, SQL, NoSQL, BLOB Storage and External API Access Free
 app hosting. Or install the open source package on any LAMP server.
 Sign up and see examples for AngularJS, jQuery, Sencha Touch and Native!
 http://pubads.g.doubleclick.net/gampad/clk?id=63469471iu=/4140/ostg.clk
 trk
 ___
 Emc-developers mailing list
 Emc-developers@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/emc-developers


--
DreamFactory - Open Source REST  JSON Services for HTML5  Native Apps
OAuth, Users, Roles, SQL, NoSQL, BLOB Storage and External API Access
Free app hosting. Or install the open source package on any LAMP server.
Sign up and see examples for AngularJS, jQuery, Sencha Touch and Native!
http://pubads.g.doubleclick.net/gampad/clk?id=63469471iu=/4140/ostg.clktrk
___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


Re: [Emc-developers] Building a new C++ kinematics module

2013-11-11 Thread Frank Tkalcevic
 I think the Makefile rules will not build a RT module out of C++ code
since the kernel environment is not geared for C++ runtime support
 
 any chance you recode this into plain C ?

I've managed to get it working in the simulator by hacking some rules in the
Submakefile.  I'm playing with ikfast which generates c++ code.  If it all
works properly, I'll look into modifying ikfast to generate C code.  Most of
the C++ code is just bundling the results up into lists.




--
November Webinars for C, C++, Fortran Developers
Accelerate application performance with scalable programming models. Explore
techniques for threading, error checking, porting, and tuning. Get the most 
from the latest Intel processors and coprocessors. See abstracts and register
http://pubads.g.doubleclick.net/gampad/clk?id=60136231iu=/4140/ostg.clktrk
___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


Re: [Emc-developers] Building a new C++ kinematics module

2013-11-11 Thread Frank Tkalcevic

 ikfast got my attention recently and I looked for someone who could help 
 me make custom kinematics for 6 axis articulated robot. Can I ask you to 
 help find the way to do it with ikfast?

It was your discussion that got me interested in ikfast.

I don't think it is going to be simple.  I've got a small 4DoF arm.  I
managed to get the Translate3D iktype working in simulation mode.  Getting
it to work in realtime mode is probably going to require rewriting the
generated ikfast C++ module into C as Michael suggested.

After I got the Translate3D working, I tried TranslationXAxisAngle4D.  This
is failing, I think because it allocates an array of double[24][24][23]
(106k) plus another couple of huge arrays defined on the stack.  I get a
compiler warning...

warning: the frame size of 117088 bytes is larger than 2560 bytes
[-Wframe-larger-than=]

 which I think is corrupting the stack.  I don't know where this 2560 limit
is defined.

I did manage to get it working by changing the code and making the large
arrays static, but it's not the right way to do it.

Frank


--
November Webinars for C, C++, Fortran Developers
Accelerate application performance with scalable programming models. Explore
techniques for threading, error checking, porting, and tuning. Get the most 
from the latest Intel processors and coprocessors. See abstracts and register
http://pubads.g.doubleclick.net/gampad/clk?id=60136231iu=/4140/ostg.clktrk
___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


[Emc-developers] Building a new C++ kinematics module

2013-11-10 Thread Frank Tkalcevic
I'm trying to add a new C++ kinematics module.  If I just put my .cc file in
the src/emc/kinematics directory, nothing happens.

 

I looked in src/Makefile and found these lines (I'm building the simulator
at the moment).

 

$(sort $(RTOBJS)) : objects/rt%.o : %.c

$(ECHO) Compiling realtime $

@mkdir -p $(dir $@)

$(Q)$(CC) -c $(OPT) $(DEBUG) -DSIM -DSIMULATOR -DRTAPI $(EXTRA_CFLAGS)
$ -o $@

 

 

Firstly, I've never seen a make line with 3 colons, so I'm not really sure
what this does.  If I duplicate the block and change the rule to look for
.cc and run the CXX compiler, like this.

 

 

$(sort $(RTOBJS)) : objects/rt%.o : %.cc

$(ECHO) Compiling realtime $

@mkdir -p $(dir $@)

$(Q)$(CXX) -c $(OPT) $(DEBUG) -DSIM -DSIMULATOR -DRTAPI $(EXTRA_CFLAGS)
$ -o $@

 

 

I get this repeated for all objects/rt* but still no build.

 

Makefile:880: warning: overriding commands for target
`objects/rtobjects/hal/components/xor2.o'

Makefile:875: warning: ignoring old commands for target
`objects/rtobjects/hal/components/xor2.o

 

It appears the .c and .cc rules are the same.  I using the 2.5.3 source.
Any ideas?

 

Frank

 

--
November Webinars for C, C++, Fortran Developers
Accelerate application performance with scalable programming models. Explore
techniques for threading, error checking, porting, and tuning. Get the most 
from the latest Intel processors and coprocessors. See abstracts and register
http://pubads.g.doubleclick.net/gampad/clk?id=60136231iu=/4140/ostg.clktrk
___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


Re: [Emc-developers] development setups

2013-08-23 Thread Frank Tkalcevic
I have a similar setup, but replace MAC with Windows PC.

Any serious development is done in a virtual machine on my PC.  All my
linuxcnc boxes are too slow (and remotely connected) to provide a nice
development experience.  I use the simulator build of linuxcnc.  Only after
I think I have finished coding do I move to the real system to test, using
lots of remote xterms and vi (through Cygwin/X).

I also do my CAM stuff on my Windows PC and use samba (smbclient) to copy
files from a windows share.

Originally, I rooted my DNS232 NAS box and installed git on it to be my
always on source code repository.  I also installed nfs, but I rarely use it
because I mainly use git.  There are many NAS boxes that can be rooted.
There are also many that are designed to allow packages to be installed (I
also have a Synology box that allows that).

Recently I installed a small dedicated Windows Server (running databases and
other things), and this is now my source code repository.

Frank

-Original Message-
From: andy pugh [mailto:bodge...@gmail.com] 
Sent: Friday, 23 August 2013 10:49 PM
To: EMC developers
Subject: [Emc-developers] development setups

There has to be a more sensible way to do this.

I have a bare motherboard with 8GB flash that is my LinuxCNC development
hardware. It sits on a book-shelf behind the TV, which acts as a monitor
when required. This has various bits of Mesa hardware festooned all over it.

I also have an iMac with a 27 screen and a comfy chair. This is where I
prefer to sit when coding.

Previously I have been running Eclipse (and before that Xcode) on the Mac
with the code stored on the 8GB ssd on the Linux system and shared to the
Mac. (then compiling and testing through an ssh terminal (and X-forwarding
when I need to see the Axis interface)).

This works OK, when it works. The drawbacks are that if the iMac loses
contact with the share for any reason, then Eclipse gets upset, can't save
the workspace file, and the whole project needs to be set up from scratch
again. Also X-forwarding only works once per login. I have to log out and in
again to re-enable it.

Now that I appear to be swapping between 32-bit and 64-bit systems rather
frequently I decided it made more sense to keep the git repository on my
NAS, then Eclipse should never lose it and all my LinuxCNC machines can
share the same code repository. Does that seem logical?

Setting up the NFS share from the Mac to the NAS was easy, it has autofs
built-in and basically it just works.

I have not yet managed to get the LinuxCNC machine to work properly in the
same way. I spent several hours with a chap on the IRC on the problem on
wednesday, and at one point it appeared that we had cracked it with a change
to the timeout in the mount command, but it turned out to be a fluke, and
reconnection via an fstab entry or by a manual mount always fails.
Re-installaion from scratch of 12.04 Lubuntu did not help, nor did a clean
installation from the 10.04 LiveCD. I also tried installing Autofs on the
LinuxCNC machine, and that appears to simply not work at all.

I _did_ manage to set up fstab to connect to the NAS via a Samba share, but
that was unusably slow (there is no reason to think that an NFS share would
be faster, of course)

So, now I am back with the original setup, which will be OK until next time
I need to swap OS-es on the dev machine, at which point I will have to
re-create the git-repo from the LinuxCNC server, re-install all the
dependencies and the other tools and accept that in the process I lose all
the non-pushed branches.

Given the setup (monitor, keyboard and chair belong to the Mac, Mac can see
NAS, Linux Machine can't see NAS, Linux Machine is frequently nuked, can
anyone suggest a sensible way to work?

Preferably one that doesn't involve vi :)

--
atp
If you can't fix it, you don't own it.
http://www.ifixit.com/Manifesto


--
Introducing Performance Central, a new site from SourceForge and
AppDynamics. Performance Central is your source for news, insights, analysis
and resources for efficient Application Performance Management. 
Visit us today!
http://pubads.g.doubleclick.net/gampad/clk?id=48897511iu=/4140/ostg.clktrk
___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


--
Introducing Performance Central, a new site from SourceForge and 
AppDynamics. Performance Central is your source for news, insights, 
analysis and resources for efficient Application Performance Management. 
Visit us today!
http://pubads.g.doubleclick.net/gampad/clk?id=48897511iu=/4140/ostg.clktrk
___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


Re: [Emc-developers] Fwd: [emc:bugs] #328 Problem using AXIS together with HALUI

2013-08-01 Thread Frank Tkalcevic
Isn't this just the fact that the buffers can't be shared?  If you want a
command buffer don't you need to edit the linuxcnc.nml file and allocate a
buffer for you process with a unique name?

I had a problem where I was using Axis + Linuxcncrsh.  After running for a
couple of hours my job stopped working properly.  It looked like it was
executing one line of gcode every 2 seconds.  Axis and linuxcncrsh use the
same named buffer.  I've never had the problem running axis and keystick at
the same time - they use different named buffers (although I think that
changed recently ).

-Original Message-
From: Michael Haberler [mailto:mai...@mah.priv.at] 
Sent: Thursday, 1 August 2013 5:56 PM
To: EMC developers
Subject: [Emc-developers] Fwd: [emc:bugs] #328 Problem using AXIS together
with HALUI

for some reason tracker entries arent fowarded to emc-developers anymore?

this is a rather colossal one

-m

Anfang der weitergeleiteten Nachricht:

 Von: Michael Haberler mahs...@users.sf.net
 Betreff: [emc:bugs] #328 Problem using AXIS together with HALUI
 Datum: 01. August 2013 08:54:50 MESZ
 An: [emc:bugs]  3...@bugs.emc.p.re.sf.net Antwort an: [emc:bugs]  
 3...@bugs.emc.p.re.sf.net
 
 Sascha,
 
 if your analysis is correct (and I do not doubt it is) your work
identifies and removes a fundamental design defect from intertask
communication in LinuxCNC.
 
 I did run into the problem before in a different context: I tried to
implement a remote procedure call over NML using the existing (fishy)
interaction pattern, and that failed for the reasons you describe; at the
time I did not drill down like you did - congratulations for the stamina in
identifying and fixing this!
 
 To verify, is the scenario as follows?:
 
 task A writes a command+local serial into the command buffer the 
 command consumer is late in processing the command task B goes ahead 
 and also writes a command to the buffer with its own serial B's 
 command gets executed and 'acknowledged'
 the acknowlegdement for A's command necessarily fails due to serial 
 mismatch, or lack of an ack altogether If this is the case, then I would
see more than option to address the issue:
 
 as you have done, mutate the buffer into a queue *) stay with the 
 single command buffer, but make producers aware of a command being 
 present but not yet finished so the write does not happen before 
 completion the globally uniqe serial surely helps, but afaict alone it is
not sufficient to protect against the problem I am positive you are onto
something fundamental here. Before adopting the patch my suggestion would
be:
 
 we need to create a test case which identifies the current problem, even
if only for regression tests. This might be a bit involved given all the
moving parts. It might be easier to replicate the code sequence into small
test programs and verify that the overwrite happens.
 
 the underlying problem is an unprotected write to a shared resource, 
 and there might be more than one way to fix it (see above); it might 
 make sense to adopt a method which is less of a wholesale change (I 
 dont suggest it exists; just saying - it might make sense to 
 investigate if there is a single fix to the issue at a different 
 level)
 
 it might make sense to reconsider the usage of serials altogether. What
they are for is correlating origin and command for replies; hence a tuple
(local serial, originator id) would do the same trick; provided the
originator ID is known to be unique. The reason why I am raising this is - a
globally unique serial generator either needs shared memory, or - in the
distributed case - a RPC-type service. Note full distribution of components
is a goal for the future replacement of NML by zmq and protobuf which I'm
working on (or rather would like to work once I have the RTOS work out the
door).
 Interested how you see this.
 
 best regards, and congratulations
 
 Michael
 
 *) I would think the queue would protect against overwriting of commands
alone; NB the possibly clash in non-unique serial numbers still exists:
meaning the combination of single command buffer, write protect if command
present, and serial/unique originator tuples might do the trick too. As a
matter of style, I think your patch - making the command input a queue
proper - is more up to the point though.
 
 [bugs:#328] Problem using AXIS together with HALUI
 
 Status: open
 Created: Wed Jul 31, 2013 10:19 PM UTC by Sascha Ittner Last Updated: 
 Wed Jul 31, 2013 10:19 PM UTC
 Owner: nobody
 
 I've found a problem in using AXIS together with HALUI, but it seems a
general problem when two or more user interfaces are used the same time.
 
 If I use HALUI excessively I've found that axis is blocked some times.
Even more problematic for me is the fact that in some cases the HALUI action
get lost. After investigating the involved code I've found the reason. I'll
try to describe my thoughts:
 
 The communication between UI and EMCTASK is done by shared mem buffers
(cmd + status). 

Re: [Emc-developers] Gwiz what the status?

2012-09-10 Thread Frank Tkalcevic
 Clearly nobody is using it lately :)


I use it for my lathe and haven't noticed any problems.


 I was thinking that if this was embeddable in the screen and could access
the
 python script style wizards that it would be a very handy winner.


I was thinking the opposite.  It would be nice if we could embed the
linuxcnc backtrace into GWiz, so when we string together a few commands, we
could get a visual display of what we are programming.  And as you say,
enhancing GWiz to support script wizards would be awesome.  Add to that, the
work that's been done for lathe roughing canned cycle, and it would be a
pretty complete system for my needs.




--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


Re: [Emc-developers] Future Minimum Display Resolution?

2012-03-25 Thread Frank Tkalcevic
  displays GCode. It uses gremlin to embed a preview, but you can't
  interact with it unless you use a mouse or touchscreen.
 
 In what way do you want to interact with it?
 Some things I have done: zooming, changing views, toggling the DRO on and
 off.
 I used separate GUI buttons to do this. Panning and rotating I have not
tried.

That's what I can't do, the GUI buttons.  Because I am using X Embed, it is
a separate application, so I can't add the standard axis toolbar buttons,
for example, to change the view angle, or repaint.


--
This SF email is sponsosred by:
Try Windows Azure free for 90 days Click Here 
http://p.sf.net/sfu/sfd2d-msazure
___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


Re: [Emc-developers] Future Minimum Display Resolution?

2012-03-23 Thread Frank Tkalcevic
I've been building pendants that use small 3.2 LCD displays.  

My first version just used a simple command based interface (fill rectangle,
draw straight line, draw text), driven by a python menu add on, which runs
in parallel with Axis.
(http://www.franksworkshop.com.au/CNC/LathePendant/LathePendant.htm)

Version 2 is a high speed USB version that acts like a USB display.  When
X11 is set up properly, runs as a secondary (or tertiary) display.  I've
also managed to get one of these
(http://www.soundgraph.com/fingervu436-feature-en/) working, including
touchscreen.

Unfortunately, their resolutions are too low (400x240 and 480x272) to be
used with axis, so I've been writing a Qt version.  

It is data driven - an XML file defines the layout and functionality.  Each
xml configuration is a screen-set.  To keep it flexible, I've got one that
looks like axis, one for each of my displays, and I plan to do a Mock3 one.
Currently it can do basic functionality - start/stop/pause, load etc.  It
displays GCode.  It uses gremlin to embed a preview, but you can't interact
with it unless you use a mouse or touchscreen.  It can also embed vismach,
and a camera display.  It can also use QtScript (JavaScript, no python :).
The plan is to build a GUI editor.

I've been distracted over the last couple of months.  In the next few weeks
I'll post a demo, to see if there is any interest in yet another GUI.  The
current plan is to use it as a secondary display on the pendant, with axis
as the primary.  It just depends on how much work I feel like doing on it.

Another workshop project was to build a monitor slide away draw.  I don't
have any pictures yet, but I used a AOV e2243Fw2k
(http://www.aocmonitorap.com/anz/monitor_306.php) monitor which is 12.9mm
thick.  It folds down and slides away using only about 20mm of space.
Unfortunately to get it to work, I had to remove the stand (where the
interface electronics is located), shave off a lot of plastic, and make a
new holder for the interface electronics.  It worked fine for a while, but
now it seems to shutdown every time I fold it out of the way.  So, the next
version will probably be this
(http://www.engadget.com/2012/03/17/gechic-on-lap-1302-portable-monitor-vide
o/), which is only 1366x768, so back to the OP, that will be my minimum
resolution for axis.


 -Original Message-
 From: Darren Conway [mailto:darren.con...@xtra.co.nz]
 Sent: Friday, 23 March 2012 5:09 PM
 To: emc-developers@lists.sourceforge.net
 Subject: Re: [Emc-developers] Future Minimum Display Resolution?
 
 I am not sure if this is relevant, but what about small screen mobile
devices?
 I can think of examples where a small hand held wireless device could be
 useful.  The hand held device running the human interface with a PC
 hardwired to the machine under control.
 
 These may not have a very high resolution.
 Just a thought.
 
 Darren
 
 On 23/03/2012 6:31 p.m., Kim Kirwan wrote:
  With 12.04 and 2.5 waiting in the wings, and with new UI's and similar
  such as GladeVCP, ngcgui, etc., not to mention the disappearance of
  4:3 displays in favor of 16:9 or 16:10, I would like to pose a
  question for the developers:
 
  How long will 1024x780 remain a viable screen resolution for LinuxCNC?
  (I mean before it becomes too inconvenient, as 800x600 has become
  already, in my opinion.) Or is it already past that? Is 1280x1024 now
  the practical minimum?
 
  (Considering purchasing a 1024x780 touch screen or two.)
 
  I am asking here only about things that fill up the screen, not the
  problem of new vs. old video connectors/cards.
  Otherwise, all comments and opinions invited!
 
  Thanks,
 
  Kim
 
 
  --
  
  This SF email is sponsosred by:
  Try Windows Azure free for 90 days Click Here
  http://p.sf.net/sfu/sfd2d-msazure
  ___
  Emc-developers mailing list
  Emc-developers@lists.sourceforge.net
  https://lists.sourceforge.net/lists/listinfo/emc-developers
 
 
  -
  No virus found in this message.
  Checked by AVG - www.avg.com
  Version: 10.0.1390 / Virus Database: 1518/3810 - Release Date:
  08/04/11 Internal Virus Database is out of date.
 
 
 


--
 This SF email is sponsosred by:
 Try Windows Azure free for 90 days Click Here http://p.sf.net/sfu/sfd2d-
 msazure ___
 Emc-developers mailing list
 Emc-developers@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/emc-developers


--
This SF email is sponsosred by:
Try Windows Azure free for 90 days Click Here 
http://p.sf.net/sfu/sfd2d-msazure
___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers

Re: [Emc-developers] Experimental web front-end for localizing LinuxCNC

2012-03-11 Thread Frank Tkalcevic
Is this why when I just hit www.linuxcnc.com, it came up in Russian?



 -Original Message-
 From: Jeff Epler [mailto:jep...@unpythonic.net]
 Sent: Sunday, 11 March 2012 1:10 PM
 To: emc-developers@lists.sourceforge.net
 Subject: [Emc-developers] Experimental web front-end for localizing
 LinuxCNC
 
 There's a new piece of Free software called weblate[1] for localizing
 software.  I have set up an experimental website using it at
 http://l10n.unpythonic.net/
 one aspect of this software that is relevant to us is that it has good git
 integration: adding or revising a translation creates a local git commit,
which
 can later be merged into the version at git.linuxcnc.org.
 
 It's my hope that software like this can remove some of the technical
barriers
 to user-contributed translations, by making it unnecessary to learn the
 details of git and the po file format.  (it can never erase all the
technical
 barriers, because for instance it's still necessary to understand what %s
and
 %d mean)
 
 If you are interested in translating the user interface portions of
LinuxCNC
 into your language, I invite you to give it a try.  Start by creating an
account.
 Once you've activated your account, navigate to LinuxCNC experimental
 web translation and then choose subproject v2.5 (or just start at
 http://l10n.unpythonic.net/projects/linuxcnc/linuxcnc-25/
 ) click the language you wish to work on, and then not translated
strings or
 fuzzy strings to find strings to work on.
 
 If you don't care to create an account you can still use the suggest
 button to suggest a translation, which can be approved by a user with an
 account.
 
 Please only enter real translations in l10n.unpythonic.net, though.
 If you want to play with the weblate without the need to worry about
 contributing good translations, you can try the weblate demo site:
 http://demo.weblate.org/
 
 Right now the contributed translations are not feeding back into the
 linuxcnc.org git repository, they're just going somewhere on my personal
 server.  However, if people do real translation work on
l10n.unpythonic.net
 I'll make my best effort to get these translations into the linuxcnc.org
version
 of the software.
 
 Jeff
 [1] http://weblate.org/
 


--
 Virtualization  Cloud Management Using Capacity Planning Cloud computing
 makes use of virtualization - but cloud computing also focuses on allowing
 computing to be delivered as a service.
 http://www.accelacomm.com/jaw/sfnl/114/51521223/
 ___
 Emc-developers mailing list
 Emc-developers@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/emc-developers


--
Try before you buy = See our experts in action!
The most comprehensive online learning library for Microsoft developers
is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3,
Metro Style Apps, more. Free future releases when you subscribe now!
http://p.sf.net/sfu/learndevnow-dev2
___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


Re: [Emc-developers] Experimental web front-end for localizing LinuxCNC

2012-03-11 Thread Frank Tkalcevic
Yes, sorry, .org

Strangely, Chrome shows the main body in Russian.  Internet Explorer shows
it in English.

 -Original Message-
 From: Jeff Epler [mailto:jep...@unpythonic.net]
 Sent: Monday, 12 March 2012 12:13 PM
 To: EMC developers
 Subject: Re: [Emc-developers] Experimental web front-end for localizing
 LinuxCNC
 
 On Mon, Mar 12, 2012 at 12:05:45PM +1100, Frank Tkalcevic wrote:
  Is this why when I just hit www.linuxcnc_com, it came up in Russian?
 
 No. (our website is linuxcnc.org, not .com)
 
 Jeff
 


--
 Try before you buy = See our experts in action!
 The most comprehensive online learning library for Microsoft developers is
 just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3,
Metro
 Style Apps, more. Free future releases when you subscribe now!
 http://p.sf.net/sfu/learndevnow-dev2
 ___
 Emc-developers mailing list
 Emc-developers@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/emc-developers


--
Try before you buy = See our experts in action!
The most comprehensive online learning library for Microsoft developers
is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3,
Metro Style Apps, more. Free future releases when you subscribe now!
http://p.sf.net/sfu/learndevnow-dev2
___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


[Emc-developers] Using github to host linuxcnc repository

2012-02-23 Thread Frank Tkalcevic
I'm new to git so I may have completely misunderstood what git can do,
but...

I have more than one linuxcnc machine now, and they all have customisations
to the source.

As I understand it, I should be able to up my own main repository clone of
linuxcnc.  Then, each of my cnc machines can then clone the source from this
main repository, and push changes to it.  Every now and then I'd pull the
latest linuxcnc main branch to this main server, and update the cnc
machines.

First question, is this possible?  Is this the right way to do it?

Second question, can this main repository be set up on github? Given that
github is free, it seems like a good place to store it.
 Any idea how?  I've read about fork on github, but that only seems to
apply to repositories hosted on github.


--
Virtualization  Cloud Management Using Capacity Planning
Cloud computing makes use of virtualization - but cloud computing 
also focuses on allowing computing to be delivered as a service.
http://www.accelacomm.com/jaw/sfnl/114/51521223/
___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


Re: [Emc-developers] Using github to host linuxcnc repository

2012-02-23 Thread Frank Tkalcevic
  Second question, can this main repository be set up on github? Given
  that github is free, it seems like a good place to store it.
  Any idea how?  I've read about fork on github, but that only seems
  to apply to repositories hosted on github.
 
 right
 
 just create an empty emc2-dev repo on github, and push all branches you
 need from your local working repo

So does that mean, when I want to pull the latest from linuxcnc, I need to
pull to one of my local copies, get it all up to date, push back to my
remote github, then on my other local copies, get from the github?

At the moment I'm content working based on what's in master.


--
Virtualization  Cloud Management Using Capacity Planning
Cloud computing makes use of virtualization - but cloud computing 
also focuses on allowing computing to be delivered as a service.
http://www.accelacomm.com/jaw/sfnl/114/51521223/
___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


[Emc-developers] What's being rebranded

2012-01-26 Thread Frank Tkalcevic
I'm sure this has been described by one of the emails, but my inbox is
flooded at the moment.

From a source code point of view, what's changing in the rebranding?

Is it just the external application names and text?  The libraries, eg
libemcini.so?  The internal structures, EMC_TASK_STAT?

I just want to know what I'm in for, when I update from git.

Thanks,
Frank


--
Keep Your Developer Skills Current with LearnDevNow!
The most comprehensive online learning library for Microsoft developers
is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3,
Metro Style Apps, more. Free future releases when you subscribe now!
http://p.sf.net/sfu/learndevnow-d2d
___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


[Emc-developers] Is Tool table still populated in EMC_TOOL_STAT?

2011-11-06 Thread Frank Tkalcevic
I've just updated my source to the latest in master, and I'm trying to run a
python GUI app, that uses the emc.stat.tooltable member to list all the
tools in the tool table.  However, the list is empty.

I can still run axis, and edit the tool table from the menu, so everything
seems to be in the right place.

Has this changed?  I looked back in the mail archives and didn't see
anything that specifically said this wasn't being used.

Frank


--
RSA(R) Conference 2012
Save $700 by Nov 18
Register now
http://p.sf.net/sfu/rsa-sfdev2dev1
___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


Re: [Emc-developers] Is Tool table still populated in EMC_TOOL_STAT?

2011-11-06 Thread Frank Tkalcevic
Acutally, ignore my stupidity.  The code I was looking at was my own python
code to read the tool table, not what is in emc.stat.  I just haven't
updated the code to read the new tool table format.





 -Original Message-
 From: Michael Haberler [mailto:mai...@mah.priv.at]
 Sent: Sunday, 6 November 2011 5:47 PM
 To: EMC developers
 Subject: Re: [Emc-developers] Is Tool table still populated in
 EMC_TOOL_STAT?
 
 assuming Axis:
 
 say you changed tool - if Axis shows the tool number, diameter and offset
 than that did go through emc.stat.tooltable (old and new tool)
 
 can you post the Python code?
 -m
 Am 06.11.2011 um 07:09 schrieb Frank Tkalcevic:
 
  I've just updated my source to the latest in master, and I'm trying to
  run a python GUI app, that uses the emc.stat.tooltable member to list
  all the tools in the tool table.  However, the list is empty.
 
  I can still run axis, and edit the tool table from the menu, so
  everything seems to be in the right place.
 
  Has this changed?  I looked back in the mail archives and didn't see
  anything that specifically said this wasn't being used.
 
  Frank
 
 
  --
  
  RSA(R) Conference 2012
  Save $700 by Nov 18
  Register now
  http://p.sf.net/sfu/rsa-sfdev2dev1
  ___
  Emc-developers mailing list
  Emc-developers@lists.sourceforge.net
  https://lists.sourceforge.net/lists/listinfo/emc-developers
 
 


--
 RSA(R) Conference 2012
 Save $700 by Nov 18
 Register now
 http://p.sf.net/sfu/rsa-sfdev2dev1
 ___
 Emc-developers mailing list
 Emc-developers@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/emc-developers


--
RSA(R) Conference 2012
Save $700 by Nov 18
Register now
http://p.sf.net/sfu/rsa-sfdev2dev1
___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


[Emc-developers] Patch: Jog Speed exceeds axis MAX_VELOCITY

2011-10-31 Thread Frank Tkalcevic
I posted this in the emc-users group because I thought it was a
configuration problem, but it appears to be a software issue.

This only happens on a gantry system.

When axis starts, emc is in EMC_TRAJ_MODE_FREE, meaning all axis can be
jogged freely.  axis uses the EMC_AXIS_JOG command which checks that the
requested velocity does not exceed the MAX_VELOCITY value in [AXIS_n]

With a gantry, emc starts in EMC_TRAJ_MODE_FREE, but after it has been
homed, it moves into EMC_TRAJ_MODE_TELEOP.  axis will now jog using the
SetTeleopVector command by specifying the velocity as the current jog
velocity, or, if shift is being pressed, [TRAJ]MAX_VELOCITY.  

This is the first issue - axis does not look at the [AXIS_n] max velocities
when jogging in teleop mode.  

However, I feel the real problem is that there is no MAX_VELOCITY checking
when executing the emcTrajSetTeleopVector() function.

So this patch addresses this by restricting the velocity in a teleop vector
command to the values of [AXIS_n]MAX_VELOCITY.

I don't know how else TELEOP mode is used, or if this can cause other
issues.  Or if the axis number mappings may cause other issues.  The new
methods, setPoseByAxis and getPoseByAxis could also be move to a more
general place. (C++ member would be better)

Frank


0003-Limit-the-velocities-in-the-SetTeleopVector-command-.patch
Description: Binary data
--
Get your Android app more play: Bring it to the BlackBerry PlayBook 
in minutes. BlackBerry App World#153; now supports Android#153; Apps 
for the BlackBerryreg; PlayBook#153;. Discover just how easy and simple 
it is! http://p.sf.net/sfu/android-dev2dev
___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


Re: [Emc-developers] hal_input bug(?)

2011-04-04 Thread Frank Tkalcevic
As you suggested, most USB devices only send updates when inputs change.  In
the USB spec, it is possible to query the device inputs.  I'm guessing
hal_input doesn't support that.

hidcomp (http://hidcomp.sourceforge.net/) is supposed to support that, but I
can't guarantee it works because the device I use sends updates 20 times a
second (it has a watchdog type tick).

 -Original Message-
 From: andy pugh [mailto:bodge...@gmail.com]
 Sent: Tuesday, 5 April 2011 3:03 AM
 To: EMC developers
 Subject: [Emc-developers] hal_input bug(?)
 
 There is a chap on the forum using hal_input and a pendant on which the
 initial states of the controls can not be assumed to be zero.
 http://www.linuxcnc.org/component/option,com_kunena/Itemid,20/func,vi
 ew/catid,24/id,8404/lang,english/#8404
 He has found a mention in the docs of a bug whereby the initial state is
not
 correctly reported. My suspicion is that USB-HID only sends events when
 inputs change?
 
 Any ides if there is a fix, or a useful hardware workaround?
 
 --
 atp
 Torque wrenches are for the obedience of fools and the guidance of wise
 men
 


--
 Create and publish websites with WebMatrix Use the most popular FREE
 web apps or write code yourself; WebMatrix provides all the features you
 need to develop and publish your website. http://p.sf.net/sfu/ms-
 webmatrix-sf
 ___
 Emc-developers mailing list
 Emc-developers@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/emc-developers


--
Xperia(TM) PLAY
It's a major breakthrough. An authentic gaming
smartphone on the nation's most reliable network.
And it wants your games.
http://p.sf.net/sfu/verizon-sfdev
___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


[Emc-developers] emctool.h not found

2010-08-01 Thread Frank Tkalcevic
I'm trying to rebuild my application against 2.4.3.  It is an external
application that uses header files in include, and links with libraries in
src/emc2/lib (emchal, emc, nml, encini)

 

The current version won't compile because canon.hh includes emctool.h, which
is in another directory (sorry, can't remember which, I'm doing this from
memory).

 

Is this a problem with the release, or should I not be relying on the
include directory for an external application?

 

Thanks,

Frank

--
The Palm PDK Hot Apps Program offers developers who use the
Plug-In Development Kit to bring their C/C++ apps to Palm for a share
of $1 Million in cash or HP Products. Visit us here for more details:
http://p.sf.net/sfu/dev2dev-palm___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


Re: [Emc-developers] v2.4_branch created; master open for new features

2010-02-04 Thread Frank Tkalcevic
 The creation of the v2.4_branch means that new features can 
 go on master again, but I hope that for the time being people 
 will concentrate on 2.4.

For the casual source code getter, how do I update my current git source to
that particular version? 


--
The Planet: dedicated and managed hosting, cloud storage, colocation
Stay online with enterprise data centers and the best network in the business
Choose flexible plans and management services without long-term contracts
Personal 24x7 support from experience hosting pros just a phone call away.
http://p.sf.net/sfu/theplanet-com
___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


[Emc-developers] EMC+RTNET

2009-12-18 Thread Frank Tkalcevic
I've been playing around with RTNet (realtime ethernet).  I've been looking
at it as an alternative to parallel ports, and internal cards.

I've built an embedded slave using the Atmel NGW100 board.  I have a test
application that runs on RTAI linux (the master), which reads the encoder
and IO statuses, does PID calculations, then sends PWM and IO ouputs.  The
unoptimised code can run at 200Hz.  I'm hoping to get this up to 1kHz.  This
is driving my dinky robot arm (6v 30mA motors, encoder, 485:1 gearbox).

On top of RTNet runs the TDMA protocl, time division multiple access.  The
master sends out a sync frame at the start of every period (current every
5ms - 200Hz).  The 5ms period is divided up into time slots, and the master,
and each slave are allocated one or more slots to send.

Now I'm trying to integrate it into EMC and I have a couple of issues.

1) RTNET wants to run the rtai timer in one-shot mode.  So, I can either set
the EMC base thread to run at a high rate so RTNET can get close to when it
wants the timer to be fired, or I can modify EMC to use the one-shot timer
instead of the periodic timer.  (RTNET has the option of not starting the
rtai timer and use whatever is active). How will the one-shot timer effect
EMC threads?  I'm guessing this will introduce jitter.  Is this a problem
for a servo system?

2) As described above, the time on the ethernet wire will be divided up into
5ms periods, with slots defined as...

0ms  | 0.1ms| .3ms
Sync | Slot 0   | Slot 1
 | Slave sends encoders | Master sends PWM info

In order for this to work, I need to be able to synchronise the Sync frame
of RTNet (the start of the period), with the servo thread in EMC (with
offset).  

Ideally, when the EMC servo thread starts processing, RTNet has already
received the data from wire, and it is ready to be processed.  So I need to
set the Rtnet Sync frame to begin at servo thread time - (0.1ms +
transmission delay).  Rtnet currently doesn't have a way to do this.  Does
EMC?  If not, I need to change either EMC or RTNET to support this.  Does
EMC need a facility like this?  On the Rtnet mailing lists, I was asked if
EMC supports realtime events like Fieldbus, but I have no idea what it is?

3) And finally, when I create my realtime hal component to do this, should I
be using the function interface of EMC, or just use RTAI events?

If I use hal functions, then I rely on getting question 2) solved.  I need a
read() function to be called at the start of the cycle, and a write() at the
end.  Then I need to ensure they are called at the correct times.

The other way I was thinking of handling it would be to use RTAI directly,
setting up a read task and a write tasks that fired independently, and just
kept the hal pins and paramaters up to date.  This would have the problem of
possibly being 0.5 - 1.0 cycles out of sync, but then there wouldn't be
timing issues of missing read/write time slots.

Any thoughts?

Thanks,
Frank



--
This SF.Net email is sponsored by the Verizon Developer Community
Take advantage of Verizon's best-in-class app development support
A streamlined, 14 day to market process makes app distribution fast and easy
Join now and get one step closer to millions of Verizon customers
http://p.sf.net/sfu/verizon-dev2dev 
___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


[Emc-developers] Additional includes for comp

2009-12-12 Thread Frank Tkalcevic
Is there any way to specify additional include directories when building a
.comp component, ie the -Ipath option?  The realtime headers don't seem to
have all of the system header files.  (at least I think that is why it can't
find the headers)

Frank


--
Return on Information:
Google Enterprise Search pays you back
Get the facts.
http://p.sf.net/sfu/google-dev2dev
___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


Re: [Emc-developers] Additional includes for comp

2009-12-12 Thread Frank Tkalcevic
I think I need to rephase my question.

Firstly, I need to specify additional includes for some custom headers
files.

Secondly, I need to include some operating system header files that don't
appear in the /usr/realtime/include.

Is there anyway I can do this, or should I just start coding it in C?



 -Original Message-
 From: Frank Tkalcevic [mailto:fr...@franksworkshop.com.au] 
 Sent: Sunday, 13 December 2009 1:42 PM
 To: 'EMC developers'
 Subject: Additional includes for comp
 
 Is there any way to specify additional include directories 
 when building a .comp component, ie the -Ipath option?  The 
 realtime headers don't seem to have all of the system header 
 files.  (at least I think that is why it can't find the headers)
 
 Frank
 


--
Return on Information:
Google Enterprise Search pays you back
Get the facts.
http://p.sf.net/sfu/google-dev2dev
___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


Re: [Emc-developers] klunk on homing to index - NO!

2009-11-16 Thread Frank Tkalcevic
I just tried the fix on my lathe, and it looks worse.  I always got the
klunk the first time I homed, but it would be OK if I did subsequent homes.

I use a home switch and an index pulse.  It moves to the home switch, then
reverses slowly to find the index pulse.  It sets the X value to be the
current radius (80.54mm), then moves to 70.  Scope picture here
http://filebin.ca/hugkmx.  It klunks after it finds the index pulse.

My config...

# X axis
[AXIS_0]
TYPE =  LINEAR
MAX_VELOCITY =  15
MAX_ACCELERATION =  40
BACKLASH = 0.000
INPUT_SCALE =   2048
OUTPUT_SCALE = 1.000
OUTPUT_OFFSET = 0.0
MIN_LIMIT = -53
MAX_LIMIT = 81
FERROR = .06
HOME =  70
HOME_SEQUENCE = 0
HOME_OFFSET =   80.54
HOME_SEARCH_VEL =   2.0
HOME_LATCH_VEL =-0.1
HOME_USE_INDEX =YES
HOME_IGNORE_LIMITS =NO
MAX_OUTPUT =1.0

 

 -Original Message-
 From: Jon Elson [mailto:el...@pico-systems.com] 
 Sent: Tuesday, 17 November 2009 5:53 AM
 To: EMC developers
 Subject: [Emc-developers] klunk on homing to index - YES!
 
 Thanks to Chris Radek for fixing that klunk when homing to 
 index.  It appears to work, although you have to shut down 
 EMC and move the machine from the home position or you 
 wouldn't hear the klunk anyway.  But, a quick test shows that 
 it is fixed!
 
 Thanks,
 
 Jon
 
 --
 
 Let Crystal Reports handle the reporting - Free Crystal 
 Reports 2008 30-Day trial. Simplify your report design, 
 integration and deployment - and focus on what you do best, 
 core application coding. Discover what's new with Crystal 
 Reports now.  http://p.sf.net/sfu/bobj-july 
 ___
 Emc-developers mailing list
 Emc-developers@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/emc-developers
 


--
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus on 
what you do best, core application coding. Discover what's new with
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


Re: [Emc-developers] klunk on homing to index - NO!

2009-11-16 Thread Frank Tkalcevic
Ah ha!  It homes beautifully now.  

Thanks,
Frank 

 -Original Message-
 From: Alex Joni [mailto:alex.j...@robcon.ro] 
 Sent: Tuesday, 17 November 2009 10:05 AM
 To: EMC developers
 Subject: Re: [Emc-developers] klunk on homing to index - NO!
 
 Did you connect index-enable to the pid component too?
 Without that the behaviour should be unchanged (might be good 
 to test that too).
 
 Regards,
 Alex
 
 --
 From: Frank Tkalcevic fr...@franksworkshop.com.au
 Sent: Tuesday, November 17, 2009 12:33 AM
 To: 'EMC developers' emc-developers@lists.sourceforge.net
 Subject: Re: [Emc-developers] klunk on homing to index - NO!
 
  I just tried the fix on my lathe, and it looks worse.  I always got 
  the klunk the first time I homed, but it would be OK if I did 
  subsequent homes.
 
  I use a home switch and an index pulse.  It moves to the 
 home switch, 
  then reverses slowly to find the index pulse.  It sets the 
 X value to 
  be the current radius (80.54mm), then moves to 70.  Scope 
 picture here 
  http://filebin.ca/hugkmx.  It klunks after it finds the index pulse.
 
  My config...
 
  # X axis
  [AXIS_0]
  TYPE =  LINEAR
  MAX_VELOCITY =  15
  MAX_ACCELERATION =  40
  BACKLASH = 0.000
  INPUT_SCALE =   2048
  OUTPUT_SCALE = 1.000
  OUTPUT_OFFSET = 0.0
  MIN_LIMIT = -53
  MAX_LIMIT = 81
  FERROR = .06
  HOME =  70
  HOME_SEQUENCE = 0
  HOME_OFFSET =   80.54
  HOME_SEARCH_VEL =   2.0
  HOME_LATCH_VEL =-0.1
  HOME_USE_INDEX =YES
  HOME_IGNORE_LIMITS =NO
  MAX_OUTPUT =1.0
 
 
 
  -Original Message-
  From: Jon Elson [mailto:el...@pico-systems.com]
  Sent: Tuesday, 17 November 2009 5:53 AM
  To: EMC developers
  Subject: [Emc-developers] klunk on homing to index - YES!
 
  Thanks to Chris Radek for fixing that klunk when homing to 
 index.  It 
  appears to work, although you have to shut down EMC and move the 
  machine from the home position or you wouldn't hear the 
 klunk anyway.  
  But, a quick test shows that it is fixed!
 
  Thanks,
 
  Jon
 
  
 
 
 --
 
 Let Crystal Reports handle the reporting - Free Crystal 
 Reports 2008 30-Day trial. Simplify your report design, 
 integration and deployment - and focus on what you do best, 
 core application coding. Discover what's new with Crystal 
 Reports now.  http://p.sf.net/sfu/bobj-july 
 ___
 Emc-developers mailing list
 Emc-developers@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/emc-developers
 


--
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus on 
what you do best, core application coding. Discover what's new with
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


Re: [Emc-developers] klunk on homing to index - YES!

2009-11-16 Thread Frank Tkalcevic

 Are either of you using FF2?  I'm not, but it would be nice 
 if that was tested too.

I am, but not by design.  I just kept tweaking parameters until the servo
behaviour was adequate.  Was there a significant change that I need to look
out for?



--
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus on 
what you do best, core application coding. Discover what's new with
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


Re: [Emc-developers] RCS/CMS/NML question

2009-07-31 Thread Frank Tkalcevic
According the documentation
http://www.isd.mel.nist.gov/projects/rcslib/NMLcpp.html there is a
blocking_read() function that internally waits until it is signalled that
there is a message to be read.  You can either look into the blocking_read
implementation to see if the events/fds are exposed, or set up your own
background thread to do wait. 
 
Frank


  _  

From: Maxime Lemonnier [mailto:maxime.lemonn...@gmail.com] 
Sent: Saturday, 1 August 2009 8:37 AM
To: EMC developers
Subject: [Emc-developers] RCS/CMS/NML question


Hi,





I'm looking for someone familiar enough with the RCS/CMS/NML subsystem.





I'm looking for a way to implement the observer pattern so, what I'd need is
a way to register some callback function(s) when shared memory is written.








This is where I'm starting from :





[17:54] alex_joni in cms/cms_in.cc
[17:55] alex_joni you can probably (somehow) add your callback there
[17:55] alex_joni the write_raw gets called when a new function gets
written to the unbuffered channel
[17:55] alex_joni and queue_write_raw gets called for buffered channels





It appears that the 





CMS_STATUS CMS::write_XXX





family of function would be the right places to add a callbacks queue, but I
still don't know what to do with queued writes, I'll continue to
investigate. Also, I'm looking for a good place in the server to execute my
callbacks, when idle for instance. I don't want the write function to wait
for my callback to return, which would slow down the server. 





At worst I'll spawn a thread, but that means semaphores, so I'd rather used
an existing facility. 





Any other input would be welcome





Thank you,





(I'm still working on a PyQ4t-based gui project, it is going on well, but
poll-based refresh is a no go for a project which main intent is a cleaner
design.)













--
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus on 
what you do best, core application coding. Discover what's new with 
Crystal Reports now.  http://p.sf.net/sfu/bobj-july___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


[Emc-developers] Shared memory errors

2009-07-21 Thread Frank Tkalcevic
I've been writing a component, based on emclcd.cc and shcom.cc.  I think the
code was working - it would start up in a halrun, but now it fails to start
with nml errors.  

I'm not sure how the shared memory works.  Do I need to allocate a new
key(?) for my application?  I just took shcom.cc which uses xemc.

My component is also a usr component.  Can it connect to the share memory
buffers?

Can someone point me in the right direction?

This is a snippet of the errors.



libnml/os_intf/_shm.c 206: shmget(1001(0x3E9),8192,0) failed: (errno = 2):
No such file or directory
libnml/os_intf/_shm.c 225: No shared memory buffer exists for this key and
the IPC_CREAT was not given.
shmctl: Invalid argument
libnml/cms/cms_cfg.cc 905: cms_config: -4(CMS_NO_MASTER_ERROR: An error
occured becouse the master was not started.) Error occured during SHMEM
create.
libnml/nml/nml.cc 368: NML: cms_config returned -1.

**
* Current Directory = /home/frankt/emc2/config/sim
* 
**
* BufferName = emcCommand
* BufferType = 0
* ProcessName = xemc
* Configuration File = emc.nml
* CMS Status = -4 (CMS_NO_MASTER_ERROR: An error occured becouse the master
was not started.)
* Recent errors repeated:
NML: cms_config returned -1.

shmget(1001(0x3E9),8192,0) failed: (errno = 2): No such file or directory

No shared memory buffer exists for this key and the IPC_CREAT was not given.

cms_config: -4(CMS_NO_MASTER_ERROR: An error occured becouse the master was
not started.) Error occ
* BufferLine: B emcCommandSHMEM   localhost   81920
0   1   16 1001 TCP=5005 xdr
* ProcessLine: P xemc  emcCommand  LOCAL   localhost   W
0   10.00   10
* Config File = emc.nml
* error_type = 0 (NML_NO_ERROR)


libnml/os_intf/_shm.c 206: shmget(1002(0x3EA),10240,0) failed: (errno = 2):
No such file or directory
libnml/os_intf/_shm.c 225: No shared memory buffer exists for this key and
the IPC_CREAT was not given.
shmctl: Invalid argument
libnml/cms/cms_cfg.cc 905: cms_config: -4(CMS_NO_MASTER_ERROR: An error
occured becouse the master was not started.) Error occured during SHMEM
create.
libnml/nml/nml.cc 368: NML: cms_config returned -1.

**
* BufferName = emcStatus
* BufferType = 0
* ProcessName = xemc
* Configuration File = emc.nml
* CMS Status = -4 (CMS_NO_MASTER_ERROR: An error occured becouse the master
was not started.)
* Recent errors repeated:


--
Enter the BlackBerry Developer Challenge  
This is your chance to win up to $100,000 in prizes! For a limited time, 
vendors submitting new applications to BlackBerry App World(TM) will have
the opportunity to enter the BlackBerry Developer Challenge. See full prize  
details at: http://p.sf.net/sfu/Challenge
___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


Re: [Emc-developers] Shared memory errors

2009-07-21 Thread Frank Tkalcevic
I think I can partly answer my own questions...

It appears that the important MASTER bit needs to be up and running first.
If I load my component after emc has started, it works.  I'm currently using
the POSTGUI_HALFILE to do this.  Obviously my code wasn't working as I
thought.

Some questions...

Who is the master, and who is responsible for starting him?
I have a usr component, with pins and parameters, that also wants to monitor
the emc statuses.  Is there any notifications that tell me the master is up
and I can connect?  Or should I just keep trying periodically to connect
until successful?

Thanks,
Frank

 -Original Message-
 From: Frank Tkalcevic [mailto:fr...@franksworkshop.com.au] 
 Sent: Tuesday, 21 July 2009 6:50 PM
 To: 'EMC developers'
 Subject: Shared memory errors
 
 I've been writing a component, based on emclcd.cc and 
 shcom.cc.  I think the code was working - it would start up 
 in a halrun, but now it fails to start with nml errors.  
 
 I'm not sure how the shared memory works.  Do I need to 
 allocate a new key(?) for my application?  I just took 
 shcom.cc which uses xemc.
 
 My component is also a usr component.  Can it connect to the 
 share memory buffers?
 
 Can someone point me in the right direction?
 
 This is a snippet of the errors.
 
 
 
 libnml/os_intf/_shm.c 206: shmget(1001(0x3E9),8192,0) failed: 
 (errno = 2): No such file or directory libnml/os_intf/_shm.c 
 225: No shared memory buffer exists for this key and the 
 IPC_CREAT was not given.
 shmctl: Invalid argument
 libnml/cms/cms_cfg.cc 905: cms_config: 
 -4(CMS_NO_MASTER_ERROR: An error occured becouse the master 
 was not started.) Error occured during SHMEM create.
 libnml/nml/nml.cc 368: NML: cms_config returned -1.
 
 **
 * Current Directory = /home/frankt/emc2/config/sim
 *
 **
 * BufferName = emcCommand
 * BufferType = 0
 * ProcessName = xemc
 * Configuration File = emc.nml
 * CMS Status = -4 (CMS_NO_MASTER_ERROR: An error occured 
 becouse the master was not started.)
 * Recent errors repeated:
 NML: cms_config returned -1.
 
 shmget(1001(0x3E9),8192,0) failed: (errno = 2): No such file 
 or directory
 
 No shared memory buffer exists for this key and the IPC_CREAT 
 was not given.
 
 cms_config: -4(CMS_NO_MASTER_ERROR: An error occured becouse 
 the master was not started.) Error occ
 * BufferLine: B emcCommandSHMEM   localhost   
 81920   0   1   16 1001 TCP=5005 xdr
 * ProcessLine: P xemc  emcCommand  LOCAL   
 localhost   W   0   10.00   10
 * Config File = emc.nml
 * error_type = 0 (NML_NO_ERROR)
 
 
 libnml/os_intf/_shm.c 206: shmget(1002(0x3EA),10240,0) 
 failed: (errno = 2): No such file or directory 
 libnml/os_intf/_shm.c 225: No shared memory buffer exists for 
 this key and the IPC_CREAT was not given.
 shmctl: Invalid argument
 libnml/cms/cms_cfg.cc 905: cms_config: 
 -4(CMS_NO_MASTER_ERROR: An error occured becouse the master 
 was not started.) Error occured during SHMEM create.
 libnml/nml/nml.cc 368: NML: cms_config returned -1.
 
 **
 * BufferName = emcStatus
 * BufferType = 0
 * ProcessName = xemc
 * Configuration File = emc.nml
 * CMS Status = -4 (CMS_NO_MASTER_ERROR: An error occured 
 becouse the master was not started.)
 * Recent errors repeated:
 


--
Enter the BlackBerry Developer Challenge  
This is your chance to win up to $100,000 in prizes! For a limited time, 
vendors submitting new applications to BlackBerry App World(TM) will have
the opportunity to enter the BlackBerry Developer Challenge. See full prize  
details at: http://p.sf.net/sfu/Challenge
___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


Re: [Emc-developers] Shared memory errors

2009-07-21 Thread Frank Tkalcevic
For everything you wanted to know about NML but were afraid to ask 

http://www.isd.mel.nist.gov/projects/rcslib/NMLcpp.html



 -Original Message-
 From: Jeff Epler [mailto:jep...@unpythonic.net] 
 Sent: Wednesday, 22 July 2009 8:51 AM
 To: EMC developers
 Subject: Re: [Emc-developers] Shared memory errors
 
 On Wed, Jul 22, 2009 at 08:00:14AM +1000, Frank Tkalcevic wrote:
  I'm having another issue with reading messages from the 
 error channel.
  I've copied the code from shcom.cc where it will do a 
 read() from the 
  error channel.  This is ok for my component, I receive 
 operator error 
  messages, but axis is no longer receiving the messages - 
 I'm guessing 
  there is only one message and I'm taking it.
 
 That's basically right, as far as my understanding goes.
 
  I was thinking I can do a peek() of the message, but how do I stop 
  peek()ing the same message over and over.  Or is there a 
 better way?  
  Or maybe I should ask - how does messaging and channels 
 work?  Is that documented?
 
 No, it's not well documented, and we don't currently have a 
 developer who has expert knowledge of the nml layer.
 
 There seems to be an 'id' field in each of the message types, 
 but it doesn't seem to be a sequence number or anything like that..
 
 Jeff
 
 --
 
 ___
 Emc-developers mailing list
 Emc-developers@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/emc-developers
 


--
___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


Re: [Emc-developers] Shared memory errors

2009-07-21 Thread Frank Tkalcevic
For those that are interested, I found this on the site below in the nml
tutorial document...

For read()
. If a process reads a message from a non-queued buffer:
- the buffer is empty for that process
- other processes will still be able to read the message
. If a process reads a message from a queued buffer:
- that message is removed for all processes
- other processes will not be able to read the message
For peek()
- with respect to other processes, does not affect the buffer in any
way, queued or non-queued
. subsequently, other process write_if_read operations will fail
- with respect to this process:
. for a non-queued buffer, behaves just like a read
. for a queued buffer, subsequent peeks will return no message until
another read operation by any process


Emc.nml has the error buffer defined as queued, which makes sense because
you don't want to lose the error messages, but leaves me in a bit of a
pickle because, although peek() works well, it is a race condition between
me peeking and axis reading.


 

 -Original Message-
 From: Frank Tkalcevic [mailto:fr...@franksworkshop.com.au] 
 Sent: Wednesday, 22 July 2009 1:47 PM
 To: 'EMC developers'
 Subject: RE: [Emc-developers] Shared memory errors
 
 For everything you wanted to know about NML but were afraid 
 to ask 
 
 http://www.isd.mel.nist.gov/projects/rcslib/NMLcpp.html
 
 
 
  -Original Message-
  From: Jeff Epler [mailto:jep...@unpythonic.net]
  Sent: Wednesday, 22 July 2009 8:51 AM
  To: EMC developers
  Subject: Re: [Emc-developers] Shared memory errors
  
  On Wed, Jul 22, 2009 at 08:00:14AM +1000, Frank Tkalcevic wrote:
   I'm having another issue with reading messages from the
  error channel.
   I've copied the code from shcom.cc where it will do a
  read() from the
   error channel.  This is ok for my component, I receive
  operator error
   messages, but axis is no longer receiving the messages -
  I'm guessing
   there is only one message and I'm taking it.
  
  That's basically right, as far as my understanding goes.
  
   I was thinking I can do a peek() of the message, but how 
 do I stop 
   peek()ing the same message over and over.  Or is there a
  better way?  
   Or maybe I should ask - how does messaging and channels
  work?  Is that documented?
  
  No, it's not well documented, and we don't currently have a 
 developer 
  who has expert knowledge of the nml layer.
  
  There seems to be an 'id' field in each of the message 
 types, but it 
  doesn't seem to be a sequence number or anything like that..
  
  Jeff
  
  --
  
  ___
  Emc-developers mailing list
  Emc-developers@lists.sourceforge.net
  https://lists.sourceforge.net/lists/listinfo/emc-developers
  
 


--
___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


Re: [Emc-developers] [ emc-Bugs-2817783 ] G76 inifinite loop

2009-07-06 Thread Frank Tkalcevic
Oops.  I think I did this.  I hit refresh on the bug list in a browser and I
think it added a new one. 

Sorry,
Frank

 -Original Message-
 From: SourceForge.net [mailto:nore...@sourceforge.net] 
 Sent: Tuesday, 7 July 2009 3:11 PM
 To: nore...@sourceforge.net
 Subject: [Emc-developers] [ emc-Bugs-2817783 ] G76 inifinite loop
 
 Bugs item #2817783, was opened at 2009-07-07 05:11 Message 
 generated for change (Tracker Item Submitted) made by nobody 
 You can respond by visiting: 
 https://sourceforge.net/tracker/?func=detailatid=106744aid=2
 817783group_id=6744
 
 Please note that this message will contain a full copy of the 
 comment thread, including the initial issue submission, for 
 this request, not just the latest update.
 Category: GUI - AXIS
 Group: None
 Status: Open
 Resolution: None
 Priority: 5
 Private: No
 Submitted By: Nobody/Anonymous (nobody)
 Assigned to: Chris Radek (cradek)
 Summary: G76 inifinite loop
 
 Initial Comment:
 If I put in an invalid G76 threading command in some gcode, such as...
 
 G76 P1.6 Z0 I-1.6 J0 K1.6 R2 H0 E0 L0
 
 where J, the initial depth of cut, is 0, axis gets stuck in 
 an infinite loop.  Obviously this is wrong because the thread 
 will never finish, but it took me an hour to track this down 
 (bug in my script).  There's a similar result doing this in 
 the MDI.  An error/warning would be nice.
 
 
 --
 
 You can respond by visiting: 
 https://sourceforge.net/tracker/?func=detailatid=106744aid=2
 817783group_id=6744
 
 --
 
 Enter the BlackBerry Developer Challenge  
 This is your chance to win up to $100,000 in prizes! For a 
 limited time, 
 vendors submitting new applications to BlackBerry App 
 World(TM) will have 
 the opportunity to enter the BlackBerry Developer Challenge. 
 See full prize 
 details at: http://p.sf.net/sfu/blackberry
 ___
 Emc-developers mailing list
 Emc-developers@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/emc-developers
 


--
Enter the BlackBerry Developer Challenge  
This is your chance to win up to $100,000 in prizes! For a limited time, 
vendors submitting new applications to BlackBerry App World(TM) will have 
the opportunity to enter the BlackBerry Developer Challenge. See full prize 
details at: http://p.sf.net/sfu/blackberry
___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


Re: [Emc-developers] Axis rewrite - GUI/use cases suggestions

2009-05-25 Thread Frank Tkalcevic
 

On May 25, 2009 04:50:25 pm Frank Tkalcevic wrote:
 My only gripe with QtDesigner is that you need to recompile the code
 afterwards. 





That is not true with python, which is interpreted. Of course, you have to
regenerate the gui's python code with a command such as : pyuic4 -o
axisGui.py axisGui.ui





But it is no big deal, and could even be automatically done. 





 And, in order to add functionality, users need to know how to
 write C++ code. 





That is untrue. Unless you want to create a new widget class, not a single
line of C++ is needed. Would you really need to do so, Qt API is so well
coded that it is a pleasure to code.
  

I'm only just learning Qt, so I'm probably wrong.  I've only played with
C++, but each change to a .ui runs a post processor to generate a .h which
needs to be compiled.  Any change or additional Action requires the
consuming class to add Slots.  Can this be done at runtime?  Or do you
expect all Slots will already be present (a slot for each emc function)?
 
Have you looked at QtScript, the scripting language built into Qt?
 
 
--
Register Now for Creativity and Technology (CaT), June 3rd, NYC. CaT
is a gathering of tech-side developers  brand creativity professionals. Meet
the minds behind Google Creative Lab, Visual Complexity, Processing,  
iPhoneDevCamp asthey present alongside digital heavyweights like Barbarian
Group, R/GA,  Big Spaceship. http://www.creativitycat.com ___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


Re: [Emc-developers] Willing to contribute

2009-05-23 Thread Frank Tkalcevic
My 2 cents...
 
I'm new to emc.  I chose emc for my lathe after using mach for my mill,
mainly for the threading support, but also because it was open source.
 
I was very impressed with the internal architecture of emc, and how easy it
was to build and a configure a system with components, pins and links (I'm a
programmer).  I was expecting the UI to be same, being able to build the UI
by add the visual components that I needed.  Unfortunately, the emc UI isn't
there yet.
 
I'd love to see a mach like interface, where a complete UI can be built by
dragging and dropping components, and linking them with script.  Is this a
lot of work?  Probably, but once the framework is designed and implemented,
anyone can add components.
 
I also like the idea of using an emrsh like layer in the UI - I use X over
the network, so I can code inside the house, not in my cold workshop, but
the updates, especially the 3D, are terribly slow. 
 
At the moment I'm working on a visual pendant configuring application
(configure any USB HID device to be a pendant in emc) so I can use my home
made pendant, and also to learn Qt.  After that I was looking at a visual
Hal configuring application, so I can test out more of Qt's features.   I'm
definitely interested in contributing if you need help.
 
Frank
--
Register Now for Creativity and Technology (CaT), June 3rd, NYC. CaT
is a gathering of tech-side developers  brand creativity professionals. Meet
the minds behind Google Creative Lab, Visual Complexity, Processing,  
iPhoneDevCamp asthey present alongside digital heavyweights like Barbarian
Group, R/GA,  Big Spaceship. http://www.creativitycat.com ___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


[Emc-developers] string type hal pin?

2009-05-20 Thread Frank Tkalcevic
I have a USB device I want to use as a pendant which has an LCD display.
I'm OK with writing the USB code to program it, I'm just unsure how I can
integrate it with emc to provide useful outputs.  

I'm building yet another joystick type hal component.  It works at a lower
level allowing access to all HID items - it should work with the ShuttlePro.
Initially I was thinking my hal component would have a pin that was a string
input, but hal doesn't support that.  Is there another standard way to
communicate strings?  I'm not sure if I need to expose that interface to
other hal components.  My component will live in user space.  Maybe I just
need to be to talk to axis.

Any thoughts?


--
Register Now for Creativity and Technology (CaT), June 3rd, NYC. CaT
is a gathering of tech-side developers  brand creativity professionals. Meet
the minds behind Google Creative Lab, Visual Complexity, Processing,  
iPhoneDevCamp asthey present alongside digital heavyweights like Barbarian
Group, R/GA,  Big Spaceship. http://www.creativitycat.com 
___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers