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
