diff --git a/configs/apps/gladevcp/class-callback/class_callback.py b/configs/apps/gladevcp/class-callback/class_callback.py
index b0b6c2156d5..1be1e711b9d 100644
--- a/configs/apps/gladevcp/class-callback/class_callback.py
+++ b/configs/apps/gladevcp/class-callback/class_callback.py
@@ -65,7 +65,7 @@ def __init__(self, halcomp,builder,useropts):
self.halcomp = halcomp
self.builder = builder
- self.halcomp.newpin("value", hal.HAL_FLOAT, hal.HAL_OUT)
+ self.halcomp.newpin("value", hal.Type.REAL, hal.Dir.OUT)
self.start = time.time()
self.nhits = 0
self.ticks = 0
diff --git a/configs/by_interface/mesa/hm2-modbus/waveshare-modbus-rtu-relay-d.mbccs b/configs/by_interface/mesa/hm2-modbus/waveshare-modbus-rtu-relay-d.mbccs
index e12e388402b..877180c15f0 100644
--- a/configs/by_interface/mesa/hm2-modbus/waveshare-modbus-rtu-relay-d.mbccs
+++ b/configs/by_interface/mesa/hm2-modbus/waveshare-modbus-rtu-relay-d.mbccs
@@ -41,9 +41,9 @@
diff --git a/configs/by_machine/scorbot-er-3/pyvcp.xml b/configs/by_machine/scorbot-er-3/pyvcp.xml
index efc643fff0a..38af8ea7437 100644
--- a/configs/by_machine/scorbot-er-3/pyvcp.xml
+++ b/configs/by_machine/scorbot-er-3/pyvcp.xml
@@ -2,7 +2,7 @@
-
+
@@ -11,7 +11,7 @@
-
+
@@ -29,7 +29,7 @@
-
+
@@ -48,7 +48,7 @@
-
+
diff --git a/configs/sim/axis/gladevcp/meter_scale.py b/configs/sim/axis/gladevcp/meter_scale.py
index dddd8d95708..f586ba50695 100644
--- a/configs/sim/axis/gladevcp/meter_scale.py
+++ b/configs/sim/axis/gladevcp/meter_scale.py
@@ -14,7 +14,7 @@ def __init__(self, halcomp,builder,useropts):
# hal pin with change callback.
# When the pin's value changes the callback is executed.
- self.max_value = hal_glib.GPin(halcomp.newpin('max-value', hal.HAL_FLOAT, hal.HAL_IN))
+ self.max_value = hal_glib.GPin(halcomp.newpin('max-value', hal.Type.REAL, hal.Dir.IN))
self.max_value.connect('value-changed', self._on_max_value_change)
inifile = linuxcnc.ini(os.getenv("INI_FILE_NAME"))
diff --git a/configs/sim/axis/plasma/plasmac2/lib/conversational.py b/configs/sim/axis/plasma/plasmac2/lib/conversational.py
index 5d340c0e60a..2814b3d774b 100644
--- a/configs/sim/axis/plasma/plasmac2/lib/conversational.py
+++ b/configs/sim/axis/plasma/plasmac2/lib/conversational.py
@@ -373,7 +373,7 @@ def send_pressed(self):
def block_request(self):
# may need to add this halpin for wcs rotation on abort etc.
-# self.convBlockLoaded = self.h.newpin('conv_block_loaded', hal.HAL_BIT, hal.HAL_IN)
+# self.convBlockLoaded = self.h.newpin('conv_block_loaded', hal.Type.BOOL, hal.Dir.IN)
if not self.settingsExited:
if self.previewActive and self.active_shape():
return True
diff --git a/configs/sim/axis/plasma/plasmac2/lib/custom/user_hal.py b/configs/sim/axis/plasma/plasmac2/lib/custom/user_hal.py
index 7798482d467..70e4c7d5c26 100644
--- a/configs/sim/axis/plasma/plasmac2/lib/custom/user_hal.py
+++ b/configs/sim/axis/plasma/plasmac2/lib/custom/user_hal.py
@@ -1,4 +1,4 @@
# CUSTOM HAL PINS, RUNS ONCE AT STARTUP
# example hal pin named my-halpin
-#comp.newpin('my-halpin', hal.HAL_FLOAT, hal.HAL_IN)
+#comp.newpin('my-halpin', hal.Type.REAL, hal.Dir.IN)
diff --git a/configs/sim/axis/plasma/plasmac2/lib/sim/sim_panel.py b/configs/sim/axis/plasma/plasmac2/lib/sim/sim_panel.py
index e759a497fe9..a5ec946f9a7 100755
--- a/configs/sim/axis/plasma/plasmac2/lib/sim/sim_panel.py
+++ b/configs/sim/axis/plasma/plasmac2/lib/sim/sim_panel.py
@@ -133,7 +133,7 @@ def estop_pressed(event):
I = linuxcnc.ini(S.ini_filename)
# create new hal component
H = hal.component('plasmac-sim')
- H.newpin('z-position', hal.HAL_FLOAT, hal.HAL_IN)
+ H.newpin('z-position', hal.Type.REAL, hal.Dir.IN)
H.ready()
# disconnect any conflicting hal pins
if hal.pin_has_writer('db_arc-ok.in'):
diff --git a/configs/sim/axis/plasma/user_hal.py b/configs/sim/axis/plasma/user_hal.py
index a4d708d39b8..8ce00e31a5d 100644
--- a/configs/sim/axis/plasma/user_hal.py
+++ b/configs/sim/axis/plasma/user_hal.py
@@ -2,5 +2,5 @@
# see the file customizing.html for some tips
# example to create a HAL floating point input pin and a HAL bit input pin
-#comp.newpin('my-halfloat', hal.HAL_FLOAT, hal.HAL_IN)
-#comp.newpin('my-halbit', hal.HAL_BIT, hal.HAL_IN)
+#comp.newpin('my-halfloat', hal.Type.REAL, hal.Dir.IN)
+#comp.newpin('my-halbit', hal.Type.BOOL, hal.Dir.IN)
diff --git a/configs/sim/axis/remap/manual-toolchange-with-tool-length-switch/python/gladevcp-handler.py b/configs/sim/axis/remap/manual-toolchange-with-tool-length-switch/python/gladevcp-handler.py
index 29441e50478..6f006bced42 100644
--- a/configs/sim/axis/remap/manual-toolchange-with-tool-length-switch/python/gladevcp-handler.py
+++ b/configs/sim/axis/remap/manual-toolchange-with-tool-length-switch/python/gladevcp-handler.py
@@ -19,7 +19,7 @@ def on_led_change(self,hal_led,data=None):
def __init__(self, halcomp,builder,useropts):
self.halcomp = halcomp
self.change_text = builder.get_object("change-text")
- self.halcomp.newpin("number", hal.HAL_FLOAT, hal.HAL_IN)
+ self.halcomp.newpin("number", hal.Type.REAL, hal.Dir.IN)
def get_handlers(halcomp,builder,useropts):
return [HandlerClass(halcomp,builder,useropts)]
diff --git a/configs/sim/axis/vismach/3axis-tutorial/3axis-tutorial b/configs/sim/axis/vismach/3axis-tutorial/3axis-tutorial
index 2b374b9bd12..1e349eb2947 100755
--- a/configs/sim/axis/vismach/3axis-tutorial/3axis-tutorial
+++ b/configs/sim/axis/vismach/3axis-tutorial/3axis-tutorial
@@ -24,13 +24,13 @@ s.poll()
# in this file, and uncomment last line in HAL file.
# add joints. Mill has 3.
c = hal.component("3axis-tutorial")
-c.newpin("jointX", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("jointY", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("jointZ", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("jointX", hal.Type.REAL, hal.Dir.IN)
+c.newpin("jointY", hal.Type.REAL, hal.Dir.IN)
+c.newpin("jointZ", hal.Type.REAL, hal.Dir.IN)
# tool length and diameter pins?
-c.newpin("toollength", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("tooldiameter", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("toollength", hal.Type.REAL, hal.Dir.IN)
+c.newpin("tooldiameter", hal.Type.REAL, hal.Dir.IN)
# tells loadusr pins is ready
c.ready()
diff --git a/configs/sim/axis/vismach/5axis/bridgemill/5axisgui.py b/configs/sim/axis/vismach/5axis/bridgemill/5axisgui.py
index 40fc0475126..5c70b420ce2 100755
--- a/configs/sim/axis/vismach/5axis/bridgemill/5axisgui.py
+++ b/configs/sim/axis/vismach/5axis/bridgemill/5axisgui.py
@@ -45,14 +45,14 @@ def coords(self):
return -self.comp.tool_length, r, 0, r
c = hal.component("5axisgui")
-c.newpin("jx", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("jy", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("jz", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("jb", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("jc", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("tool_length", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("tool_diam", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("pivot_len", hal.HAL_FLOAT, hal.HAL_OUT)
+c.newpin("jx", hal.Type.REAL, hal.Dir.IN)
+c.newpin("jy", hal.Type.REAL, hal.Dir.IN)
+c.newpin("jz", hal.Type.REAL, hal.Dir.IN)
+c.newpin("jb", hal.Type.REAL, hal.Dir.IN)
+c.newpin("jc", hal.Type.REAL, hal.Dir.IN)
+c.newpin("tool_length", hal.Type.REAL, hal.Dir.IN)
+c.newpin("tool_diam", hal.Type.REAL, hal.Dir.IN)
+c.newpin("pivot_len", hal.Type.REAL, hal.Dir.OUT)
c["pivot_len"] = pivot_len
c.ready()
diff --git a/configs/sim/axis/vismach/5axis/max5/max5gui.py b/configs/sim/axis/vismach/5axis/max5/max5gui.py
index 23c92cf2ef3..8200145565e 100755
--- a/configs/sim/axis/vismach/5axis/max5/max5gui.py
+++ b/configs/sim/axis/vismach/5axis/max5/max5gui.py
@@ -37,18 +37,18 @@ def coords(self):
c = hal.component("max5gui")
# table
-c.newpin("table", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("table", hal.Type.REAL, hal.Dir.IN)
# saddle
-c.newpin("saddle", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("saddle", hal.Type.REAL, hal.Dir.IN)
# head vertical slide
-c.newpin("head", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("head", hal.Type.REAL, hal.Dir.IN)
# head tilt
-c.newpin("tilt", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("tilt", hal.Type.REAL, hal.Dir.IN)
# rotary table
-c.newpin("rotate", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("rotate", hal.Type.REAL, hal.Dir.IN)
-c.newpin("tool-length", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("tool-radius", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("tool-length", hal.Type.REAL, hal.Dir.IN)
+c.newpin("tool-radius", hal.Type.REAL, hal.Dir.IN)
c.ready()
pivot_len=100
diff --git a/configs/sim/axis/vismach/5axis/table-dual-rotary/xyzab-tdr-gui.py b/configs/sim/axis/vismach/5axis/table-dual-rotary/xyzab-tdr-gui.py
index 21f55a2bdd6..2f27c07f8f2 100644
--- a/configs/sim/axis/vismach/5axis/table-dual-rotary/xyzab-tdr-gui.py
+++ b/configs/sim/axis/vismach/5axis/table-dual-rotary/xyzab-tdr-gui.py
@@ -33,26 +33,26 @@
c = hal.component("xyzab-tdr-gui")
# axis-x
-c.newpin("axis-x", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("axis-x", hal.Type.REAL, hal.Dir.IN)
# axis-y
-c.newpin("axis-y", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("axis-y", hal.Type.REAL, hal.Dir.IN)
# axis-z
-c.newpin("axis-z", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("axis-z", hal.Type.REAL, hal.Dir.IN)
# rotary_a
-c.newpin("rotary-a", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("rotary-a", hal.Type.REAL, hal.Dir.IN)
# rotary_b
-c.newpin("rotary-b", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("rotary-b", hal.Type.REAL, hal.Dir.IN)
# geometric offsets between A and B axes
-c.newpin("x_offset", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("z_offset", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("x_offset", hal.Type.REAL, hal.Dir.IN)
+c.newpin("z_offset", hal.Type.REAL, hal.Dir.IN)
# rot-point offsets
-c.newpin("x-rot-point", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("y-rot-point", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("z-rot-point", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("x-rot-point", hal.Type.REAL, hal.Dir.IN)
+c.newpin("y-rot-point", hal.Type.REAL, hal.Dir.IN)
+c.newpin("z-rot-point", hal.Type.REAL, hal.Dir.IN)
# tool-length offset
# tool offsets
-c.newpin("tool_length", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("tool_diameter", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("tool_length", hal.Type.REAL, hal.Dir.IN)
+c.newpin("tool_diameter", hal.Type.REAL, hal.Dir.IN)
c.ready()
# These values are arbitrary and are meant to simulate an absolute
diff --git a/configs/sim/axis/vismach/5axis/table-rotary-tilting/xyzac-trt-gui.py b/configs/sim/axis/vismach/5axis/table-rotary-tilting/xyzac-trt-gui.py
index 98f267355d1..2283299ea80 100755
--- a/configs/sim/axis/vismach/5axis/table-rotary-tilting/xyzac-trt-gui.py
+++ b/configs/sim/axis/vismach/5axis/table-rotary-tilting/xyzac-trt-gui.py
@@ -30,19 +30,19 @@
c = hal.component("xyzac-trt-gui")
# table-x
-c.newpin("table-x", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("table-x", hal.Type.REAL, hal.Dir.IN)
# saddle-y
-c.newpin("saddle-y", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("saddle-y", hal.Type.REAL, hal.Dir.IN)
# head vertical slide
-c.newpin("spindle-z", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("spindle-z", hal.Type.REAL, hal.Dir.IN)
# table-x tilt-b
-c.newpin("tilt-a", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("tilt-a", hal.Type.REAL, hal.Dir.IN)
# rotary table-x
-c.newpin("rotate-c", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("rotate-c", hal.Type.REAL, hal.Dir.IN)
# offsets
-c.newpin("y-offset", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("z-offset", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("tool-offset", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("y-offset", hal.Type.REAL, hal.Dir.IN)
+c.newpin("z-offset", hal.Type.REAL, hal.Dir.IN)
+c.newpin("tool-offset", hal.Type.REAL, hal.Dir.IN)
c.ready()
for setting in sys.argv[1:]: exec(setting)
diff --git a/configs/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt-gui.py b/configs/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt-gui.py
index 5a652511b38..725cdd29fbd 100755
--- a/configs/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt-gui.py
+++ b/configs/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt-gui.py
@@ -30,18 +30,18 @@
c = hal.component("xyzbc-trt-gui")
# table-x
-c.newpin("table-x", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("table-x", hal.Type.REAL, hal.Dir.IN)
# saddle-y
-c.newpin("saddle-y", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("saddle-y", hal.Type.REAL, hal.Dir.IN)
# head vertical slide
-c.newpin("spindle-z", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("spindle-z", hal.Type.REAL, hal.Dir.IN)
# table-x tilt-b
-c.newpin("tilt-b", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("tilt-b", hal.Type.REAL, hal.Dir.IN)
# rotary table-x
-c.newpin("rotate-c", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("z-offset", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("x-offset", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("tool-offset", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("rotate-c", hal.Type.REAL, hal.Dir.IN)
+c.newpin("z-offset", hal.Type.REAL, hal.Dir.IN)
+c.newpin("x-offset", hal.Type.REAL, hal.Dir.IN)
+c.newpin("tool-offset", hal.Type.REAL, hal.Dir.IN)
c.ready()
for setting in sys.argv[1:]: exec(setting)
diff --git a/configs/sim/axis/vismach/5axis/table-rotary_spindle-rotary-nutating/python/twp-helper-comp.py b/configs/sim/axis/vismach/5axis/table-rotary_spindle-rotary-nutating/python/twp-helper-comp.py
index e2139aab13a..44748312c4e 100755
--- a/configs/sim/axis/vismach/5axis/table-rotary_spindle-rotary-nutating/python/twp-helper-comp.py
+++ b/configs/sim/axis/vismach/5axis/table-rotary_spindle-rotary-nutating/python/twp-helper-comp.py
@@ -7,40 +7,40 @@
# this pin reflects the machine.analog pin used for the
# twp-status
-h.newpin("twp-status", hal.HAL_FLOAT, hal.HAL_IN)
+h.newpin("twp-status", hal.Type.REAL, hal.Dir.IN)
# these pins are created here from 'twp-status''
-h.newpin("twp-is-redefined", hal.HAL_BIT, hal.HAL_OUT)
-h.newpin("twp-is-defined", hal.HAL_BIT, hal.HAL_OUT)
-h.newpin("twp-is-active", hal.HAL_BIT, hal.HAL_OUT)
+h.newpin("twp-is-redefined", hal.Type.BOOL, hal.Dir.OUT)
+h.newpin("twp-is-defined", hal.Type.BOOL, hal.Dir.OUT)
+h.newpin("twp-is-active", hal.Type.BOOL, hal.Dir.OUT)
# twp origin vector
-h.newpin("twp-ox-in", hal.HAL_FLOAT, hal.HAL_IN)
-h.newpin("twp-oy-in", hal.HAL_FLOAT, hal.HAL_IN)
-h.newpin("twp-oz-in", hal.HAL_FLOAT, hal.HAL_IN)
-h.newpin("twp-ox", hal.HAL_FLOAT, hal.HAL_OUT)
-h.newpin("twp-oy", hal.HAL_FLOAT, hal.HAL_OUT)
-h.newpin("twp-oz", hal.HAL_FLOAT, hal.HAL_OUT)
+h.newpin("twp-ox-in", hal.Type.REAL, hal.Dir.IN)
+h.newpin("twp-oy-in", hal.Type.REAL, hal.Dir.IN)
+h.newpin("twp-oz-in", hal.Type.REAL, hal.Dir.IN)
+h.newpin("twp-ox", hal.Type.REAL, hal.Dir.OUT)
+h.newpin("twp-oy", hal.Type.REAL, hal.Dir.OUT)
+h.newpin("twp-oz", hal.Type.REAL, hal.Dir.OUT)
# twp x-orientation vector
-h.newpin("twp-xx-in", hal.HAL_FLOAT, hal.HAL_IN)
-h.newpin("twp-xy-in", hal.HAL_FLOAT, hal.HAL_IN)
-h.newpin("twp-xz-in", hal.HAL_FLOAT, hal.HAL_IN)
-h.newpin("twp-xx", hal.HAL_FLOAT, hal.HAL_OUT)
-h.newpin("twp-xy", hal.HAL_FLOAT, hal.HAL_OUT)
-h.newpin("twp-xz", hal.HAL_FLOAT, hal.HAL_OUT)
+h.newpin("twp-xx-in", hal.Type.REAL, hal.Dir.IN)
+h.newpin("twp-xy-in", hal.Type.REAL, hal.Dir.IN)
+h.newpin("twp-xz-in", hal.Type.REAL, hal.Dir.IN)
+h.newpin("twp-xx", hal.Type.REAL, hal.Dir.OUT)
+h.newpin("twp-xy", hal.Type.REAL, hal.Dir.OUT)
+h.newpin("twp-xz", hal.Type.REAL, hal.Dir.OUT)
# twp z-orientation vector
-h.newpin("twp-zx-in", hal.HAL_FLOAT, hal.HAL_IN)
-h.newpin("twp-zy-in", hal.HAL_FLOAT, hal.HAL_IN)
-h.newpin("twp-zz-in", hal.HAL_FLOAT, hal.HAL_IN)
-h.newpin("twp-zx", hal.HAL_FLOAT, hal.HAL_OUT)
-h.newpin("twp-zy", hal.HAL_FLOAT, hal.HAL_OUT)
-h.newpin("twp-zz", hal.HAL_FLOAT, hal.HAL_OUT)
+h.newpin("twp-zx-in", hal.Type.REAL, hal.Dir.IN)
+h.newpin("twp-zy-in", hal.Type.REAL, hal.Dir.IN)
+h.newpin("twp-zz-in", hal.Type.REAL, hal.Dir.IN)
+h.newpin("twp-zx", hal.Type.REAL, hal.Dir.OUT)
+h.newpin("twp-zy", hal.Type.REAL, hal.Dir.OUT)
+h.newpin("twp-zz", hal.Type.REAL, hal.Dir.OUT)
# twp origin vector in machine coordinate system
-h.newpin("twp-ox-world-in", hal.HAL_FLOAT, hal.HAL_IN)
-h.newpin("twp-oy-world-in", hal.HAL_FLOAT, hal.HAL_IN)
-h.newpin("twp-oz-world-in", hal.HAL_FLOAT, hal.HAL_IN)
-h.newpin("twp-ox-world", hal.HAL_FLOAT, hal.HAL_OUT)
-h.newpin("twp-oy-world", hal.HAL_FLOAT, hal.HAL_OUT)
-h.newpin("twp-oz-world", hal.HAL_FLOAT, hal.HAL_OUT)
+h.newpin("twp-ox-world-in", hal.Type.REAL, hal.Dir.IN)
+h.newpin("twp-oy-world-in", hal.Type.REAL, hal.Dir.IN)
+h.newpin("twp-oz-world-in", hal.Type.REAL, hal.Dir.IN)
+h.newpin("twp-ox-world", hal.Type.REAL, hal.Dir.OUT)
+h.newpin("twp-oy-world", hal.Type.REAL, hal.Dir.OUT)
+h.newpin("twp-oz-world", hal.Type.REAL, hal.Dir.OUT)
h.ready()
diff --git a/configs/sim/axis/vismach/5axis/table-rotary_spindle-rotary-nutating/vismach/xyzacb-trsrn-gui.py b/configs/sim/axis/vismach/5axis/table-rotary_spindle-rotary-nutating/vismach/xyzacb-trsrn-gui.py
index 89720d695da..1209d973693 100755
--- a/configs/sim/axis/vismach/5axis/table-rotary_spindle-rotary-nutating/vismach/xyzacb-trsrn-gui.py
+++ b/configs/sim/axis/vismach/5axis/table-rotary_spindle-rotary-nutating/vismach/xyzacb-trsrn-gui.py
@@ -43,61 +43,61 @@
c = hal.component("xyzacb-trsrn-gui")
# axis_x
-c.newpin("axis_x", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("axis_x", hal.Type.REAL, hal.Dir.IN)
# axis_y
-c.newpin("axis_y", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("axis_y", hal.Type.REAL, hal.Dir.IN)
# head vertical slide
-c.newpin("axis_z", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("axis_z", hal.Type.REAL, hal.Dir.IN)
# rotary_a
-c.newpin("rotary_a", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("rotary_a", hal.Type.REAL, hal.Dir.IN)
# rotary_b
-c.newpin("rotary_b", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("rotary_b", hal.Type.REAL, hal.Dir.IN)
# rotary_c
-c.newpin("rotary_c", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("rotary_c", hal.Type.REAL, hal.Dir.IN)
# nutation-angle
-c.newpin("nutation_angle", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("nutation_angle", hal.Type.REAL, hal.Dir.IN)
# tool offsets
-c.newpin("tool_length", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("tool_diameter", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("tool_length", hal.Type.REAL, hal.Dir.IN)
+c.newpin("tool_diameter", hal.Type.REAL, hal.Dir.IN)
# geometric offsets in the spindle-rotary-assembly
-c.newpin("pivot_y", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("pivot_z", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("offset_x", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("offset_y", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("pivot_y", hal.Type.REAL, hal.Dir.IN)
+c.newpin("pivot_z", hal.Type.REAL, hal.Dir.IN)
+c.newpin("offset_x", hal.Type.REAL, hal.Dir.IN)
+c.newpin("offset_y", hal.Type.REAL, hal.Dir.IN)
# rot-point offsets distances from pivot point ( spindle AB)
# to rotation axis ( table C)
-c.newpin("rot_axis_y", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("rot_axis_z", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("rot_axis_y", hal.Type.REAL, hal.Dir.IN)
+c.newpin("rot_axis_z", hal.Type.REAL, hal.Dir.IN)
# selected kinematics
-c.newpin("kinstype_select", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("kinstype_select", hal.Type.REAL, hal.Dir.IN)
# work piece show/hide
-c.newpin("hide_work_piece_1", hal.HAL_BIT, hal.HAL_IN)
+c.newpin("hide_work_piece_1", hal.Type.BOOL, hal.Dir.IN)
# spindle body show/hide
-c.newpin("hide_spindle_body", hal.HAL_BIT, hal.HAL_IN)
+c.newpin("hide_spindle_body", hal.Type.BOOL, hal.Dir.IN)
# work piece show/hide
-c.newpin("hide_somethingelse", hal.HAL_BIT, hal.HAL_IN)
+c.newpin("hide_somethingelse", hal.Type.BOOL, hal.Dir.IN)
# scale coordinate system indicators
-c.newpin("scale_coords", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("scale_coords", hal.Type.REAL, hal.Dir.IN)
# twp pins
-c.newpin("twp_status", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("twp_defined", hal.HAL_BIT, hal.HAL_IN)
-c.newpin("twp_active", hal.HAL_BIT, hal.HAL_IN)
+c.newpin("twp_status", hal.Type.REAL, hal.Dir.IN)
+c.newpin("twp_defined", hal.Type.BOOL, hal.Dir.IN)
+c.newpin("twp_active", hal.Type.BOOL, hal.Dir.IN)
# the origin of the twp plane display needs to be independent of the work offsets
# because those offsets change as the kinematic switches between world and tool
-c.newpin("twp_ox_world", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("twp_oy_world", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("twp_oz_world", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("twp_ox_world", hal.Type.REAL, hal.Dir.IN)
+c.newpin("twp_oy_world", hal.Type.REAL, hal.Dir.IN)
+c.newpin("twp_oz_world", hal.Type.REAL, hal.Dir.IN)
# origin of the twp
-c.newpin("twp_ox", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("twp_oy", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("twp_oz", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("twp_ox", hal.Type.REAL, hal.Dir.IN)
+c.newpin("twp_oy", hal.Type.REAL, hal.Dir.IN)
+c.newpin("twp_oz", hal.Type.REAL, hal.Dir.IN)
# normal vector defining the temporary work plane as set by user with G68.2
-c.newpin("twp_zx", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("twp_zy", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("twp_zz", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("twp_xx", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("twp_xy", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("twp_xz", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("twp_zx", hal.Type.REAL, hal.Dir.IN)
+c.newpin("twp_zy", hal.Type.REAL, hal.Dir.IN)
+c.newpin("twp_zz", hal.Type.REAL, hal.Dir.IN)
+c.newpin("twp_xx", hal.Type.REAL, hal.Dir.IN)
+c.newpin("twp_xy", hal.Type.REAL, hal.Dir.IN)
+c.newpin("twp_xz", hal.Type.REAL, hal.Dir.IN)
c.ready()
diff --git a/configs/sim/axis/vismach/5axis/table-rotary_spindle-rotary-nutating/vismach/xyzbca-trsrn-gui.py b/configs/sim/axis/vismach/5axis/table-rotary_spindle-rotary-nutating/vismach/xyzbca-trsrn-gui.py
index 1c54ddbd1b2..871c0aa6921 100755
--- a/configs/sim/axis/vismach/5axis/table-rotary_spindle-rotary-nutating/vismach/xyzbca-trsrn-gui.py
+++ b/configs/sim/axis/vismach/5axis/table-rotary_spindle-rotary-nutating/vismach/xyzbca-trsrn-gui.py
@@ -42,61 +42,61 @@
c = hal.component("xyzbca-trsrn-gui")
# axis_x
-c.newpin("axis_x", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("axis_x", hal.Type.REAL, hal.Dir.IN)
# axis_y
-c.newpin("axis_y", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("axis_y", hal.Type.REAL, hal.Dir.IN)
# head vertical slide
-c.newpin("axis_z", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("axis_z", hal.Type.REAL, hal.Dir.IN)
# rotary_a
-c.newpin("rotary_a", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("rotary_a", hal.Type.REAL, hal.Dir.IN)
# rotary_b
-c.newpin("rotary_b", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("rotary_b", hal.Type.REAL, hal.Dir.IN)
# rotary_c
-c.newpin("rotary_c", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("rotary_c", hal.Type.REAL, hal.Dir.IN)
# nutation-angle
-c.newpin("nutation_angle", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("nutation_angle", hal.Type.REAL, hal.Dir.IN)
# tool offsets
-c.newpin("tool_length", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("tool_diameter", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("tool_length", hal.Type.REAL, hal.Dir.IN)
+c.newpin("tool_diameter", hal.Type.REAL, hal.Dir.IN)
# geometric offsets in the spindle-rotary-assembly
-c.newpin("pivot_x", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("pivot_z", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("offset_x", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("offset_y", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("pivot_x", hal.Type.REAL, hal.Dir.IN)
+c.newpin("pivot_z", hal.Type.REAL, hal.Dir.IN)
+c.newpin("offset_x", hal.Type.REAL, hal.Dir.IN)
+c.newpin("offset_y", hal.Type.REAL, hal.Dir.IN)
# rot-point offsets distances from pivot point ( spindle AB)
# to rotation axis ( table C)
-c.newpin("rot_axis_x", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("rot_axis_z", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("rot_axis_x", hal.Type.REAL, hal.Dir.IN)
+c.newpin("rot_axis_z", hal.Type.REAL, hal.Dir.IN)
# selected kinematics
-c.newpin("kinstype_select", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("kinstype_select", hal.Type.REAL, hal.Dir.IN)
# work piece show/hide
-c.newpin("hide_work_piece_1", hal.HAL_BIT, hal.HAL_IN)
+c.newpin("hide_work_piece_1", hal.Type.BOOL, hal.Dir.IN)
# spindle body show/hide
-c.newpin("hide_spindle_body", hal.HAL_BIT, hal.HAL_IN)
+c.newpin("hide_spindle_body", hal.Type.BOOL, hal.Dir.IN)
# work piece show/hide
-c.newpin("hide_somethingelse", hal.HAL_BIT, hal.HAL_IN)
+c.newpin("hide_somethingelse", hal.Type.BOOL, hal.Dir.IN)
# scale coordinate system indicators
-c.newpin("scale_coords", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("scale_coords", hal.Type.REAL, hal.Dir.IN)
# twp pins
-c.newpin("twp_status", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("twp_defined", hal.HAL_BIT, hal.HAL_IN)
-c.newpin("twp_active", hal.HAL_BIT, hal.HAL_IN)
+c.newpin("twp_status", hal.Type.REAL, hal.Dir.IN)
+c.newpin("twp_defined", hal.Type.BOOL, hal.Dir.IN)
+c.newpin("twp_active", hal.Type.BOOL, hal.Dir.IN)
# the origin of the twp plane display needs to be independent of the work offsets
# because those offsets change as the kinematic switches between world and tool
-c.newpin("twp_ox_world", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("twp_oy_world", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("twp_oz_world", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("twp_ox_world", hal.Type.REAL, hal.Dir.IN)
+c.newpin("twp_oy_world", hal.Type.REAL, hal.Dir.IN)
+c.newpin("twp_oz_world", hal.Type.REAL, hal.Dir.IN)
# origin of the twp
-c.newpin("twp_ox", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("twp_oy", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("twp_oz", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("twp_ox", hal.Type.REAL, hal.Dir.IN)
+c.newpin("twp_oy", hal.Type.REAL, hal.Dir.IN)
+c.newpin("twp_oz", hal.Type.REAL, hal.Dir.IN)
# normal vector defining the temporary work plane as set by user with G68.2
-c.newpin("twp_zx", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("twp_zy", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("twp_zz", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("twp_xx", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("twp_xy", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("twp_xz", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("twp_zx", hal.Type.REAL, hal.Dir.IN)
+c.newpin("twp_zy", hal.Type.REAL, hal.Dir.IN)
+c.newpin("twp_zz", hal.Type.REAL, hal.Dir.IN)
+c.newpin("twp_xx", hal.Type.REAL, hal.Dir.IN)
+c.newpin("twp_xy", hal.Type.REAL, hal.Dir.IN)
+c.newpin("twp_xz", hal.Type.REAL, hal.Dir.IN)
c.ready()
diff --git a/configs/sim/axis/vismach/VMC_toolchange/vmcgui b/configs/sim/axis/vismach/VMC_toolchange/vmcgui
index 1344cfc1ac1..a471d96e66c 100755
--- a/configs/sim/axis/vismach/VMC_toolchange/vmcgui
+++ b/configs/sim/axis/vismach/VMC_toolchange/vmcgui
@@ -19,14 +19,14 @@ from vismach import *
import hal
c = hal.component("vmcgui")
-c.newpin("X", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("Y", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("Z", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("arm", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("carousel", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("spindle", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("drawbar", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("lock", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("X", hal.Type.REAL, hal.Dir.IN)
+c.newpin("Y", hal.Type.REAL, hal.Dir.IN)
+c.newpin("Z", hal.Type.REAL, hal.Dir.IN)
+c.newpin("arm", hal.Type.REAL, hal.Dir.IN)
+c.newpin("carousel", hal.Type.REAL, hal.Dir.IN)
+c.newpin("spindle", hal.Type.REAL, hal.Dir.IN)
+c.newpin("drawbar", hal.Type.REAL, hal.Dir.IN)
+c.newpin("lock", hal.Type.REAL, hal.Dir.IN)
c.ready()
diff --git a/configs/sim/axis/vismach/delta/lineardelta.py b/configs/sim/axis/vismach/delta/lineardelta.py
index d8116b1a895..82b27967400 100755
--- a/configs/sim/axis/vismach/delta/lineardelta.py
+++ b/configs/sim/axis/vismach/delta/lineardelta.py
@@ -26,12 +26,12 @@
for setting in sys.argv[1:]: exec(setting)
c = hal.component("lineardelta")
-c.newpin("joint0", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint1", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint2", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint3", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("R", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("L", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("joint0", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint1", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint2", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint3", hal.Type.REAL, hal.Dir.IN)
+c.newpin("R", hal.Type.REAL, hal.Dir.IN)
+c.newpin("L", hal.Type.REAL, hal.Dir.IN)
c['R'], c['L'] = lineardeltakins.get_geometry()
c.ready()
diff --git a/configs/sim/axis/vismach/delta/rotarydelta.py b/configs/sim/axis/vismach/delta/rotarydelta.py
index 36d5088f584..b6032be6613 100755
--- a/configs/sim/axis/vismach/delta/rotarydelta.py
+++ b/configs/sim/axis/vismach/delta/rotarydelta.py
@@ -25,13 +25,13 @@
for setting in sys.argv[1:]: exec(setting)
c = hal.component("rotarydelta")
-c.newpin("joint0", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint1", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint2", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("pfr", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("tl", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("sl", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("fr", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("joint0", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint1", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint2", hal.Type.REAL, hal.Dir.IN)
+c.newpin("pfr", hal.Type.REAL, hal.Dir.IN)
+c.newpin("tl", hal.Type.REAL, hal.Dir.IN)
+c.newpin("sl", hal.Type.REAL, hal.Dir.IN)
+c.newpin("fr", hal.Type.REAL, hal.Dir.IN)
c['pfr'], c['tl'], c['sl'], c['fr'] = rotarydeltakins.get_geometry()
c.ready()
diff --git a/configs/sim/axis/vismach/hbm/hbmgui.py b/configs/sim/axis/vismach/hbm/hbmgui.py
index f79862940fa..9d0592d9252 100755
--- a/configs/sim/axis/vismach/hbm/hbmgui.py
+++ b/configs/sim/axis/vismach/hbm/hbmgui.py
@@ -42,13 +42,13 @@ def coords(self):
c = hal.component("hbmgui")
# HAL pins
-c.newpin("table", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("saddle", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("head", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("quill", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("table", hal.Type.REAL, hal.Dir.IN)
+c.newpin("saddle", hal.Type.REAL, hal.Dir.IN)
+c.newpin("head", hal.Type.REAL, hal.Dir.IN)
+c.newpin("quill", hal.Type.REAL, hal.Dir.IN)
-c.newpin("tool-length", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("tool-radius", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("tool-length", hal.Type.REAL, hal.Dir.IN)
+c.newpin("tool-radius", hal.Type.REAL, hal.Dir.IN)
c.ready()
tool_radius=0.5
diff --git a/configs/sim/axis/vismach/hexapod-sim/hexagui.py b/configs/sim/axis/vismach/hexapod-sim/hexagui.py
index 82ce7717fcd..3ab256bff5f 100755
--- a/configs/sim/axis/vismach/hexapod-sim/hexagui.py
+++ b/configs/sim/axis/vismach/hexapod-sim/hexagui.py
@@ -19,20 +19,20 @@
#if(randomize): compname += str(random.randrange(0,10000))
c = hal.component(compname)
#declare hal pins here
-c.newpin("joint.0", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint.1", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint.2", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint.3", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint.4", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint.5", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("joint.0", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint.1", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint.2", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint.3", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint.4", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint.5", hal.Type.REAL, hal.Dir.IN)
#get the tool tip position in cartesian coordinates from emc
#so we dont have to do kinematics
-c.newpin("axis.x", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("axis.y", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("axis.z", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("axis.a", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("axis.b", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("axis.c", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("axis.x", hal.Type.REAL, hal.Dir.IN)
+c.newpin("axis.y", hal.Type.REAL, hal.Dir.IN)
+c.newpin("axis.z", hal.Type.REAL, hal.Dir.IN)
+c.newpin("axis.a", hal.Type.REAL, hal.Dir.IN)
+c.newpin("axis.b", hal.Type.REAL, hal.Dir.IN)
+c.newpin("axis.c", hal.Type.REAL, hal.Dir.IN)
c.ready()
diff --git a/configs/sim/axis/vismach/melfa-sim/melfagui.py b/configs/sim/axis/vismach/melfa-sim/melfagui.py
index 0471a87e287..5bfe568d3dd 100755
--- a/configs/sim/axis/vismach/melfa-sim/melfagui.py
+++ b/configs/sim/axis/vismach/melfa-sim/melfagui.py
@@ -9,15 +9,15 @@
import hal
c = hal.component("melfagui")
-c.newpin("joint1", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint2", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint3", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint4", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint5", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint6", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("lnkdx", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("lnkdz", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("grip", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("joint1", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint2", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint3", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint4", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint5", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint6", hal.Type.REAL, hal.Dir.IN)
+c.newpin("lnkdx", hal.Type.REAL, hal.Dir.IN)
+c.newpin("lnkdz", hal.Type.REAL, hal.Dir.IN)
+c.newpin("grip", hal.Type.REAL, hal.Dir.IN)
c.ready()
diff --git a/configs/sim/axis/vismach/millturn/millturngui.py b/configs/sim/axis/vismach/millturn/millturngui.py
index 865b99f18eb..bed3bd0dd23 100755
--- a/configs/sim/axis/vismach/millturn/millturngui.py
+++ b/configs/sim/axis/vismach/millturn/millturngui.py
@@ -24,18 +24,18 @@
# in this file, and uncomment last line in HAL file.
# add joints. Mill has 3.
c = hal.component("millturngui")
-c.newpin("jointX", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("jointY", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("jointZ", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("jointA", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("jointX", hal.Type.REAL, hal.Dir.IN)
+c.newpin("jointY", hal.Type.REAL, hal.Dir.IN)
+c.newpin("jointZ", hal.Type.REAL, hal.Dir.IN)
+c.newpin("jointA", hal.Type.REAL, hal.Dir.IN)
# kinematics pins
-c.newpin("millkins", hal.HAL_BIT, hal.HAL_IN)
+c.newpin("millkins", hal.Type.BOOL, hal.Dir.IN)
# tool length and diameter pins?
-c.newpin("toollength", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("tooldiameter", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("tool-x-offset", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("toollength", hal.Type.REAL, hal.Dir.IN)
+c.newpin("tooldiameter", hal.Type.REAL, hal.Dir.IN)
+c.newpin("tool-x-offset", hal.Type.REAL, hal.Dir.IN)
# tells loadusr pins is ready
c.ready()
diff --git a/configs/sim/axis/vismach/orphaned models/maho600gui.py b/configs/sim/axis/vismach/orphaned models/maho600gui.py
index 285ee079d49..a94094bc024 100755
--- a/configs/sim/axis/vismach/orphaned models/maho600gui.py
+++ b/configs/sim/axis/vismach/orphaned models/maho600gui.py
@@ -37,19 +37,19 @@ def coords(self):
c = hal.component("maho600gui")
# table
-c.newpin("table", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("table", hal.Type.REAL, hal.Dir.IN)
# full width ways that table rides one
# this assembly moves up and down for Y
-c.newpin("tableway", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("tableway", hal.Type.REAL, hal.Dir.IN)
# head vertical slide
-c.newpin("head", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("head", hal.Type.REAL, hal.Dir.IN)
# head tilt
-c.newpin("arotate", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("arotate", hal.Type.REAL, hal.Dir.IN)
# rotary table
-c.newpin("brotate", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("brotate", hal.Type.REAL, hal.Dir.IN)
-c.newpin("tool-length", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("tool-radius", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("tool-length", hal.Type.REAL, hal.Dir.IN)
+c.newpin("tool-radius", hal.Type.REAL, hal.Dir.IN)
c.ready()
pivot_len=100
diff --git a/configs/sim/axis/vismach/puma/puma560gui.py b/configs/sim/axis/vismach/puma/puma560gui.py
index d07848e914d..bccd2fadcac 100755
--- a/configs/sim/axis/vismach/puma/puma560gui.py
+++ b/configs/sim/axis/vismach/puma/puma560gui.py
@@ -23,13 +23,13 @@
import hal
c = hal.component("puma560gui")
-c.newpin("joint1", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint2", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint3", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint4", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint5", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint6", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("grip", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("joint1", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint2", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint3", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint4", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint5", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint6", hal.Type.REAL, hal.Dir.IN)
+c.newpin("grip", hal.Type.REAL, hal.Dir.IN)
c.ready()
diff --git a/configs/sim/axis/vismach/puma/pumagui.py b/configs/sim/axis/vismach/puma/pumagui.py
index 7ae1d682b91..d43916f21e8 100755
--- a/configs/sim/axis/vismach/puma/pumagui.py
+++ b/configs/sim/axis/vismach/puma/pumagui.py
@@ -45,12 +45,12 @@
import hal
c = hal.component("pumagui")
-c.newpin("joint1", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint2", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint3", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint4", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint5", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint6", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("joint1", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint2", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint3", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint4", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint5", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint6", hal.Type.REAL, hal.Dir.IN)
c.ready()
###################
diff --git a/configs/sim/axis/vismach/scara/scaragui.py b/configs/sim/axis/vismach/scara/scaragui.py
index d9998c4b56a..482bab168b5 100755
--- a/configs/sim/axis/vismach/scara/scaragui.py
+++ b/configs/sim/axis/vismach/scara/scaragui.py
@@ -22,12 +22,12 @@
import sys
c = hal.component("scaragui")
-c.newpin("joint0", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint1", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint2", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint3", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint4", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint5", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("joint0", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint1", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint2", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint3", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint4", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint5", hal.Type.REAL, hal.Dir.IN)
c.ready()
# parameters that define the geometry see scarakins.c for definitions these
diff --git a/configs/sim/gmoccapy/lathe_configs/lathehandler.py b/configs/sim/gmoccapy/lathe_configs/lathehandler.py
index 6e3fcdadb9e..b8ae574d4b0 100755
--- a/configs/sim/gmoccapy/lathe_configs/lathehandler.py
+++ b/configs/sim/gmoccapy/lathe_configs/lathehandler.py
@@ -102,7 +102,7 @@ def __init__(self, halcomp,builder,useropts):
self.ini.restore_state(self)
# A pin to use a physical switch to start the cycle
- self.cycle_start = hal_glib.GPin(halcomp.newpin('cycle-start', hal.HAL_BIT, hal.HAL_IN))
+ self.cycle_start = hal_glib.GPin(halcomp.newpin('cycle-start', hal.Type.BOOL, hal.Dir.IN))
self.cycle_start.connect('value-changed', self.cycle_pin)
# This catches the signal from Touchy to say that the tab is exposed
diff --git a/configs/sim/gmoccapy/non_trivial_kinematics/scara/scaragui.py b/configs/sim/gmoccapy/non_trivial_kinematics/scara/scaragui.py
index d9998c4b56a..482bab168b5 100755
--- a/configs/sim/gmoccapy/non_trivial_kinematics/scara/scaragui.py
+++ b/configs/sim/gmoccapy/non_trivial_kinematics/scara/scaragui.py
@@ -22,12 +22,12 @@
import sys
c = hal.component("scaragui")
-c.newpin("joint0", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint1", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint2", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint3", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint4", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint5", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("joint0", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint1", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint2", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint3", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint4", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint5", hal.Type.REAL, hal.Dir.IN)
c.ready()
# parameters that define the geometry see scarakins.c for definitions these
diff --git a/configs/sim/gmoccapy/non_trivial_kinematics/table-rotary-tilting/xyzac-trt-gui.py b/configs/sim/gmoccapy/non_trivial_kinematics/table-rotary-tilting/xyzac-trt-gui.py
index 98f267355d1..2283299ea80 100755
--- a/configs/sim/gmoccapy/non_trivial_kinematics/table-rotary-tilting/xyzac-trt-gui.py
+++ b/configs/sim/gmoccapy/non_trivial_kinematics/table-rotary-tilting/xyzac-trt-gui.py
@@ -30,19 +30,19 @@
c = hal.component("xyzac-trt-gui")
# table-x
-c.newpin("table-x", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("table-x", hal.Type.REAL, hal.Dir.IN)
# saddle-y
-c.newpin("saddle-y", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("saddle-y", hal.Type.REAL, hal.Dir.IN)
# head vertical slide
-c.newpin("spindle-z", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("spindle-z", hal.Type.REAL, hal.Dir.IN)
# table-x tilt-b
-c.newpin("tilt-a", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("tilt-a", hal.Type.REAL, hal.Dir.IN)
# rotary table-x
-c.newpin("rotate-c", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("rotate-c", hal.Type.REAL, hal.Dir.IN)
# offsets
-c.newpin("y-offset", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("z-offset", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("tool-offset", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("y-offset", hal.Type.REAL, hal.Dir.IN)
+c.newpin("z-offset", hal.Type.REAL, hal.Dir.IN)
+c.newpin("tool-offset", hal.Type.REAL, hal.Dir.IN)
c.ready()
for setting in sys.argv[1:]: exec(setting)
diff --git a/configs/sim/gmoccapy/plasma_config/plasma.py b/configs/sim/gmoccapy/plasma_config/plasma.py
index 1b798492367..a213d71388d 100644
--- a/configs/sim/gmoccapy/plasma_config/plasma.py
+++ b/configs/sim/gmoccapy/plasma_config/plasma.py
@@ -94,12 +94,12 @@ def __init__(self, halcomp, builder, useropts):
self.ini.restore_state(self)
# lets make our pins
- self.THC_speed = hal_glib.GPin(halcomp.newpin("THC-Speed", hal.HAL_FLOAT, hal.HAL_OUT))
- self.cut_gap = hal_glib.GPin(halcomp.newpin("Cut-Gap", hal.HAL_FLOAT, hal.HAL_OUT))
- self.g0_gap = hal_glib.GPin(halcomp.newpin("G0-Gap", hal.HAL_FLOAT, hal.HAL_OUT))
- self.pierce_deley = hal_glib.GPin(halcomp.newpin("Pierce-Delay", hal.HAL_FLOAT, hal.HAL_OUT))
- self.pierce_gap = hal_glib.GPin(halcomp.newpin("Pierce-Gap", hal.HAL_FLOAT, hal.HAL_OUT))
- self.target_voltage = hal_glib.GPin(halcomp.newpin("Target-Voltage", hal.HAL_FLOAT, hal.HAL_OUT))
+ self.THC_speed = hal_glib.GPin(halcomp.newpin("THC-Speed", hal.Type.REAL, hal.Dir.OUT))
+ self.cut_gap = hal_glib.GPin(halcomp.newpin("Cut-Gap", hal.Type.REAL, hal.Dir.OUT))
+ self.g0_gap = hal_glib.GPin(halcomp.newpin("G0-Gap", hal.Type.REAL, hal.Dir.OUT))
+ self.pierce_deley = hal_glib.GPin(halcomp.newpin("Pierce-Delay", hal.Type.REAL, hal.Dir.OUT))
+ self.pierce_gap = hal_glib.GPin(halcomp.newpin("Pierce-Gap", hal.Type.REAL, hal.Dir.OUT))
+ self.target_voltage = hal_glib.GPin(halcomp.newpin("Target-Voltage", hal.Type.REAL, hal.Dir.OUT))
# get all widgets and connect them
self.lbl_prog_volt = self.builder.get_object("lbl_prog_volt")
diff --git a/configs/sim/pyvcp_demo.xml b/configs/sim/pyvcp_demo.xml
index 4b986647a7a..561531e3707 100644
--- a/configs/sim/pyvcp_demo.xml
+++ b/configs/sim/pyvcp_demo.xml
@@ -6,7 +6,7 @@
-
+
@@ -15,7 +15,7 @@
-
+
@@ -33,7 +33,7 @@
-
+
@@ -52,7 +52,7 @@
-
+
diff --git a/configs/sim/qtvcp_screens/qtvcp_experimental/lathehandler.py b/configs/sim/qtvcp_screens/qtvcp_experimental/lathehandler.py
index 3533b4b167b..4997894099e 100644
--- a/configs/sim/qtvcp_screens/qtvcp_experimental/lathehandler.py
+++ b/configs/sim/qtvcp_screens/qtvcp_experimental/lathehandler.py
@@ -88,11 +88,11 @@ def __init__(self, halcomp,builder,useropts):
self.ini.restore_state(self)
# A pin to use a physical switch to start the cycle
- self.cycle_start = hal_glib.GPin(halcomp.newpin('cycle-start', hal.HAL_BIT, hal.HAL_IN))
+ self.cycle_start = hal_glib.GPin(halcomp.newpin('cycle-start', hal.Type.BOOL, hal.Dir.IN))
self.cycle_start.connect('value-changed', self.cycle_pin)
# A pin to mask cycle-start so that Touchy doesn't run auto.
- self.visible = hal_glib.GPin(halcomp.newpin('visible', hal.HAL_BIT, hal.HAL_OUT))
+ self.visible = hal_glib.GPin(halcomp.newpin('visible', hal.Type.BOOL, hal.Dir.OUT))
# This catches the signal from Touchy to say that the tab is exposed
t = self.builder.get_object('eventbox1')
diff --git a/debian/tests/linuxcnc-test-ui.py b/debian/tests/linuxcnc-test-ui.py
index 57e3871c667..c08d729ffd4 100755
--- a/debian/tests/linuxcnc-test-ui.py
+++ b/debian/tests/linuxcnc-test-ui.py
@@ -21,10 +21,10 @@
# Create and connect test feedback comp
#
h = hal.component("test-ui")
-h.newpin("Xpos", hal.HAL_FLOAT, hal.HAL_IN)
-h.newpin("Ypos", hal.HAL_FLOAT, hal.HAL_IN)
-h.newpin("Zpos", hal.HAL_FLOAT, hal.HAL_IN)
-h.newpin("counter", hal.HAL_FLOAT, hal.HAL_IN)
+h.newpin("Xpos", hal.Type.REAL, hal.Dir.IN)
+h.newpin("Ypos", hal.Type.REAL, hal.Dir.IN)
+h.newpin("Zpos", hal.Type.REAL, hal.Dir.IN)
+h.newpin("counter", hal.Type.REAL, hal.Dir.IN)
h.ready()
os.system("halcmd source ./linuxcnc-test.hal")
diff --git a/docs/src/gui/axis.adoc b/docs/src/gui/axis.adoc
index 229f7cc1f27..8d1005594d5 100644
--- a/docs/src/gui/axis.adoc
+++ b/docs/src/gui/axis.adoc
@@ -1197,7 +1197,7 @@ commands.set_view_z()
[source,python]
----
def user_hal_pins():
- comp.newpin('my-new-in-pin', hal.HAL_BIT, hal.HAL_IN)
+ comp.newpin('my-new-in-pin', hal.Type.BOOL, hal.Dir.IN)
comp.ready()
----
@@ -1208,13 +1208,13 @@ def user_hal_pins():
# create a component
mycomp = hal.component('my_component')
-mycomp.newpin('idle-led',hal.HAL_BIT,hal.HAL_IN)
-mycomp.newpin('pause-led',hal.HAL_BIT,hal.HAL_IN)
+mycomp.newpin('idle-led', hal.Type.BOOL, hal.Dir.IN)
+mycomp.newpin('pause-led', hal.Type.BOOL, hal.Dir.IN)
mycomp.ready()
# connect pins
-hal.new_sig('idle-led',hal.HAL_BIT)
+hal.new_sig('idle-led', hal.Type.BOOL)
hal.connect('halui.program.is-idle','idle-led')
hal.connect('my_component.idle-led','idle-led')
diff --git a/docs/src/gui/gladevcp.adoc b/docs/src/gui/gladevcp.adoc
index b6a085afd49..9ed0faf49d8 100644
--- a/docs/src/gui/gladevcp.adoc
+++ b/docs/src/gui/gladevcp.adoc
@@ -2618,7 +2618,7 @@ If you need HAL pins which are not associated with a specific HAL widget, add th
import hal_glib
...
# in your handler class __init__():
-self.example_trigger = hal_glib.GPin(halcomp.newpin('example-trigger', hal.HAL_BIT, hal.HAL_IN))
+self.example_trigger = hal_glib.GPin(halcomp.newpin('example-trigger', hal.Type.BOOL, hal.Dir.IN))
----
To get a callback when this pin's value changes, associate a `value-change` callback with this pin, add:
@@ -2681,7 +2681,7 @@ class HandlerClass:
# HAL pin with change callback.
# When the pin's value changes the callback is executed.
- self.max_value = hal_glib.GPin(halcomp.newpin('max-value', hal.HAL_FLOAT, hal.HAL_IN))
+ self.max_value = hal_glib.GPin(halcomp.newpin('max-value', hal.Type.REAL, hal.Dir.IN))
self.max_value.connect('value-changed', self._on_max_value_change)
inifile = linuxcnc.ini(os.getenv("INI_FILE_NAME"))
@@ -2713,7 +2713,7 @@ Then make a pin and connect a 'value-changed' (the watcher) signal to a function
----
class HandlerClass:
def __init__(self, halcomp,builder,useropts):
- self.example_trigger = hal_glib.GPin(halcomp.newpin('example-trigger', hal.HAL_BIT, hal.HAL_IN))
+ self.example_trigger = hal_glib.GPin(halcomp.newpin('example-trigger', hal.Type.BOOL, hal.Dir.IN))
self.example_trigger.connect('value-changed', self._on_example_trigger_change)
----
diff --git a/docs/src/gui/gstat.adoc b/docs/src/gui/gstat.adoc
index 11b558d0193..c4455ec6aaa 100644
--- a/docs/src/gui/gstat.adoc
+++ b/docs/src/gui/gstat.adoc
@@ -68,8 +68,8 @@ def mode_changed(obj, data):
# Make a component and pins
h = hal.component("metric_status")
-h.newpin("g20", hal.HAL_BIT, hal.HAL_OUT)
-h.newpin("g21", hal.HAL_BIT, hal.HAL_OUT)
+h.newpin("g20", hal.Type.BOOL, hal.Dir.OUT)
+h.newpin("g21", hal.Type.BOOL, hal.Dir.OUT)
h.ready()
# connect a GSTAT message to a callback function
diff --git a/docs/src/gui/qtvcp-code-snippets.adoc b/docs/src/gui/qtvcp-code-snippets.adoc
index 814d71e0627..9ffd6ae9d9b 100644
--- a/docs/src/gui/qtvcp-code-snippets.adoc
+++ b/docs/src/gui/qtvcp-code-snippets.adoc
@@ -287,7 +287,7 @@ Under the `initialized__` function, make sure there is an entry similar to this:
# the widgets are instantiated.
# the HAL pins are built but HAL is not set ready
def initialized__(self):
- self.pin_cycle_start_in = QHAL.newPin('cycle-start-in',QHAL.HAL_BIT, QHAL.HAL_IN)
+ self.pin_cycle_start_in = QHAL.newPin('cycle-start-in',QHAL.HAL_BOOL, QHAL.HAL_IN)
self.pin_cycle_start_in.pinValueChanged.connect(lambda o,s: self.cycleStart(s))
----
diff --git a/docs/src/gui/qtvcp.adoc b/docs/src/gui/qtvcp.adoc
index b1ce272a0f2..751745eeb4e 100644
--- a/docs/src/gui/qtvcp.adoc
+++ b/docs/src/gui/qtvcp.adoc
@@ -267,10 +267,10 @@ class UserHandlerClass(HandlerClass):
super().init_pins()
# add jog pins X axis
- pin = QHAL.newpin("jog.axis.jog-x-plus", QHAL.HAL_BIT, QHAL.HAL_IN)
+ pin = QHAL.newpin("jog.axis.jog-x-plus", QHAL.HAL_BOOL, QHAL.HAL_IN)
pin.value_changed.connect(lambda s: self.kb_jog(s, 0, 1, fast = False, linear = True))
- pin = QHAL.newpin("jog.axis.jog-x-minus", QHAL.HAL_BIT, QHAL.HAL_IN)
+ pin = QHAL.newpin("jog.axis.jog-x-minus", QHAL.HAL_BOOL, QHAL.HAL_IN)
pin.value_changed.connect(lambda s: self.kb_jog(s, 0, -1, fast = False, linear = True))
----
@@ -379,7 +379,7 @@ def new_pin_changed(data):
# Here we used the function to add a bit input pin with a callback.
def after_override__(self):
try:
- pin = hdlr.QHAL.newpin("new_pin", hdlr.QHAL.HAL_BIT, hdlr.QHAL.HAL_IN)
+ pin = hdlr.QHAL.newpin("new_pin", hdlr.QHAL.HAL_BOOL, hdlr.QHAL.HAL_IN)
pin.value_changed.connect(new_pin_changed)
except Exception as e:
print(e)
diff --git a/docs/src/gui/vismach.adoc b/docs/src/gui/vismach.adoc
index 559e59d16f0..f67066b08a7 100644
--- a/docs/src/gui/vismach.adoc
+++ b/docs/src/gui/vismach.adoc
@@ -58,8 +58,8 @@ the Vismach model.
[source,python]
----
c = hal.component("samplegui")
-c.newpin("joint0", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint1", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("joint0", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint1", hal.Type.REAL, hal.Dir.IN)
c.ready()
----
@@ -285,7 +285,7 @@ from vismach import *
import hal
#create the HAL component and pins
comp = hal.component("compname")
-comp.newpin("pin_name", hal.HAL_FLOAT, hal.HAL_IN)
+comp.newpin("pin_name", hal.Type.REAL, hal.Dir.IN)
...
#create the floor, tool and work
floor = Box(-50, -50, -3, 50, 50, 0)
diff --git a/lib/python/gladevcp/builtin-panels/gtk_little_probe/gtk_little_probe.py b/lib/python/gladevcp/builtin-panels/gtk_little_probe/gtk_little_probe.py
index 918d63a08b2..7f790cf2d7b 100644
--- a/lib/python/gladevcp/builtin-panels/gtk_little_probe/gtk_little_probe.py
+++ b/lib/python/gladevcp/builtin-panels/gtk_little_probe/gtk_little_probe.py
@@ -149,27 +149,27 @@ def __init__(self, halcomp,builder,useropts):
self.halcomp = hal.component("probe")
- self.halcomp.newpin( "ps_searchvel", hal.HAL_FLOAT, hal.HAL_OUT )
- self.halcomp.newpin( "ps_probevel", hal.HAL_FLOAT, hal.HAL_OUT )
- self.halcomp.newpin( "ps_z_clearance", hal.HAL_FLOAT, hal.HAL_OUT )
- self.halcomp.newpin( "ps_probe_max", hal.HAL_FLOAT, hal.HAL_OUT )
- self.halcomp.newpin( "ps_probe_latch", hal.HAL_FLOAT, hal.HAL_OUT )
- self.halcomp.newpin( "ps_probe_diam", hal.HAL_FLOAT, hal.HAL_OUT )
- self.halcomp.newpin( "ps_xy_clearance", hal.HAL_FLOAT, hal.HAL_OUT )
- self.halcomp.newpin( "ps_edge_lenght", hal.HAL_FLOAT, hal.HAL_OUT )
- self.halcomp.newpin( "ps_offs_x", hal.HAL_FLOAT, hal.HAL_OUT )
- self.halcomp.newpin( "ps_offs_y", hal.HAL_FLOAT, hal.HAL_OUT )
- self.halcomp.newpin( "ps_offs_z", hal.HAL_FLOAT, hal.HAL_OUT )
- self.halcomp.newpin( "ps_offs_angle", hal.HAL_FLOAT, hal.HAL_OUT )
- self.halcomp.newpin( "set_zero", hal.HAL_BIT, hal.HAL_OUT )
+ self.halcomp.newpin( "ps_searchvel", hal.Type.REAL, hal.Dir.OUT )
+ self.halcomp.newpin( "ps_probevel", hal.Type.REAL, hal.Dir.OUT )
+ self.halcomp.newpin( "ps_z_clearance", hal.Type.REAL, hal.Dir.OUT )
+ self.halcomp.newpin( "ps_probe_max", hal.Type.REAL, hal.Dir.OUT )
+ self.halcomp.newpin( "ps_probe_latch", hal.Type.REAL, hal.Dir.OUT )
+ self.halcomp.newpin( "ps_probe_diam", hal.Type.REAL, hal.Dir.OUT )
+ self.halcomp.newpin( "ps_xy_clearance", hal.Type.REAL, hal.Dir.OUT )
+ self.halcomp.newpin( "ps_edge_lenght", hal.Type.REAL, hal.Dir.OUT )
+ self.halcomp.newpin( "ps_offs_x", hal.Type.REAL, hal.Dir.OUT )
+ self.halcomp.newpin( "ps_offs_y", hal.Type.REAL, hal.Dir.OUT )
+ self.halcomp.newpin( "ps_offs_z", hal.Type.REAL, hal.Dir.OUT )
+ self.halcomp.newpin( "ps_offs_angle", hal.Type.REAL, hal.Dir.OUT )
+ self.halcomp.newpin( "set_zero", hal.Type.BOOL, hal.Dir.OUT )
if self.chk_set_zero.get_active():
self.halcomp["set_zero"] = True
self.hal_led_set_zero.hal_pin.set(1)
- self.halcomp.newpin( "auto_rott", hal.HAL_BIT, hal.HAL_OUT )
+ self.halcomp.newpin( "auto_rott", hal.Type.BOOL, hal.Dir.OUT )
if self.chk_auto_rott.get_active():
self.halcomp["auto_rott"] = True
self.hal_led_auto_rott.hal_pin.set(1)
- self.halcomp.newpin( "ps_error", hal.HAL_FLOAT, hal.HAL_OUT )
+ self.halcomp.newpin( "ps_error", hal.Type.REAL, hal.Dir.OUT )
self.spbtn1_search_vel.set_value( self.prefs.getpref( "ps_searchvel", 300.0, float ) )
self.spbtn1_probe_vel.set_value( self.prefs.getpref( "ps_probevel", 10.0, float ) )
self.spbtn1_z_clearance.set_value( self.prefs.getpref( "ps_z_clearance", 3.0, float ) )
diff --git a/lib/python/gladevcp/builtin-panels/gtk_verser_probe/gtk_verser_probe.py b/lib/python/gladevcp/builtin-panels/gtk_verser_probe/gtk_verser_probe.py
index ff3bfdf9700..b538e0b26d2 100644
--- a/lib/python/gladevcp/builtin-panels/gtk_verser_probe/gtk_verser_probe.py
+++ b/lib/python/gladevcp/builtin-panels/gtk_verser_probe/gtk_verser_probe.py
@@ -151,27 +151,27 @@ def __init__(self, halcomp,builder,useropts):
self.halcomp = hal.component("probe")
- self.halcomp.newpin( "ps_searchvel", hal.HAL_FLOAT, hal.HAL_OUT )
- self.halcomp.newpin( "ps_probevel", hal.HAL_FLOAT, hal.HAL_OUT )
- self.halcomp.newpin( "ps_z_clearance", hal.HAL_FLOAT, hal.HAL_OUT )
- self.halcomp.newpin( "ps_probe_max", hal.HAL_FLOAT, hal.HAL_OUT )
- self.halcomp.newpin( "ps_probe_latch", hal.HAL_FLOAT, hal.HAL_OUT )
- self.halcomp.newpin( "ps_probe_diam", hal.HAL_FLOAT, hal.HAL_OUT )
- self.halcomp.newpin( "ps_xy_clearance", hal.HAL_FLOAT, hal.HAL_OUT )
- self.halcomp.newpin( "ps_edge_lenght", hal.HAL_FLOAT, hal.HAL_OUT )
- self.halcomp.newpin( "ps_offs_x", hal.HAL_FLOAT, hal.HAL_OUT )
- self.halcomp.newpin( "ps_offs_y", hal.HAL_FLOAT, hal.HAL_OUT )
- self.halcomp.newpin( "ps_offs_z", hal.HAL_FLOAT, hal.HAL_OUT )
- self.halcomp.newpin( "ps_offs_angle", hal.HAL_FLOAT, hal.HAL_OUT )
- self.halcomp.newpin( "set_zero", hal.HAL_BIT, hal.HAL_OUT )
+ self.halcomp.newpin( "ps_searchvel", hal.Type.REAL, hal.Dir.OUT )
+ self.halcomp.newpin( "ps_probevel", hal.Type.REAL, hal.Dir.OUT )
+ self.halcomp.newpin( "ps_z_clearance", hal.Type.REAL, hal.Dir.OUT )
+ self.halcomp.newpin( "ps_probe_max", hal.Type.REAL, hal.Dir.OUT )
+ self.halcomp.newpin( "ps_probe_latch", hal.Type.REAL, hal.Dir.OUT )
+ self.halcomp.newpin( "ps_probe_diam", hal.Type.REAL, hal.Dir.OUT )
+ self.halcomp.newpin( "ps_xy_clearance", hal.Type.REAL, hal.Dir.OUT )
+ self.halcomp.newpin( "ps_edge_lenght", hal.Type.REAL, hal.Dir.OUT )
+ self.halcomp.newpin( "ps_offs_x", hal.Type.REAL, hal.Dir.OUT )
+ self.halcomp.newpin( "ps_offs_y", hal.Type.REAL, hal.Dir.OUT )
+ self.halcomp.newpin( "ps_offs_z", hal.Type.REAL, hal.Dir.OUT )
+ self.halcomp.newpin( "ps_offs_angle", hal.Type.REAL, hal.Dir.OUT )
+ self.halcomp.newpin( "set_zero", hal.Type.BOOL, hal.Dir.OUT )
if self.chk_set_zero.get_active():
self.halcomp["set_zero"] = True
self.hal_led_set_zero.hal_pin.set(1)
- self.halcomp.newpin( "auto_rott", hal.HAL_BIT, hal.HAL_OUT )
+ self.halcomp.newpin( "auto_rott", hal.Type.BOOL, hal.Dir.OUT )
if self.chk_auto_rott.get_active():
self.halcomp["auto_rott"] = True
self.hal_led_auto_rott.hal_pin.set(1)
- self.halcomp.newpin( "ps_error", hal.HAL_FLOAT, hal.HAL_OUT )
+ self.halcomp.newpin( "ps_error", hal.Type.REAL, hal.Dir.OUT )
self.spbtn1_search_vel.set_value( self.prefs.getpref( "ps_searchvel", 300.0, float ) )
self.spbtn1_probe_vel.set_value( self.prefs.getpref( "ps_probevel", 10.0, float ) )
self.spbtn1_z_clearance.set_value( self.prefs.getpref( "ps_z_clearance", 3.0, float ) )
diff --git a/lib/python/gladevcp/core.py b/lib/python/gladevcp/core.py
index fd34bda79c4..260112051a0 100644
--- a/lib/python/gladevcp/core.py
+++ b/lib/python/gladevcp/core.py
@@ -5,7 +5,6 @@
from gi.repository import GObject
import inspect
-import _hal
import hal
import traceback
diff --git a/lib/python/gladevcp/hal_bar.py b/lib/python/gladevcp/hal_bar.py
index db83c789f15..2040e4efc89 100644
--- a/lib/python/gladevcp/hal_bar.py
+++ b/lib/python/gladevcp/hal_bar.py
@@ -221,7 +221,7 @@ def get_value_diff(self, value):
def _hal_init(self):
_HalWidgetBase._hal_init(self)
- self.hal_pin = self.hal.newpin(self.hal_name, hal.HAL_FLOAT, hal.HAL_IN)
+ self.hal_pin = self.hal.newpin(self.hal_name, hal.Type.REAL, hal.Dir.IN)
self.hal_pin.connect('value-changed', lambda p: self.set_value(p.value))
self.hal_pin.connect('value-changed', lambda s: self.emit('hal-pin-changed', s))
diff --git a/lib/python/gladevcp/hal_graph.py b/lib/python/gladevcp/hal_graph.py
index 70eab5f2812..661f4afacc4 100644
--- a/lib/python/gladevcp/hal_graph.py
+++ b/lib/python/gladevcp/hal_graph.py
@@ -111,7 +111,7 @@ def __init__(self):
def _hal_init(self):
_HalWidgetBase._hal_init(self)
- self.hal_pin = self.hal.newpin(self.hal_name, hal.HAL_FLOAT, hal.HAL_IN)
+ self.hal_pin = self.hal.newpin(self.hal_name, hal.Type.REAL, hal.Dir.IN)
def tick_poll(self, idx):
if self.tick_idx != idx:
diff --git a/lib/python/gladevcp/hal_lightbutton.py b/lib/python/gladevcp/hal_lightbutton.py
index b83ddff4087..f9ede93e68d 100644
--- a/lib/python/gladevcp/hal_lightbutton.py
+++ b/lib/python/gladevcp/hal_lightbutton.py
@@ -375,16 +375,16 @@ def _hal_init(self):
self.set_active(False)
if (self.button_halio_pin):
- self.button_pin = self.hal.newpin(self.hal_name+'-button', hal.HAL_BIT, hal.HAL_IO)
+ self.button_pin = self.hal.newpin(self.hal_name+'-button', hal.Type.BOOL, hal.Dir.IO)
self.button_pin.connect('value-changed', self.button_pin_update)
else:
- self.button_pin = self.hal.newpin(self.hal_name+'-button', hal.HAL_BIT, hal.HAL_OUT)
- self.button_pin_not = self.hal.newpin(self.hal_name+'-button-not', hal.HAL_BIT, hal.HAL_OUT)
+ self.button_pin = self.hal.newpin(self.hal_name+'-button', hal.Type.BOOL, hal.Dir.OUT)
+ self.button_pin_not = self.hal.newpin(self.hal_name+'-button-not', hal.Type.BOOL, hal.Dir.OUT)
if (self.create_enable_pin):
- self.enable_pin = self.hal.newpin(self.hal_name+'-enable', hal.HAL_BIT, hal.HAL_IN)
+ self.enable_pin = self.hal.newpin(self.hal_name+'-enable', hal.Type.BOOL, hal.Dir.IN)
self.enable_pin.connect('value-changed', self.enable_pin_update)
- self.light_pin = self.hal.newpin(self.hal_name+'-light', hal.HAL_BIT, hal.HAL_IN)
+ self.light_pin = self.hal.newpin(self.hal_name+'-light', hal.Type.BOOL, hal.Dir.IN)
self.light_pin.connect('value-changed', self.light_pin_update)
def button_pin_update(self, hal_pin, data=None):
diff --git a/lib/python/gladevcp/hal_meter.py b/lib/python/gladevcp/hal_meter.py
index 017743fc163..8744058a6c6 100644
--- a/lib/python/gladevcp/hal_meter.py
+++ b/lib/python/gladevcp/hal_meter.py
@@ -87,7 +87,7 @@ def __init__(self):
def _hal_init(self):
_HalWidgetBase._hal_init(self)
- self.hal_pin = self.hal.newpin(self.hal_name, hal.HAL_FLOAT, hal.HAL_IN)
+ self.hal_pin = self.hal.newpin(self.hal_name, hal.Type.REAL, hal.Dir.IN)
self.hal_pin.connect('value-changed', lambda p: self.set_value(p.value))
self.hal_pin.connect('value-changed', lambda s: self.emit('hal-pin-changed', s))
diff --git a/lib/python/gladevcp/jogwheel.py b/lib/python/gladevcp/jogwheel.py
index 1b762226bb3..e1ccebc5679 100644
--- a/lib/python/gladevcp/jogwheel.py
+++ b/lib/python/gladevcp/jogwheel.py
@@ -96,7 +96,7 @@ def __init__(self, size = 200, cpr = 40):
# init the hal pin management
def _hal_init(self):
_HalJogWheelBase._hal_init(self)
- self.hal_pin_scale = self.hal.newpin(self.hal_name+".scale", hal.HAL_FLOAT, hal.HAL_IN)
+ self.hal_pin_scale = self.hal.newpin(self.hal_name+".scale", hal.Type.REAL, hal.Dir.IN)
self.hal_pin_scale.set(1.0)
# This function is called from hal_widgets.py
diff --git a/lib/python/gladevcp/speedcontrol.py b/lib/python/gladevcp/speedcontrol.py
index 332f025ab0d..61db15711db 100755
--- a/lib/python/gladevcp/speedcontrol.py
+++ b/lib/python/gladevcp/speedcontrol.py
@@ -162,17 +162,17 @@ def _update_widget(self):
def _hal_init(self):
_HalSpeedControlBase._hal_init(self)
# the scale, as the widget may show units per minute, but linuxcnc expects units per second
- self.hal_pin_scale = self.hal.newpin(self.hal_name+".scale", hal.HAL_FLOAT, hal.HAL_IN)
+ self.hal_pin_scale = self.hal.newpin(self.hal_name+".scale", hal.Type.REAL, hal.Dir.IN)
self.hal_pin_scale.connect("value-changed", self._on_scale_changed)
self.hal_pin_scale.set(60.0)
# the scaled value to be handled in hal
- self.hal_pin_scaled_value = self.hal.newpin(self.hal_name+".scaled-value", hal.HAL_FLOAT, hal.HAL_OUT)
+ self.hal_pin_scaled_value = self.hal.newpin(self.hal_name+".scaled-value", hal.Type.REAL, hal.Dir.OUT)
# pins to allow hardware button to be connected to the software button
- self.hal_pin_increase = self.hal.newpin(self.hal_name+".increase", hal.HAL_BIT, hal.HAL_IN)
+ self.hal_pin_increase = self.hal.newpin(self.hal_name+".increase", hal.Type.BOOL, hal.Dir.IN)
self.hal_pin_increase.connect("value-changed", self._on_plus_changed)
- self.hal_pin_decrease = self.hal.newpin(self.hal_name+".decrease", hal.HAL_BIT, hal.HAL_IN)
+ self.hal_pin_decrease = self.hal.newpin(self.hal_name+".decrease", hal.Type.BOOL, hal.Dir.IN)
self.hal_pin_decrease.connect("value-changed", self._on_minus_changed)
# this draws our widget on the screen
diff --git a/lib/python/qtvcp/core.py b/lib/python/qtvcp/core.py
index d893f645c9c..f293484d731 100644
--- a/lib/python/qtvcp/core.py
+++ b/lib/python/qtvcp/core.py
@@ -5,7 +5,6 @@
from gi.repository import GObject
import inspect
-import _hal
import hal
import traceback
from qtpy.QtCore import QObject, QTimer, Signal
diff --git a/lib/python/qtvcp/lib/qt_vismach/fanuc_200f.py b/lib/python/qtvcp/lib/qt_vismach/fanuc_200f.py
index bc540a84763..ae22fdb0bc7 100755
--- a/lib/python/qtvcp/lib/qt_vismach/fanuc_200f.py
+++ b/lib/python/qtvcp/lib/qt_vismach/fanuc_200f.py
@@ -27,14 +27,14 @@
BASEPATH = os.path.join(os.path.dirname(__file__), 'fanuc_200f_obj')
c = hal.component("fanuc_200f")
-c.newpin("joint1", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint2", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint3", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint4", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint5", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint6", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("grip", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("plotclear", hal.HAL_BIT, hal.HAL_IN)
+c.newpin("joint1", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint2", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint3", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint4", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint5", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint6", hal.Type.REAL, hal.Dir.IN)
+c.newpin("grip", hal.Type.REAL, hal.Dir.IN)
+c.newpin("plotclear", hal.Type.BOOL, hal.Dir.IN)
c.ready()
diff --git a/lib/python/qtvcp/lib/qt_vismach/gantry_5axis.py b/lib/python/qtvcp/lib/qt_vismach/gantry_5axis.py
index dd290e695c1..aee2fad223b 100755
--- a/lib/python/qtvcp/lib/qt_vismach/gantry_5axis.py
+++ b/lib/python/qtvcp/lib/qt_vismach/gantry_5axis.py
@@ -41,14 +41,14 @@ def coords(self):
return -self.comp.tool_length, r, 0, r
c = hal.component("5axisgui")
-c.newpin("jx", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("jy", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("jz", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("jb", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("jc", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("tool_length", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("tool_diam", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("pivot_len", hal.HAL_FLOAT, hal.HAL_OUT)
+c.newpin("jx", hal.Type.REAL, hal.Dir.IN)
+c.newpin("jy", hal.Type.REAL, hal.Dir.IN)
+c.newpin("jz", hal.Type.REAL, hal.Dir.IN)
+c.newpin("jb", hal.Type.REAL, hal.Dir.IN)
+c.newpin("jc", hal.Type.REAL, hal.Dir.IN)
+c.newpin("tool_length", hal.Type.REAL, hal.Dir.IN)
+c.newpin("tool_diam", hal.Type.REAL, hal.Dir.IN)
+c.newpin("pivot_len", hal.Type.REAL, hal.Dir.OUT)
c["pivot_len"] = pivot_len
c.ready()
diff --git a/lib/python/qtvcp/lib/qt_vismach/millturn.py b/lib/python/qtvcp/lib/qt_vismach/millturn.py
index 438755e61d4..b5211ed749f 100755
--- a/lib/python/qtvcp/lib/qt_vismach/millturn.py
+++ b/lib/python/qtvcp/lib/qt_vismach/millturn.py
@@ -19,18 +19,18 @@
# add joints. Mill has 3.
c = hal.component("millturngui")
# follow ZYX directly
-#c.newpin("jointX", hal.HAL_FLOAT, hal.HAL_IN)
-#c.newpin("jointY", hal.HAL_FLOAT, hal.HAL_IN)
-#c.newpin("jointZ", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("jointA", hal.HAL_FLOAT, hal.HAL_IN)
+#c.newpin("jointX", hal.Type.REAL, hal.Dir.IN)
+#c.newpin("jointY", hal.Type.REAL, hal.Dir.IN)
+#c.newpin("jointZ", hal.Type.REAL, hal.Dir.IN)
+c.newpin("jointA", hal.Type.REAL, hal.Dir.IN)
# kinematics pins
-c.newpin("millkins", hal.HAL_BIT, hal.HAL_IN)
+c.newpin("millkins", hal.Type.BOOL, hal.Dir.IN)
# tool length and diameter pins?
-c.newpin("toollength", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("tooldiameter", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("tool-x-offset", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("toollength", hal.Type.REAL, hal.Dir.IN)
+c.newpin("tooldiameter", hal.Type.REAL, hal.Dir.IN)
+c.newpin("tool-x-offset", hal.Type.REAL, hal.Dir.IN)
# tells loadusr pins is ready
c.ready()
diff --git a/lib/python/qtvcp/widgets/axis_tool_button.py b/lib/python/qtvcp/widgets/axis_tool_button.py
index d2c58f7a55b..20411a62bdc 100644
--- a/lib/python/qtvcp/widgets/axis_tool_button.py
+++ b/lib/python/qtvcp/widgets/axis_tool_button.py
@@ -131,8 +131,8 @@ def homed_on_test():
else:
pname = self._pin_name_
- self.hal_pin_joint = self.HAL_GCOMP_.newpin(str(pname + '-joint'), hal.HAL_BIT, hal.HAL_OUT)
- self.hal_pin_axis = self.HAL_GCOMP_.newpin(str(pname + '-axis'), hal.HAL_BIT, hal.HAL_OUT)
+ self.hal_pin_joint = self.HAL_GCOMP_.newpin(str(pname + '-joint'), hal.Type.BOOL, hal.Dir.OUT)
+ self.hal_pin_axis = self.HAL_GCOMP_.newpin(str(pname + '-axis'), hal.Type.BOOL, hal.Dir.OUT)
STATUS.connect('general',self.return_value)
def _enableGroup(self, state,bstate):
diff --git a/lib/python/qtvcp/widgets/basic_probe.py b/lib/python/qtvcp/widgets/basic_probe.py
index 74f93959ad6..1e9a2bddce9 100644
--- a/lib/python/qtvcp/widgets/basic_probe.py
+++ b/lib/python/qtvcp/widgets/basic_probe.py
@@ -198,7 +198,7 @@ def homed_on_status():
# make pins available for tool measure remaps
oldname = self.HAL_GCOMP_.comp.getprefix()
self.HAL_GCOMP_.comp.setprefix('qtbasicprobe')
- self.probe_loaded = self.HAL_GCOMP_.newpin("probe-loaded", hal.HAL_BIT, hal.HAL_OUT)
+ self.probe_loaded = self.HAL_GCOMP_.newpin("probe-loaded", hal.Type.BOOL, hal.Dir.OUT)
self.HAL_GCOMP_.comp.setprefix(oldname)
# get current style of the line input
diff --git a/lib/python/qtvcp/widgets/camview_widget.py b/lib/python/qtvcp/widgets/camview_widget.py
index 5e11ef65437..0e0fe25e539 100644
--- a/lib/python/qtvcp/widgets/camview_widget.py
+++ b/lib/python/qtvcp/widgets/camview_widget.py
@@ -98,7 +98,7 @@ def __init__(self, parent=None):
def _hal_init(self):
try:
- self.pin_ = self.HAL_GCOMP_.newpin('cam-rotation',hal.HAL_FLOAT, hal.HAL_OUT)
+ self.pin_ = self.HAL_GCOMP_.newpin('cam-rotation',hal.Type.REAL, hal.Dir.OUT)
except:
pass
if LIB_GOOD:
diff --git a/lib/python/qtvcp/widgets/indicatorMixIn.py b/lib/python/qtvcp/widgets/indicatorMixIn.py
index bda4fd8172e..89db9755b97 100644
--- a/lib/python/qtvcp/widgets/indicatorMixIn.py
+++ b/lib/python/qtvcp/widgets/indicatorMixIn.py
@@ -116,10 +116,10 @@ def _hal_init(self):
pname = self.HAL_NAME_
else:
pname = self._pin_name_
- self.hal_pin_led = self.HAL_GCOMP_.newpin(pname + '-led', hal.HAL_BIT, hal.HAL_IN)
+ self.hal_pin_led = self.HAL_GCOMP_.newpin(pname + '-led', hal.Type.BOOL, hal.Dir.IN)
self.hal_pin_led.value_changed.connect(lambda data: self.indicator_update(data))
if self._doubleIndicator:
- self.hal_pin_led2 = self.HAL_GCOMP_.newpin(pname + '-led2', hal.HAL_BIT, hal.HAL_IN)
+ self.hal_pin_led2 = self.HAL_GCOMP_.newpin(pname + '-led2', hal.Type.BOOL, hal.Dir.IN)
self.hal_pin_led2.value_changed.connect(lambda data: self.indicator2_update(data))
elif self._ind_status:
diff --git a/lib/python/qtvcp/widgets/jog_increments.py b/lib/python/qtvcp/widgets/jog_increments.py
index c54caa3ba93..05a079d6a56 100644
--- a/lib/python/qtvcp/widgets/jog_increments.py
+++ b/lib/python/qtvcp/widgets/jog_increments.py
@@ -51,7 +51,7 @@ def _hal_init(self):
pname = self.HAL_NAME_
else:
pname = self._pin_name
- self.hal_pin = self.HAL_GCOMP_.newpin(pname, hal.HAL_FLOAT, hal.HAL_OUT)
+ self.hal_pin = self.HAL_GCOMP_.newpin(pname, hal.Type.REAL, hal.Dir.OUT)
if self.linear:
for item in (INFO.JOG_INCREMENTS):
self.addItem(item)
diff --git a/lib/python/qtvcp/widgets/led_widget.py b/lib/python/qtvcp/widgets/led_widget.py
index 6c55ee8b1aa..bc4409f7074 100644
--- a/lib/python/qtvcp/widgets/led_widget.py
+++ b/lib/python/qtvcp/widgets/led_widget.py
@@ -64,7 +64,7 @@ def _hal_init(self):
else:
pname = self._pin_name_
- self.hal_pin = self.HAL_GCOMP_.newpin(pname, hal.HAL_BIT, hal.HAL_IN)
+ self.hal_pin = self.HAL_GCOMP_.newpin(pname, hal.Type.BOOL, hal.Dir.IN)
self.hal_pin.value_changed.connect(lambda s: self.change_state(s))
@Slot(bool)
diff --git a/lib/python/qtvcp/widgets/round_gauge.py b/lib/python/qtvcp/widgets/round_gauge.py
index 04f3ed64187..f0268f083f2 100644
--- a/lib/python/qtvcp/widgets/round_gauge.py
+++ b/lib/python/qtvcp/widgets/round_gauge.py
@@ -37,9 +37,9 @@ def __init__(self, parent=None):
def _hal_init(self):
if (self._halpin_option):
- self.hal_pin = self.HAL_GCOMP_.newpin(self.HAL_NAME_ + "_value", hal.HAL_FLOAT, hal.HAL_IN)
+ self.hal_pin = self.HAL_GCOMP_.newpin(self.HAL_NAME_ + "_value", hal.Type.REAL, hal.Dir.IN)
self.hal_pin.value_changed.connect(lambda value: self.update_value(value))
- self.hal_pin = self.HAL_GCOMP_.newpin(self.HAL_NAME_ + "_setpoint", hal.HAL_FLOAT, hal.HAL_IN)
+ self.hal_pin = self.HAL_GCOMP_.newpin(self.HAL_NAME_ + "_setpoint", hal.Type.REAL, hal.Dir.IN)
self.hal_pin.value_changed.connect(lambda value: self.set_setpoint(value))
def create_unit_array(self):
diff --git a/lib/python/qtvcp/widgets/state_led.py b/lib/python/qtvcp/widgets/state_led.py
index ab6b9c2668a..6a1bddd24fd 100644
--- a/lib/python/qtvcp/widgets/state_led.py
+++ b/lib/python/qtvcp/widgets/state_led.py
@@ -83,7 +83,7 @@ def only_false(data):
pname = self.HAL_NAME_
else:
pname = self._halpin_name
- self.hal_pin = self.HAL_GCOMP_.newpin(pname, hal.HAL_BIT, hal.HAL_OUT)
+ self.hal_pin = self.HAL_GCOMP_.newpin(pname, hal.Type.BOOL, hal.Dir.OUT)
if self.is_estopped:
STATUS.connect('state-estop', lambda w: self._flip_state(True))
STATUS.connect('state-estop-reset', lambda w: self._flip_state(False))
diff --git a/lib/python/qtvcp/widgets/status_slider.py b/lib/python/qtvcp/widgets/status_slider.py
index fa1b93571e8..6daa2fad754 100644
--- a/lib/python/qtvcp/widgets/status_slider.py
+++ b/lib/python/qtvcp/widgets/status_slider.py
@@ -121,7 +121,7 @@ def _hal_init(self):
pname = self.HAL_NAME_
else:
pname = self._pin_name_
- self.hal_pin = self.HAL_GCOMP_.newpin(str(pname), hal.HAL_FLOAT, hal.HAL_OUT)
+ self.hal_pin = self.HAL_GCOMP_.newpin(str(pname), hal.Type.REAL, hal.Dir.OUT)
# connect a signal and callback function to the button
self.doubleValueChanged.connect(self._action)
diff --git a/lib/python/qtvcp/widgets/versa_probe.py b/lib/python/qtvcp/widgets/versa_probe.py
index efa18563d06..8528226a3a3 100644
--- a/lib/python/qtvcp/widgets/versa_probe.py
+++ b/lib/python/qtvcp/widgets/versa_probe.py
@@ -234,17 +234,17 @@ def homed_on_test():
# make pins available for tool measure remaps
oldname = self.HAL_GCOMP_.comp.getprefix()
self.HAL_GCOMP_.comp.setprefix('qtversaprobe')
- self.pin_svel = self.HAL_GCOMP_.newpin("searchvel", hal.HAL_FLOAT, hal.HAL_OUT)
+ self.pin_svel = self.HAL_GCOMP_.newpin("searchvel", hal.Type.REAL, hal.Dir.OUT)
self.pin_svel.set(float(self.input_search_vel.text()))
- self.pin_pvel = self.HAL_GCOMP_.newpin("probevel", hal.HAL_FLOAT, hal.HAL_OUT)
+ self.pin_pvel = self.HAL_GCOMP_.newpin("probevel", hal.Type.REAL, hal.Dir.OUT)
self.pin_pvel.set(float(self.input_probe_vel.text()))
- self.pin_pheight = self.HAL_GCOMP_.newpin("probeheight", hal.HAL_FLOAT, hal.HAL_OUT)
+ self.pin_pheight = self.HAL_GCOMP_.newpin("probeheight", hal.Type.REAL, hal.Dir.OUT)
self.pin_pheight.set(float(self.input_tool_probe_height.text()))
- self.pin_bheight = self.HAL_GCOMP_.newpin("blockheight", hal.HAL_FLOAT, hal.HAL_OUT)
+ self.pin_bheight = self.HAL_GCOMP_.newpin("blockheight", hal.Type.REAL, hal.Dir.OUT)
self.pin_bheight.set(float(self.input_tool_block_height.text()))
- self.pin_latch_rtn = self.HAL_GCOMP_.newpin("backoffdist", hal.HAL_FLOAT, hal.HAL_OUT)
+ self.pin_latch_rtn = self.HAL_GCOMP_.newpin("backoffdist", hal.Type.REAL, hal.Dir.OUT)
self.pin_latch_rtn.set(float(self.input_latch_return_dist.text()))
- self.probe_loaded = self.HAL_GCOMP_.newpin("probe-loaded", hal.HAL_BIT, hal.HAL_OUT)
+ self.probe_loaded = self.HAL_GCOMP_.newpin("probe-loaded", hal.Type.BOOL, hal.Dir.OUT)
self.HAL_GCOMP_.comp.setprefix(oldname)
# install callbacks to update HAL pins
diff --git a/lib/python/vismach.py b/lib/python/vismach.py
index 62f02aea446..7fd37958fcf 100644
--- a/lib/python/vismach.py
+++ b/lib/python/vismach.py
@@ -1550,7 +1550,7 @@ def main(model, tool, work, size=10, hud=0, rotation_vectors=None, lat=0, lon=0)
t.after(100, lambda: t.set_viewangle(lat, lon, forcerotate=1))
vcomp = hal.component("vismach")
- vcomp.newpin("plotclear",hal.HAL_BIT,hal.HAL_IN)
+ vcomp.newpin("plotclear",hal.Type.BOOL,hal.Dir.IN)
vcomp.ready()
#there's probably a better way of doing this
diff --git a/share/gscreen/skins/silverdragon/silverdragon_handler.py b/share/gscreen/skins/silverdragon/silverdragon_handler.py
index 3d08239aee7..e78c1a1db8c 100644
--- a/share/gscreen/skins/silverdragon/silverdragon_handler.py
+++ b/share/gscreen/skins/silverdragon/silverdragon_handler.py
@@ -326,18 +326,18 @@ def init_sensitive_all_homed(self):
def initialize_pins(self):
# pins for block height
- self.halcomp.newpin("sensor_height", hal.HAL_FLOAT, hal.HAL_OUT)
- pin = self.halcomp.newpin("block_height", hal.HAL_FLOAT, hal.HAL_OUT)
+ self.halcomp.newpin("sensor_height", hal.Type.REAL, hal.Dir.OUT)
+ pin = self.halcomp.newpin("block_height", hal.Type.REAL, hal.Dir.OUT)
hal_glib.GPin(pin).connect("value_changed", self.on_blockheight_changed)
self.halcomp["block_height"] = self.gscreen.prefs.getpref("blockheight", 0.0, float)
# pins for probing
- self.halcomp.newpin("search_vel", hal.HAL_FLOAT, hal.HAL_OUT)
- self.halcomp.newpin("probe_vel", hal.HAL_FLOAT, hal.HAL_OUT)
- self.halcomp.newpin("maxprobe", hal.HAL_FLOAT, hal.HAL_OUT)
+ self.halcomp.newpin("search_vel", hal.Type.REAL, hal.Dir.OUT)
+ self.halcomp.newpin("probe_vel", hal.Type.REAL, hal.Dir.OUT)
+ self.halcomp.newpin("maxprobe", hal.Type.REAL, hal.Dir.OUT)
# pins for clear_mdi button
- self.halcomp.newpin("clear_mdi", hal.HAL_BIT, hal.HAL_OUT)
- pin = self.halcomp.newpin("clear_mdi-waiting", hal.HAL_BIT, hal.HAL_OUT)
- pin = self.halcomp.newpin("clear_mdi-response", hal.HAL_BIT, hal.HAL_OUT)
+ self.halcomp.newpin("clear_mdi", hal.Type.BOOL, hal.Dir.OUT)
+ pin = self.halcomp.newpin("clear_mdi-waiting", hal.Type.BOOL, hal.Dir.OUT)
+ pin = self.halcomp.newpin("clear_mdi-response", hal.Type.BOOL, hal.Dir.OUT)
hal_glib.GPin(pin).connect("value_changed", self.on_clear_mdi_changed)
# every 100 milli seconds this gets called
diff --git a/share/gscreen/skins/spartan/spartan_handler.py b/share/gscreen/skins/spartan/spartan_handler.py
index a681cbf108f..258f986308d 100644
--- a/share/gscreen/skins/spartan/spartan_handler.py
+++ b/share/gscreen/skins/spartan/spartan_handler.py
@@ -110,16 +110,16 @@ def initialize_pins(self):
self.gscreen.init_jog_pins()
self.gscreen.init_override_pins()
self.gscreen.init_control_pins()
- self.gscreen.halcomp.newpin("spindle-spd-disp", hal.HAL_FLOAT, hal.HAL_IN)
- self.gscreen.halcomp.newpin("jog-spd-out", hal.HAL_FLOAT, hal.HAL_OUT)
- self.gscreen.halcomp.newpin("jog-inc-out", hal.HAL_FLOAT, hal.HAL_OUT)
- self.data['ext-estop'] = hal_glib.GPin(self.gscreen.halcomp.newpin('ext-estop', hal.HAL_BIT, hal.HAL_IN))
+ self.gscreen.halcomp.newpin("spindle-spd-disp", hal.Type.REAL, hal.Dir.IN)
+ self.gscreen.halcomp.newpin("jog-spd-out", hal.Type.REAL, hal.Dir.OUT)
+ self.gscreen.halcomp.newpin("jog-inc-out", hal.Type.REAL, hal.Dir.OUT)
+ self.data['ext-estop'] = hal_glib.GPin(self.gscreen.halcomp.newpin('ext-estop', hal.Type.BOOL, hal.Dir.IN))
self.data['ext-estop'].connect('value-changed', self.on_estop_in)
- self.data['enc-fault-x'] = hal_glib.GPin(self.gscreen.halcomp.newpin('enc-fault-x', hal.HAL_BIT, hal.HAL_IN))
+ self.data['enc-fault-x'] = hal_glib.GPin(self.gscreen.halcomp.newpin('enc-fault-x', hal.Type.BOOL, hal.Dir.IN))
self.data['enc-fault-x'].connect('value-changed', self.on_x_enc_fault)
- self.data['enc-fault-y'] = hal_glib.GPin(self.gscreen.halcomp.newpin('enc-fault-y', hal.HAL_BIT, hal.HAL_IN))
+ self.data['enc-fault-y'] = hal_glib.GPin(self.gscreen.halcomp.newpin('enc-fault-y', hal.Type.BOOL, hal.Dir.IN))
self.data['enc-fault-y'].connect('value-changed', self.on_y_enc_fault)
- self.data['enc-fault-x'] = hal_glib.GPin(self.gscreen.halcomp.newpin('enc-fault-z', hal.HAL_BIT, hal.HAL_IN))
+ self.data['enc-fault-x'] = hal_glib.GPin(self.gscreen.halcomp.newpin('enc-fault-z', hal.Type.BOOL, hal.Dir.IN))
self.data['enc-fault-x'].connect('value-changed', self.on_z_enc_fault)
def on_emc_off(self,*args):
diff --git a/share/qtvcp/panels/vismach_router_atc/vismach_router_atc_handler.py b/share/qtvcp/panels/vismach_router_atc/vismach_router_atc_handler.py
index 20f62320160..9f5d3821b58 100644
--- a/share/qtvcp/panels/vismach_router_atc/vismach_router_atc_handler.py
+++ b/share/qtvcp/panels/vismach_router_atc/vismach_router_atc_handler.py
@@ -23,9 +23,9 @@
#import hal
#c = hal.component("router_atc")
-#c.newpin("joint0", hal.HAL_FLOAT, hal.HAL_IN)
-#c.newpin("joint1", hal.HAL_FLOAT, hal.HAL_IN)
-#c.newpin("joint2", hal.HAL_FLOAT, hal.HAL_IN)
+#c.newpin("joint0", hal.Type.REAL, hal.Dir.IN)
+#c.newpin("joint1", hal.Type.REAL, hal.Dir.IN)
+#c.newpin("joint2", hal.Type.REAL, hal.Dir.IN)
#c.ready()
diff --git a/src/emc/usr_intf/axis/scripts/tracking-test.py b/src/emc/usr_intf/axis/scripts/tracking-test.py
index 0fbc7695a80..d7e0d2244a5 100755
--- a/src/emc/usr_intf/axis/scripts/tracking-test.py
+++ b/src/emc/usr_intf/axis/scripts/tracking-test.py
@@ -15,18 +15,18 @@
compname = "tracking-test"
c = hal.component(compname)
#declare hal pins here
-c.newpin("joint0", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint1", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint2", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint3", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint4", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint5", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("axis0", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("axis1", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("axis2", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("axis3", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("axis4", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("axis5", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("joint0", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint1", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint2", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint3", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint4", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint5", hal.Type.REAL, hal.Dir.IN)
+c.newpin("axis0", hal.Type.REAL, hal.Dir.IN)
+c.newpin("axis1", hal.Type.REAL, hal.Dir.IN)
+c.newpin("axis2", hal.Type.REAL, hal.Dir.IN)
+c.newpin("axis3", hal.Type.REAL, hal.Dir.IN)
+c.newpin("axis4", hal.Type.REAL, hal.Dir.IN)
+c.newpin("axis5", hal.Type.REAL, hal.Dir.IN)
c.ready()
diff --git a/src/emc/usr_intf/mdro/mdro.py b/src/emc/usr_intf/mdro/mdro.py
index e1ac9c3a635..f0848ca4136 100755
--- a/src/emc/usr_intf/mdro/mdro.py
+++ b/src/emc/usr_intf/mdro/mdro.py
@@ -34,10 +34,10 @@ def __init__(self):
self.h = hal.component("mdro")
self.pins = ["axis."+str(p) for p in range(params["naxes"])]
for pin in self.pins:
- self.h.newpin(pin, hal.HAL_FLOAT, hal.HAL_IN)
+ self.h.newpin(pin, hal.Type.REAL, hal.Dir.IN)
self.indexes = ["index-enable."+str(p) for p in range(params["naxes"])]
for pin in self.indexes:
- self.h.newpin(pin, hal.HAL_BIT, hal.HAL_IO)
+ self.h.newpin(pin, hal.Type.BOOL, hal.Dir.IO)
self.h.ready()
if params["verbose"]:
print("Linuxcnc interface up")
diff --git a/src/hal/user_comps/mitsub_vfd.py b/src/hal/user_comps/mitsub_vfd.py
index 8d0d6914686..dff04f6718d 100644
--- a/src/hal/user_comps/mitsub_vfd.py
+++ b/src/hal/user_comps/mitsub_vfd.py
@@ -69,34 +69,34 @@ def __init__(self,vfd_names=[['mitsub_vfd','00']],baudrate=9600,port='/dev/ttyUS
for index,name in enumerate(self.comp_names):
#print index,' NAME:',name[0],' SLAVE:',name[1]
c = hal.component(name[0])
- c.newpin("fwd", hal.HAL_BIT, hal.HAL_IN)
- c.newpin("run", hal.HAL_BIT, hal.HAL_IN)
- c.newpin("up-to-speed", hal.HAL_BIT, hal.HAL_OUT)
- c.newpin("alarm", hal.HAL_BIT, hal.HAL_OUT)
- c.newpin("debug", hal.HAL_BIT, hal.HAL_IN)
- c.newpin("monitor", hal.HAL_BIT, hal.HAL_IN)
- c.newpin("motor-cmd", hal.HAL_FLOAT, hal.HAL_IN)
- c.newpin("motor-fb", hal.HAL_FLOAT, hal.HAL_OUT)
- c.newpin("motor-amps", hal.HAL_FLOAT, hal.HAL_OUT)
- c.newpin("motor-volts", hal.HAL_FLOAT, hal.HAL_OUT)
- c.newpin("motor-power", hal.HAL_FLOAT, hal.HAL_OUT)
- c.newpin("motor-user", hal.HAL_FLOAT, hal.HAL_OUT)
- c.newpin("scale-cmd", hal.HAL_FLOAT, hal.HAL_IN)
- c.newpin("scale-fb", hal.HAL_FLOAT, hal.HAL_IN)
- c.newpin("scale-amps", hal.HAL_FLOAT, hal.HAL_IN)
- c.newpin("scale-volts", hal.HAL_FLOAT, hal.HAL_IN)
- c.newpin("scale-power", hal.HAL_FLOAT, hal.HAL_IN)
- c.newpin("scale-user", hal.HAL_FLOAT, hal.HAL_IN)
- c.newpin("estop", hal.HAL_BIT, hal.HAL_IN)
- c.newpin("reset-on-estop", hal.HAL_BIT, hal.HAL_IN)
- c.newpin("stat-bit-0", hal.HAL_BIT, hal.HAL_OUT)
- c.newpin("stat-bit-1", hal.HAL_BIT, hal.HAL_OUT)
- c.newpin("stat-bit-2", hal.HAL_BIT, hal.HAL_OUT)
- c.newpin("stat-bit-3", hal.HAL_BIT, hal.HAL_OUT)
- c.newpin("stat-bit-4", hal.HAL_BIT, hal.HAL_OUT)
- c.newpin("stat-bit-5", hal.HAL_BIT, hal.HAL_OUT)
- c.newpin("stat-bit-6", hal.HAL_BIT, hal.HAL_OUT)
- c.newpin("stat-bit-7", hal.HAL_BIT, hal.HAL_OUT)
+ c.newpin("fwd", hal.Type.BOOL, hal.Dir.IN)
+ c.newpin("run", hal.Type.BOOL, hal.Dir.IN)
+ c.newpin("up-to-speed", hal.Type.BOOL, hal.Dir.OUT)
+ c.newpin("alarm", hal.Type.BOOL, hal.Dir.OUT)
+ c.newpin("debug", hal.Type.BOOL, hal.Dir.IN)
+ c.newpin("monitor", hal.Type.BOOL, hal.Dir.IN)
+ c.newpin("motor-cmd", hal.Type.REAL, hal.Dir.IN)
+ c.newpin("motor-fb", hal.Type.REAL, hal.Dir.OUT)
+ c.newpin("motor-amps", hal.Type.REAL, hal.Dir.OUT)
+ c.newpin("motor-volts", hal.Type.REAL, hal.Dir.OUT)
+ c.newpin("motor-power", hal.Type.REAL, hal.Dir.OUT)
+ c.newpin("motor-user", hal.Type.REAL, hal.Dir.OUT)
+ c.newpin("scale-cmd", hal.Type.REAL, hal.Dir.IN)
+ c.newpin("scale-fb", hal.Type.REAL, hal.Dir.IN)
+ c.newpin("scale-amps", hal.Type.REAL, hal.Dir.IN)
+ c.newpin("scale-volts", hal.Type.REAL, hal.Dir.IN)
+ c.newpin("scale-power", hal.Type.REAL, hal.Dir.IN)
+ c.newpin("scale-user", hal.Type.REAL, hal.Dir.IN)
+ c.newpin("estop", hal.Type.BOOL, hal.Dir.IN)
+ c.newpin("reset-on-estop", hal.Type.BOOL, hal.Dir.IN)
+ c.newpin("stat-bit-0", hal.Type.BOOL, hal.Dir.OUT)
+ c.newpin("stat-bit-1", hal.Type.BOOL, hal.Dir.OUT)
+ c.newpin("stat-bit-2", hal.Type.BOOL, hal.Dir.OUT)
+ c.newpin("stat-bit-3", hal.Type.BOOL, hal.Dir.OUT)
+ c.newpin("stat-bit-4", hal.Type.BOOL, hal.Dir.OUT)
+ c.newpin("stat-bit-5", hal.Type.BOOL, hal.Dir.OUT)
+ c.newpin("stat-bit-6", hal.Type.BOOL, hal.Dir.OUT)
+ c.newpin("stat-bit-7", hal.Type.BOOL, hal.Dir.OUT)
# set reasonable defaults
c['scale-cmd'] = 1
c['scale-fb'] = 1
diff --git a/src/hal/user_comps/pmx485.py b/src/hal/user_comps/pmx485.py
index 6c7796f0be7..15e1d2a512d 100644
--- a/src/hal/user_comps/pmx485.py
+++ b/src/hal/user_comps/pmx485.py
@@ -46,20 +46,20 @@
# create pmx485 component
try:
pmx485 = hal.component('pmx485')
- pmx485.newpin('mode_set', hal.HAL_FLOAT, hal.HAL_IN) #set cutting mode
- pmx485.newpin('current_set', hal.HAL_FLOAT, hal.HAL_IN) #set cutting current
- pmx485.newpin('pressure_set', hal.HAL_FLOAT, hal.HAL_IN) #set gas pressure
- pmx485.newpin('enable', hal.HAL_BIT, hal.HAL_IN) #enabler
- pmx485.newpin('mode', hal.HAL_FLOAT, hal.HAL_OUT) #cut mode feedback
- pmx485.newpin('current', hal.HAL_FLOAT, hal.HAL_OUT) #cutting current feedback
- pmx485.newpin('pressure', hal.HAL_FLOAT, hal.HAL_OUT) #gas pressure feedback
- pmx485.newpin('fault', hal.HAL_FLOAT, hal.HAL_OUT) #fault code
- pmx485.newpin('status', hal.HAL_BIT, hal.HAL_OUT) #connection status out
- pmx485.newpin('current_min', hal.HAL_FLOAT, hal.HAL_OUT) #minimum allowed current
- pmx485.newpin('current_max', hal.HAL_FLOAT, hal.HAL_OUT) #maximum allowed current
- pmx485.newpin('pressure_min', hal.HAL_FLOAT, hal.HAL_OUT) #minimum allowed gas pressure
- pmx485.newpin('pressure_max', hal.HAL_FLOAT, hal.HAL_OUT) #maximum allowed gas pressure
- pmx485.newpin('arcTime', hal.HAL_FLOAT, hal.HAL_OUT) #arc on time feedback
+ pmx485.newpin('mode_set', hal.Type.REAL, hal.Dir.IN) #set cutting mode
+ pmx485.newpin('current_set', hal.Type.REAL, hal.Dir.IN) #set cutting current
+ pmx485.newpin('pressure_set', hal.Type.REAL, hal.Dir.IN) #set gas pressure
+ pmx485.newpin('enable', hal.Type.BOOL, hal.Dir.IN) #enabler
+ pmx485.newpin('mode', hal.Type.REAL, hal.Dir.OUT) #cut mode feedback
+ pmx485.newpin('current', hal.Type.REAL, hal.Dir.OUT) #cutting current feedback
+ pmx485.newpin('pressure', hal.Type.REAL, hal.Dir.OUT) #gas pressure feedback
+ pmx485.newpin('fault', hal.Type.REAL, hal.Dir.OUT) #fault code
+ pmx485.newpin('status', hal.Type.BOOL, hal.Dir.OUT) #connection status out
+ pmx485.newpin('current_min', hal.Type.REAL, hal.Dir.OUT) #minimum allowed current
+ pmx485.newpin('current_max', hal.Type.REAL, hal.Dir.OUT) #maximum allowed current
+ pmx485.newpin('pressure_min', hal.Type.REAL, hal.Dir.OUT) #minimum allowed gas pressure
+ pmx485.newpin('pressure_max', hal.Type.REAL, hal.Dir.OUT) #maximum allowed gas pressure
+ pmx485.newpin('arcTime', hal.Type.REAL, hal.Dir.OUT) #arc on time feedback
pmx485.ready()
except:
print('\nERROR: pmx485 component could not be initialized\n')
diff --git a/src/hal/user_comps/vismach/5axisgui.py b/src/hal/user_comps/vismach/5axisgui.py
index 0366112c4f7..d5fe64fef4e 100755
--- a/src/hal/user_comps/vismach/5axisgui.py
+++ b/src/hal/user_comps/vismach/5axisgui.py
@@ -79,14 +79,14 @@ def coords(self):
return -self.comp.tool_length, r, 0, r
c = hal.component("5axisgui")
-c.newpin("jx", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("jy", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("jz", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("jb", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("jc", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("tool_length", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("tool_diam", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("pivot_len", hal.HAL_FLOAT, hal.HAL_OUT)
+c.newpin("jx", hal.Type.REAL, hal.Dir.IN)
+c.newpin("jy", hal.Type.REAL, hal.Dir.IN)
+c.newpin("jz", hal.Type.REAL, hal.Dir.IN)
+c.newpin("jb", hal.Type.REAL, hal.Dir.IN)
+c.newpin("jc", hal.Type.REAL, hal.Dir.IN)
+c.newpin("tool_length", hal.Type.REAL, hal.Dir.IN)
+c.newpin("tool_diam", hal.Type.REAL, hal.Dir.IN)
+c.newpin("pivot_len", hal.Type.REAL, hal.Dir.OUT)
c["pivot_len"] = pivot_len
c.ready()
diff --git a/src/hal/user_comps/vismach/hbmgui.py b/src/hal/user_comps/vismach/hbmgui.py
index 55f423c1136..0a3dcaf580f 100755
--- a/src/hal/user_comps/vismach/hbmgui.py
+++ b/src/hal/user_comps/vismach/hbmgui.py
@@ -74,13 +74,13 @@ def coords(self):
c = hal.component("hbmgui")
# HAL pins
-c.newpin("table", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("saddle", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("head", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("quill", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("table", hal.Type.REAL, hal.Dir.IN)
+c.newpin("saddle", hal.Type.REAL, hal.Dir.IN)
+c.newpin("head", hal.Type.REAL, hal.Dir.IN)
+c.newpin("quill", hal.Type.REAL, hal.Dir.IN)
-c.newpin("tool-length", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("tool-radius", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("tool-length", hal.Type.REAL, hal.Dir.IN)
+c.newpin("tool-radius", hal.Type.REAL, hal.Dir.IN)
c.ready()
tool_radius=0.5
diff --git a/src/hal/user_comps/vismach/hexagui.py b/src/hal/user_comps/vismach/hexagui.py
index 36429fa899a..cba5d8b015a 100755
--- a/src/hal/user_comps/vismach/hexagui.py
+++ b/src/hal/user_comps/vismach/hexagui.py
@@ -52,20 +52,20 @@ def popupmsg():
#if(randomize): compname += str(random.randrange(0,10000))
c = hal.component(compname)
#declare hal pins here
-c.newpin("joint.0", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint.1", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint.2", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint.3", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint.4", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint.5", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("joint.0", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint.1", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint.2", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint.3", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint.4", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint.5", hal.Type.REAL, hal.Dir.IN)
#get the tool tip position in cartesian coordinates from emc
#so we dont have to do kinematics
-c.newpin("axis.x", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("axis.y", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("axis.z", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("axis.a", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("axis.b", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("axis.c", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("axis.x", hal.Type.REAL, hal.Dir.IN)
+c.newpin("axis.y", hal.Type.REAL, hal.Dir.IN)
+c.newpin("axis.z", hal.Type.REAL, hal.Dir.IN)
+c.newpin("axis.a", hal.Type.REAL, hal.Dir.IN)
+c.newpin("axis.b", hal.Type.REAL, hal.Dir.IN)
+c.newpin("axis.c", hal.Type.REAL, hal.Dir.IN)
c.ready()
diff --git a/src/hal/user_comps/vismach/lineardelta.py b/src/hal/user_comps/vismach/lineardelta.py
index b1b7377903c..2b0638258f0 100644
--- a/src/hal/user_comps/vismach/lineardelta.py
+++ b/src/hal/user_comps/vismach/lineardelta.py
@@ -59,12 +59,12 @@ def popupmsg():
for setting in sys.argv[1:]: exec(setting)
c = hal.component("lineardelta")
-c.newpin("joint0", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint1", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint2", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint3", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("R", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("L", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("joint0", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint1", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint2", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint3", hal.Type.REAL, hal.Dir.IN)
+c.newpin("R", hal.Type.REAL, hal.Dir.IN)
+c.newpin("L", hal.Type.REAL, hal.Dir.IN)
c['R'], c['L'] = lineardeltakins.get_geometry()
c.ready()
diff --git a/src/hal/user_comps/vismach/maho600gui.py b/src/hal/user_comps/vismach/maho600gui.py
index 14bc2ab1842..62835735e7a 100755
--- a/src/hal/user_comps/vismach/maho600gui.py
+++ b/src/hal/user_comps/vismach/maho600gui.py
@@ -69,19 +69,19 @@ def coords(self):
c = hal.component("maho600gui")
# table
-c.newpin("table", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("table", hal.Type.REAL, hal.Dir.IN)
# full width ways that table rides one
# this assembly moves up and down for Y
-c.newpin("tableway", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("tableway", hal.Type.REAL, hal.Dir.IN)
# head vertical slide
-c.newpin("head", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("head", hal.Type.REAL, hal.Dir.IN)
# head tilt
-c.newpin("arotate", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("arotate", hal.Type.REAL, hal.Dir.IN)
# rotary table
-c.newpin("brotate", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("brotate", hal.Type.REAL, hal.Dir.IN)
-c.newpin("tool-length", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("tool-radius", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("tool-length", hal.Type.REAL, hal.Dir.IN)
+c.newpin("tool-radius", hal.Type.REAL, hal.Dir.IN)
c.ready()
pivot_len=100
diff --git a/src/hal/user_comps/vismach/max5gui.py b/src/hal/user_comps/vismach/max5gui.py
index f020299cc66..46e6d4c7a35 100755
--- a/src/hal/user_comps/vismach/max5gui.py
+++ b/src/hal/user_comps/vismach/max5gui.py
@@ -69,18 +69,18 @@ def coords(self):
c = hal.component("max5gui")
# table
-c.newpin("table", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("table", hal.Type.REAL, hal.Dir.IN)
# saddle
-c.newpin("saddle", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("saddle", hal.Type.REAL, hal.Dir.IN)
# head vertical slide
-c.newpin("head", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("head", hal.Type.REAL, hal.Dir.IN)
# head tilt
-c.newpin("tilt", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("tilt", hal.Type.REAL, hal.Dir.IN)
# rotary table
-c.newpin("rotate", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("rotate", hal.Type.REAL, hal.Dir.IN)
-c.newpin("tool-length", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("tool-radius", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("tool-length", hal.Type.REAL, hal.Dir.IN)
+c.newpin("tool-radius", hal.Type.REAL, hal.Dir.IN)
c.ready()
pivot_len=100
diff --git a/src/hal/user_comps/vismach/melfagui.py b/src/hal/user_comps/vismach/melfagui.py
index 479f1c6cdc2..058bd545fa0 100755
--- a/src/hal/user_comps/vismach/melfagui.py
+++ b/src/hal/user_comps/vismach/melfagui.py
@@ -41,15 +41,15 @@ def popupmsg():
import hal
c = hal.component("melfagui")
-c.newpin("joint1", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint2", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint3", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint4", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint5", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint6", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("lnkdx", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("lnkdz", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("grip", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("joint1", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint2", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint3", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint4", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint5", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint6", hal.Type.REAL, hal.Dir.IN)
+c.newpin("lnkdx", hal.Type.REAL, hal.Dir.IN)
+c.newpin("lnkdz", hal.Type.REAL, hal.Dir.IN)
+c.newpin("grip", hal.Type.REAL, hal.Dir.IN)
c.ready()
diff --git a/src/hal/user_comps/vismach/millturngui.py b/src/hal/user_comps/vismach/millturngui.py
index fa822699cde..a376035a1f6 100755
--- a/src/hal/user_comps/vismach/millturngui.py
+++ b/src/hal/user_comps/vismach/millturngui.py
@@ -57,18 +57,18 @@ def popupmsg():
# in this file, and uncomment last line in HAL file.
# add joints. Mill has 3.
c = hal.component("millturngui")
-c.newpin("jointX", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("jointY", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("jointZ", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("jointA", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("jointX", hal.Type.REAL, hal.Dir.IN)
+c.newpin("jointY", hal.Type.REAL, hal.Dir.IN)
+c.newpin("jointZ", hal.Type.REAL, hal.Dir.IN)
+c.newpin("jointA", hal.Type.REAL, hal.Dir.IN)
# kinematics pins
-c.newpin("millkins", hal.HAL_BIT, hal.HAL_IN)
+c.newpin("millkins", hal.Type.BOOL, hal.Dir.IN)
# tool length and diameter pins?
-c.newpin("toollength", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("tooldiameter", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("tool-x-offset", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("toollength", hal.Type.REAL, hal.Dir.IN)
+c.newpin("tooldiameter", hal.Type.REAL, hal.Dir.IN)
+c.newpin("tool-x-offset", hal.Type.REAL, hal.Dir.IN)
# tells loadusr pins is ready
c.ready()
diff --git a/src/hal/user_comps/vismach/puma560gui.py b/src/hal/user_comps/vismach/puma560gui.py
index bdd9affb243..87b265bf2fa 100755
--- a/src/hal/user_comps/vismach/puma560gui.py
+++ b/src/hal/user_comps/vismach/puma560gui.py
@@ -57,13 +57,13 @@ def popupmsg():
import hal
c = hal.component("puma560gui")
-c.newpin("joint1", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint2", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint3", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint4", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint5", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint6", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("grip", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("joint1", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint2", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint3", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint4", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint5", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint6", hal.Type.REAL, hal.Dir.IN)
+c.newpin("grip", hal.Type.REAL, hal.Dir.IN)
c.ready()
diff --git a/src/hal/user_comps/vismach/pumagui.py b/src/hal/user_comps/vismach/pumagui.py
index 05399be4fac..40cf0b15273 100755
--- a/src/hal/user_comps/vismach/pumagui.py
+++ b/src/hal/user_comps/vismach/pumagui.py
@@ -79,12 +79,12 @@ def popupmsg():
import hal
c = hal.component("pumagui")
-c.newpin("joint1", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint2", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint3", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint4", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint5", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint6", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("joint1", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint2", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint3", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint4", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint5", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint6", hal.Type.REAL, hal.Dir.IN)
c.ready()
###################
diff --git a/src/hal/user_comps/vismach/rotarydelta.py b/src/hal/user_comps/vismach/rotarydelta.py
index da1beee2f31..d27e5d9c14a 100755
--- a/src/hal/user_comps/vismach/rotarydelta.py
+++ b/src/hal/user_comps/vismach/rotarydelta.py
@@ -59,13 +59,13 @@ def popupmsg():
for setting in sys.argv[1:]: exec(setting)
c = hal.component("rotarydelta")
-c.newpin("joint0", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint1", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint2", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("pfr", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("tl", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("sl", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("fr", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("joint0", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint1", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint2", hal.Type.REAL, hal.Dir.IN)
+c.newpin("pfr", hal.Type.REAL, hal.Dir.IN)
+c.newpin("tl", hal.Type.REAL, hal.Dir.IN)
+c.newpin("sl", hal.Type.REAL, hal.Dir.IN)
+c.newpin("fr", hal.Type.REAL, hal.Dir.IN)
c['pfr'], c['tl'], c['sl'], c['fr'] = rotarydeltakins.get_geometry()
c.ready()
diff --git a/src/hal/user_comps/vismach/scaragui.py b/src/hal/user_comps/vismach/scaragui.py
index 5a0082ea5c4..4a38f2c8cb2 100755
--- a/src/hal/user_comps/vismach/scaragui.py
+++ b/src/hal/user_comps/vismach/scaragui.py
@@ -56,12 +56,12 @@ def popupmsg():
import sys
c = hal.component("scaragui")
-c.newpin("joint0", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint1", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint2", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint3", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint4", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("joint5", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("joint0", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint1", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint2", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint3", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint4", hal.Type.REAL, hal.Dir.IN)
+c.newpin("joint5", hal.Type.REAL, hal.Dir.IN)
c.ready()
# parameters that define the geometry see scarakins.c for definitions these
diff --git a/src/hal/user_comps/vismach/xyzab-tdr-gui.py b/src/hal/user_comps/vismach/xyzab-tdr-gui.py
index c70ca7c477b..1f62874dd9f 100644
--- a/src/hal/user_comps/vismach/xyzab-tdr-gui.py
+++ b/src/hal/user_comps/vismach/xyzab-tdr-gui.py
@@ -66,26 +66,26 @@ def popupmsg():
c = hal.component("xyzab-tdr-gui")
# axis-x
-c.newpin("axis-x", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("axis-x", hal.Type.REAL, hal.Dir.IN)
# axis-y
-c.newpin("axis-y", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("axis-y", hal.Type.REAL, hal.Dir.IN)
# axis-z
-c.newpin("axis-z", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("axis-z", hal.Type.REAL, hal.Dir.IN)
# rotary_a
-c.newpin("rotary-a", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("rotary-a", hal.Type.REAL, hal.Dir.IN)
# rotary_b
-c.newpin("rotary-b", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("rotary-b", hal.Type.REAL, hal.Dir.IN)
# geometric offsets between A and B axes
-c.newpin("x_offset", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("z_offset", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("x_offset", hal.Type.REAL, hal.Dir.IN)
+c.newpin("z_offset", hal.Type.REAL, hal.Dir.IN)
# rot-point offsets
-c.newpin("x-rot-point", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("y-rot-point", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("z-rot-point", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("x-rot-point", hal.Type.REAL, hal.Dir.IN)
+c.newpin("y-rot-point", hal.Type.REAL, hal.Dir.IN)
+c.newpin("z-rot-point", hal.Type.REAL, hal.Dir.IN)
# tool-length offset
# tool offsets
-c.newpin("tool_length", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("tool_diameter", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("tool_length", hal.Type.REAL, hal.Dir.IN)
+c.newpin("tool_diameter", hal.Type.REAL, hal.Dir.IN)
c.ready()
# These values are arbitrary and are meant to simulate an absolute
diff --git a/src/hal/user_comps/vismach/xyzac-trt-gui.py b/src/hal/user_comps/vismach/xyzac-trt-gui.py
index 3e7c5fcb879..021dd2e2a1c 100755
--- a/src/hal/user_comps/vismach/xyzac-trt-gui.py
+++ b/src/hal/user_comps/vismach/xyzac-trt-gui.py
@@ -63,19 +63,19 @@ def popupmsg():
c = hal.component("xyzac-trt-gui")
# table-x
-c.newpin("table-x", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("table-x", hal.Type.REAL, hal.Dir.IN)
# saddle-y
-c.newpin("saddle-y", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("saddle-y", hal.Type.REAL, hal.Dir.IN)
# head vertical slide
-c.newpin("spindle-z", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("spindle-z", hal.Type.REAL, hal.Dir.IN)
# table-x tilt-b
-c.newpin("tilt-a", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("tilt-a", hal.Type.REAL, hal.Dir.IN)
# rotary table-x
-c.newpin("rotate-c", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("rotate-c", hal.Type.REAL, hal.Dir.IN)
# offsets
-c.newpin("y-offset", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("z-offset", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("tool-offset", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("y-offset", hal.Type.REAL, hal.Dir.IN)
+c.newpin("z-offset", hal.Type.REAL, hal.Dir.IN)
+c.newpin("tool-offset", hal.Type.REAL, hal.Dir.IN)
c.ready()
for setting in sys.argv[1:]: exec(setting)
diff --git a/src/hal/user_comps/vismach/xyzbc-trt-gui.py b/src/hal/user_comps/vismach/xyzbc-trt-gui.py
index 0804a29ed2b..a6185242331 100755
--- a/src/hal/user_comps/vismach/xyzbc-trt-gui.py
+++ b/src/hal/user_comps/vismach/xyzbc-trt-gui.py
@@ -62,18 +62,18 @@ def popupmsg():
c = hal.component("xyzbc-trt-gui")
# table-x
-c.newpin("table-x", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("table-x", hal.Type.REAL, hal.Dir.IN)
# saddle-y
-c.newpin("saddle-y", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("saddle-y", hal.Type.REAL, hal.Dir.IN)
# head vertical slide
-c.newpin("spindle-z", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("spindle-z", hal.Type.REAL, hal.Dir.IN)
# table-x tilt-b
-c.newpin("tilt-b", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("tilt-b", hal.Type.REAL, hal.Dir.IN)
# rotary table-x
-c.newpin("rotate-c", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("z-offset", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("x-offset", hal.HAL_FLOAT, hal.HAL_IN)
-c.newpin("tool-offset", hal.HAL_FLOAT, hal.HAL_IN)
+c.newpin("rotate-c", hal.Type.REAL, hal.Dir.IN)
+c.newpin("z-offset", hal.Type.REAL, hal.Dir.IN)
+c.newpin("x-offset", hal.Type.REAL, hal.Dir.IN)
+c.newpin("tool-offset", hal.Type.REAL, hal.Dir.IN)
c.ready()
for setting in sys.argv[1:]: exec(setting)
diff --git a/tests/abort/on_abort_command-crazy-move/test-ui.py b/tests/abort/on_abort_command-crazy-move/test-ui.py
index 85a5e32255d..0fd8c1dc559 100755
--- a/tests/abort/on_abort_command-crazy-move/test-ui.py
+++ b/tests/abort/on_abort_command-crazy-move/test-ui.py
@@ -27,8 +27,8 @@
# Create and connect test feedback comp
#
h = hal.component("test-ui")
-h.newpin("Xpos", hal.HAL_FLOAT, hal.HAL_IN)
-h.newpin("Ypos", hal.HAL_FLOAT, hal.HAL_IN)
+h.newpin("Xpos", hal.Type.REAL, hal.Dir.IN)
+h.newpin("Ypos", hal.Type.REAL, hal.Dir.IN)
h.ready()
os.system("halcmd source ./postgui.hal")
diff --git a/tests/abort/stop-button-crazy-move/test-ui.py b/tests/abort/stop-button-crazy-move/test-ui.py
index 897c56e4926..839940e1e26 100755
--- a/tests/abort/stop-button-crazy-move/test-ui.py
+++ b/tests/abort/stop-button-crazy-move/test-ui.py
@@ -26,8 +26,8 @@
# Create and connect test feedback comp
#
h = hal.component("test-ui")
-h.newpin("Xpos", hal.HAL_FLOAT, hal.HAL_IN)
-h.newpin("Ypos", hal.HAL_FLOAT, hal.HAL_IN)
+h.newpin("Xpos", hal.Type.REAL, hal.Dir.IN)
+h.newpin("Ypos", hal.Type.REAL, hal.Dir.IN)
h.ready()
os.system("halcmd source ./postgui.hal")
diff --git a/tests/classicladder/estop/classicladder-estop-ui.py b/tests/classicladder/estop/classicladder-estop-ui.py
index 3f0f0ee859e..a579bb3b5d0 100755
--- a/tests/classicladder/estop/classicladder-estop-ui.py
+++ b/tests/classicladder/estop/classicladder-estop-ui.py
@@ -23,7 +23,7 @@ def wait_for_hal_pin(name, value, timeout=10):
retval = 0
h = hal.component("python-ui")
-h.newpin("ext-estop-button", hal.HAL_BIT, hal.HAL_OUT)
+h.newpin("ext-estop-button", hal.Type.BOOL, hal.Dir.OUT)
h.ready() # mark the component as 'ready'
hal.connect('python-ui.ext-estop-button', 'ext-estop')
diff --git a/tests/halui/jogging/test-ui.py b/tests/halui/jogging/test-ui.py
index 858f38df542..53a61b25606 100755
--- a/tests/halui/jogging/test-ui.py
+++ b/tests/halui/jogging/test-ui.py
@@ -174,38 +174,38 @@ def jog_joint(joint_number, target):
h = hal.component("python-ui")
-h.newpin("joint-0-home", hal.HAL_BIT, hal.HAL_OUT)
-h.newpin("joint-0-homed", hal.HAL_BIT, hal.HAL_IN)
-h.newpin("joint-0-select", hal.HAL_BIT, hal.HAL_OUT)
-h.newpin("joint-0-selected", hal.HAL_BIT, hal.HAL_IN)
-h.newpin("joint-0-position", hal.HAL_FLOAT, hal.HAL_IN)
-h.newpin("joint-0-velocity", hal.HAL_FLOAT, hal.HAL_IN)
-h.newpin("joint-0-jog-plus", hal.HAL_BIT, hal.HAL_OUT)
-h.newpin("joint-0-jog-minus", hal.HAL_BIT, hal.HAL_OUT)
-
-h.newpin("joint-1-home", hal.HAL_BIT, hal.HAL_OUT)
-h.newpin("joint-1-homed", hal.HAL_BIT, hal.HAL_IN)
-h.newpin("joint-1-select", hal.HAL_BIT, hal.HAL_OUT)
-h.newpin("joint-1-selected", hal.HAL_BIT, hal.HAL_IN)
-h.newpin("joint-1-position", hal.HAL_FLOAT, hal.HAL_IN)
-h.newpin("joint-1-velocity", hal.HAL_FLOAT, hal.HAL_IN)
-h.newpin("joint-1-jog-plus", hal.HAL_BIT, hal.HAL_OUT)
-h.newpin("joint-1-jog-minus", hal.HAL_BIT, hal.HAL_OUT)
-
-h.newpin("joint-2-home", hal.HAL_BIT, hal.HAL_OUT)
-h.newpin("joint-2-homed", hal.HAL_BIT, hal.HAL_IN)
-h.newpin("joint-2-select", hal.HAL_BIT, hal.HAL_OUT)
-h.newpin("joint-2-selected", hal.HAL_BIT, hal.HAL_IN)
-h.newpin("joint-2-position", hal.HAL_FLOAT, hal.HAL_IN)
-h.newpin("joint-2-velocity", hal.HAL_FLOAT, hal.HAL_IN)
-h.newpin("joint-2-jog-plus", hal.HAL_BIT, hal.HAL_OUT)
-h.newpin("joint-2-jog-minus", hal.HAL_BIT, hal.HAL_OUT)
-
-h.newpin("jog-selected-minus", hal.HAL_BIT, hal.HAL_OUT)
-h.newpin("jog-selected-plus", hal.HAL_BIT, hal.HAL_OUT)
-
-h.newpin("motion-mode-joint", hal.HAL_BIT, hal.HAL_OUT)
-h.newpin("motion-mode-is-joint", hal.HAL_BIT, hal.HAL_IN)
+h.newpin("joint-0-home", hal.Type.BOOL, hal.Dir.OUT)
+h.newpin("joint-0-homed", hal.Type.BOOL, hal.Dir.IN)
+h.newpin("joint-0-select", hal.Type.BOOL, hal.Dir.OUT)
+h.newpin("joint-0-selected", hal.Type.BOOL, hal.Dir.IN)
+h.newpin("joint-0-position", hal.Type.REAL, hal.Dir.IN)
+h.newpin("joint-0-velocity", hal.Type.REAL, hal.Dir.IN)
+h.newpin("joint-0-jog-plus", hal.Type.BOOL, hal.Dir.OUT)
+h.newpin("joint-0-jog-minus", hal.Type.BOOL, hal.Dir.OUT)
+
+h.newpin("joint-1-home", hal.Type.BOOL, hal.Dir.OUT)
+h.newpin("joint-1-homed", hal.Type.BOOL, hal.Dir.IN)
+h.newpin("joint-1-select", hal.Type.BOOL, hal.Dir.OUT)
+h.newpin("joint-1-selected", hal.Type.BOOL, hal.Dir.IN)
+h.newpin("joint-1-position", hal.Type.REAL, hal.Dir.IN)
+h.newpin("joint-1-velocity", hal.Type.REAL, hal.Dir.IN)
+h.newpin("joint-1-jog-plus", hal.Type.BOOL, hal.Dir.OUT)
+h.newpin("joint-1-jog-minus", hal.Type.BOOL, hal.Dir.OUT)
+
+h.newpin("joint-2-home", hal.Type.BOOL, hal.Dir.OUT)
+h.newpin("joint-2-homed", hal.Type.BOOL, hal.Dir.IN)
+h.newpin("joint-2-select", hal.Type.BOOL, hal.Dir.OUT)
+h.newpin("joint-2-selected", hal.Type.BOOL, hal.Dir.IN)
+h.newpin("joint-2-position", hal.Type.REAL, hal.Dir.IN)
+h.newpin("joint-2-velocity", hal.Type.REAL, hal.Dir.IN)
+h.newpin("joint-2-jog-plus", hal.Type.BOOL, hal.Dir.OUT)
+h.newpin("joint-2-jog-minus", hal.Type.BOOL, hal.Dir.OUT)
+
+h.newpin("jog-selected-minus", hal.Type.BOOL, hal.Dir.OUT)
+h.newpin("jog-selected-plus", hal.Type.BOOL, hal.Dir.OUT)
+
+h.newpin("motion-mode-joint", hal.Type.BOOL, hal.Dir.OUT)
+h.newpin("motion-mode-is-joint", hal.Type.BOOL, hal.Dir.IN)
h.ready() # mark the component as 'ready'
diff --git a/tests/halui/mdi/test-ui.py b/tests/halui/mdi/test-ui.py
index 81afb4fd342..296db4b1d62 100755
--- a/tests/halui/mdi/test-ui.py
+++ b/tests/halui/mdi/test-ui.py
@@ -77,18 +77,18 @@ def wait_for_halui_mode(pin_name):
h = hal.component("python-ui")
-h.newpin("mdi-0", hal.HAL_BIT, hal.HAL_OUT)
-h.newpin("mdi-1", hal.HAL_BIT, hal.HAL_OUT)
-h.newpin("mdi-2", hal.HAL_BIT, hal.HAL_OUT)
-h.newpin("mdi-3", hal.HAL_BIT, hal.HAL_OUT)
-
-h.newpin("joint-0-position", hal.HAL_FLOAT, hal.HAL_IN)
-h.newpin("joint-1-position", hal.HAL_FLOAT, hal.HAL_IN)
-h.newpin("joint-2-position", hal.HAL_FLOAT, hal.HAL_IN)
-
-h.newpin("is-manual", hal.HAL_BIT, hal.HAL_IN)
-h.newpin("is-auto", hal.HAL_BIT, hal.HAL_IN)
-h.newpin("is-mdi", hal.HAL_BIT, hal.HAL_IN)
+h.newpin("mdi-0", hal.Type.BOOL, hal.Dir.OUT)
+h.newpin("mdi-1", hal.Type.BOOL, hal.Dir.OUT)
+h.newpin("mdi-2", hal.Type.BOOL, hal.Dir.OUT)
+h.newpin("mdi-3", hal.Type.BOOL, hal.Dir.OUT)
+
+h.newpin("joint-0-position", hal.Type.REAL, hal.Dir.IN)
+h.newpin("joint-1-position", hal.Type.REAL, hal.Dir.IN)
+h.newpin("joint-2-position", hal.Type.REAL, hal.Dir.IN)
+
+h.newpin("is-manual", hal.Type.BOOL, hal.Dir.IN)
+h.newpin("is-auto", hal.Type.BOOL, hal.Dir.IN)
+h.newpin("is-mdi", hal.Type.BOOL, hal.Dir.IN)
h.ready() # mark the component as 'ready'
diff --git a/tests/hard-limits/test-ui.py b/tests/hard-limits/test-ui.py
index 61b1ffab036..a43181ed4c4 100755
--- a/tests/hard-limits/test-ui.py
+++ b/tests/hard-limits/test-ui.py
@@ -48,7 +48,7 @@ def assert_wait_complete(command):
#
comp = hal.component("test-ui")
-comp.newpin("x-neg-lim-sw", hal.HAL_BIT, hal.HAL_OUT)
+comp.newpin("x-neg-lim-sw", hal.Type.BOOL, hal.Dir.OUT)
comp.ready()
hal.connect('test-ui.x-neg-lim-sw', 'x-neg-lim-sw')
diff --git a/tests/mdi-queue-length/test-ui.py b/tests/mdi-queue-length/test-ui.py
index 44ddaeef741..5d966f4eeac 100755
--- a/tests/mdi-queue-length/test-ui.py
+++ b/tests/mdi-queue-length/test-ui.py
@@ -61,11 +61,11 @@ def wait_for_mdi_queue(queue_len, timeout=10):
h = hal.component("test-ui")
-h.newpin("digital-poker", hal.HAL_BIT, hal.HAL_OUT)
+h.newpin("digital-poker", hal.Type.BOOL, hal.Dir.OUT)
h['digital-poker'] = False
h.ready()
-hal.new_sig('poke', hal.HAL_BIT)
+hal.new_sig('poke', hal.Type.BOOL)
hal.connect('motion.digital-in-00', 'poke')
hal.connect('test-ui.digital-poker', 'poke')
diff --git a/tests/motion-logger/basic/test-ui.py b/tests/motion-logger/basic/test-ui.py
index d1135170f67..21da4c2bd47 100755
--- a/tests/motion-logger/basic/test-ui.py
+++ b/tests/motion-logger/basic/test-ui.py
@@ -12,7 +12,7 @@
import re
comp = hal.component("test-ui")
-comp.newpin("reopen-log", hal.HAL_BIT, hal.HAL_IO)
+comp.newpin("reopen-log", hal.Type.BOOL, hal.Dir.IO)
comp.ready()
os.system("halcmd net reopen-log test-ui.reopen-log motion-logger.reopen-log")
diff --git a/tests/remap/remap-io/test-ui.py b/tests/remap/remap-io/test-ui.py
index 65640490d6f..c96923b1124 100755
--- a/tests/remap/remap-io/test-ui.py
+++ b/tests/remap/remap-io/test-ui.py
@@ -5,10 +5,10 @@
# Set up pins
h = hal.component("test-ui")
-h.newpin('d_out', hal.HAL_BIT, hal.HAL_IN) # pin for reading digital out
-h.newpin('a_out', hal.HAL_FLOAT, hal.HAL_IN) # pin for reading analog out
-h.newpin('d_in', hal.HAL_BIT, hal.HAL_OUT) # pin for setting digital in
-h.newpin('a_in', hal.HAL_FLOAT, hal.HAL_OUT) # pin for setting analog in
+h.newpin('d_out', hal.Type.BOOL, hal.Dir.IN) # pin for reading digital out
+h.newpin('a_out', hal.Type.REAL, hal.Dir.IN) # pin for reading analog out
+h.newpin('d_in', hal.Type.BOOL, hal.Dir.OUT) # pin for setting digital in
+h.newpin('a_in', hal.Type.REAL, hal.Dir.OUT) # pin for setting analog in
h.ready() # mark the component as 'ready'
os.system('halcmd source postgui.hal') # Net above pins to motion I/O pins
diff --git a/tests/single-step/test-ui.py b/tests/single-step/test-ui.py
index aaac15a8f93..00855f3ff7b 100755
--- a/tests/single-step/test-ui.py
+++ b/tests/single-step/test-ui.py
@@ -21,10 +21,10 @@
# Create and connect test feedback comp
#
h = hal.component("test-ui")
-h.newpin("Xpos", hal.HAL_FLOAT, hal.HAL_IN)
-h.newpin("Ypos", hal.HAL_FLOAT, hal.HAL_IN)
-h.newpin("Zpos", hal.HAL_FLOAT, hal.HAL_IN)
-h.newpin("counter", hal.HAL_FLOAT, hal.HAL_IN)
+h.newpin("Xpos", hal.Type.REAL, hal.Dir.IN)
+h.newpin("Ypos", hal.Type.REAL, hal.Dir.IN)
+h.newpin("Zpos", hal.Type.REAL, hal.Dir.IN)
+h.newpin("counter", hal.Type.REAL, hal.Dir.IN)
h.ready()
os.system("halcmd source ./postgui.hal")