hal_gremlin has not been updated to work in standalone
applications in the master branch  with joints_axes
updates.

In the work that I did for joints_axes, I modified and tested
an augmented implementation of hal_gremlin (named
hal_gremlin_plus) to work both embedded or standalone.

Example follows:
------------------------------------------------------------------------
$ cd /home/git/linuxcnc-dev # my RIP root directory
$ git branch |grep \*
* master
$ git log --oneline -1 ;# show last commit
5fec8d9 gmoccapy_2_1_6_2 - better solution for the G96 bug
$
$ # test a hal_gremlin_plus/gremlin_view standalone:
$ source scripts/rip-environment
$ linuxcnc configs/sim/axis/axis.ini &
# runs as expected
$ gladevcp configs/sim/gremlin_view.ui
# works for me
------------------------------------------------------------------------

Depending upon your requirements, the augmented
hal_gremlin_plus/gremlin_view may be usable as-is
or adapted with a user-created glade_file.

gremlin_view.py uses a system provided glade_file by default
(gremlin_view.ui) but a custom file can be specified:

$ gremlin_view -h
Usage:   gremlin_view [options]
Options: [-h | --help]
         [-v | --verbose]
         [-W | --width]  width
         [-H | --height] height
         [-f | --file]   glade_file
Note: linuxcnc must be running on same machine

There is some documentation available with pydoc:
$ pydoc lib/python/gremlin_view.py
This documentation lists the required objects and optional
objects for supported radiobuttons and checkbuttons.

------------------------------------------------------------------------
Notes:
1) hal_gremlin_plus.py (gladevcp) and gremlin_view
were introduced in Feb 2013 (and LinuxCNC 2.6):

$ git log --reverse --oneline lib/python/gladevcp/hal_gremlin_plus.py|head -1
7a59b10 pyngcgui,gremlin_view apps and gladevcp widgets
$ git branch --contains 7a59b10|grep 2\.
  2.6
  2.7

2) gremlin_view.ui is also used in a number of sim configs:
$ find configs/sim -iname '*.in[ic]' -exec grep -Hc gremlin_view {} \;|grep -v 
:0$
configs/sim/axis/ngcgui/pyngcgui_axis.ini:1
configs/sim/gscreen/ngcgui/pyngcgui_gscreen_popupkeyboard.ini:1
configs/sim/gscreen/ngcgui/pyngcgui_gscreen.ini:1
configs/sim/touchy/ngcgui/pyngcgui_touchy_gcmc.ini:1
configs/sim/touchy/ngcgui/pyngcgui_touchy_lathe.ini:1
configs/sim/touchy/ngcgui/pyngcgui_touchy.ini:1
configs/sim/touchy/ngcgui/pyngcgui_touchy_moveoff.ini:1

3) bin/gremlin_view can be invoked if LinuxCNC is running as:
$ gremlin_view

4) For joints_axes, glcanondraw needs information about
the kinematics type ([KINS]KINEMATICS) and the coordinates
used ([TRAJ]COORDINATES).  For standalone operation,
gremlin_view.py finds the current inifile and reads the
current inifile to obtain these items.

-- 
Dewey Garrett


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

Reply via email to