This video shows Gladevcp running remotely over a network connection, i.e not 
necessarily on the same host as HAL/RT. It implements the HALrcomp protocol 
which I recently outlined, and uses a few HAL extensions for support.

I recorded a bit of clicking and dragging to see how snappy this feels, and 
since the 'one HAL UI only' limitation is gone, here are two remote gladevcp 
instances running in parallel:

  http://www.youtube.com/watch?v=vBynH_5KyPQ&feature=youtu.be

The screen recording looks slower than it actually feels. The LEDs and progress 
bar activity is looped back remotely, i.e. involving HALrcomp interactions.

--

The HALserver is still in Python, ca 300 lines. There were some minor changes 
to gladevcp.py and makepins.py, plus ca 250 lines of Python in hal_glib.py. The 
extra HAL support for remote components is 580 lines of C. The protobuf and 
zeromq components are as distributed.

There are no significant API changes as of yet meaning existing gladevcp 
applications should hopefully run unchanged, or with minor retouches (the need 
for idle handlers should mostly go away).

The EMC widgets are not yet working, this is pending 'remotifying' the linuxcnc 
Python module of which some beginnings are in place.

The protocol document will see some minor clarifications and a clearer 
separation into the two channels (to/from HAL) which are in fact separately 
usable. The implementation still needs to address a few technicalities, like 
firming up dead/live peer detection and startup and tracking of stateful input 
widgets like togglebutton, but that is similar in nature to persistence which 
is already supported, and not a protocol issue per se (you see in the video the 
togglebutton is remotely tracked; the scale isnt - yet).

Since this is event driven and polling happens in a single place, and once for 
each monitored object only (halserver), as expected the UI idle load drops to 
next to nothing. 

So: it's possible, it wont require wholesale changes, it is doable without 
writing gobs of new code, and the stack looks usable.

- Michael

ps: please understand the status of this - the protocol is fresh, the code is 
still warm, and it will take a while until this is shaken out, packaged and 
documented. But I dont see any showstoppers.




------------------------------------------------------------------------------
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=63469471&iu=/4140/ostg.clktrk
_______________________________________________
Emc-developers mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/emc-developers

Reply via email to