Maxime,

Your willingness to contribute is certainly appreciated. My view is that a
new user interface needs a raison d'etre, where such things as simply
reorganizing the code or rewriting it in a modern gui environment would not
seem to meet that test. I can't speak for Axis on a coding level because I
have never bothered to learn Python, but regardless of the quality of the
code, it is by far the most popular user interface used with EMC. It would
also not seem to warrant a complete rewrite just to add a few more features.

OTOH, I can think of a few other types of user interfaces which certainly
could have a raison d'etre. One I would really like to see is a UI
specifically designed for a touch screen. In fact ideally having at least
two layouts. One for the 4x3 format and one for 16x9 format.

If you want to write a UI in Java or other cross platform environment you
might want to consider using the emcrsh interface
(http://wiki.linuxcnc.org/cgi-bin/emcinfo.pl?Emcrsh) which uses plain text
commands over a simple socket (telnet) interface. For implementing stepconf
like or other "advanced" features, you might look into the halrmt interface
(http://wiki.linuxcnc.org/cgi-bin/emcinfo.pl?Halrmt). This is a
complementary interface to emcrsh allowing you to issue any hal command
(except alias, which I have not gotten around to updating) over the same
type of socket interface.

Obviously within the UI, password protection or similar technique can be
used to restrict access to these "dangerous" functions from the general
operator, while making them available to advanced users.

The advantage of these interfaces (emcrsh, halrmt) is that the UI can be run
on almost any platform without having to setup a specific environment like
ssh / Xming, Python, Tk/Tcl, etc. This is certainly an advantage to those
wanting to have a Windows based UI. The UI also then becomes independent of
the specific version of EMC running as well.

The downside is that it cannot maintain the update rate of a strictly local
user interface. The ability to display actual positions against programmed
positions at high resolution is a particularly powerful feature in Axis.

<soap box mode >
Lastly, one area I have wanted addressed, but has pretty much gone over like
a lead balloon in the past, is adding a "universal user interface API". By
universal API, I mean adding a layer between EMC and the user interfaces
which both provides the functions typically needed by user interfaces, while
at the same type providing an interface which remains consistent across
versions of EMC. Ideally any UI should be able to be compiled / interpreted
separate from EMC and work with any version of EMC having this interface.

One thing I recently wanted to do was to implement a generic way of applying
a preprocessor when opening a g-code file. Axis has this feature, but it is
done within Axis. In my view, this should be a feature available universally
to any UI without having to re-implement it in every one.

However, there is no point in pursing this unless the maintainers of the
existing UIs see sufficient advantage to warrant porting them over.
</soap box mode>

Regards,
Eric



I could argue that such a "casual user" could hurt himself in many ways, and
shouldn't be given access to the machine.






I'd rather postpone the stepconf discussion to later, it is not high
priority to me. Which brings us back to :






- AXIS code organization/refactoring
- opinion on the migration to a modern gui toolkit






or






Should I rather start a new gui project and leave axis as it is? Anyone
interested?





------------------------------------------------------------------------------
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

Reply via email to