MESA 5i25+7i76+7i77

Работа с платами MESA, подключение, конфигурация.
Аватара пользователя
azbukived
Опытный
Сообщения: 172
Зарегистрирован: 13 окт 2012, 17:08
Репутация: 5
Контактная информация:

Re: MESA 5i25+7i76+7i77

Сообщение azbukived »

UAVpilot писал(а):У меня практически любой, но если делать не только для меня, то надо ориентироваться не более, чем на 1280x1024.
Как продвинулось дело?
У меня задача есть, не видит плату 5и25 мой комп. Как прописать правильно, чтобы включить 5и25+7и77? Можете помочь советом. Делаю все, как написано на страничках форума. Может комп старый?
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5181
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: MESA 5i25+7i76+7i77

Сообщение Serg »

azbukived писал(а):Как продвинулось дело?
По эмулятору? Пока никак - нет пока ни необходимости, ни свободного времени на это.

покажите что говорит команда?

Код: Выделить всё

lcpci -vd 2718
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
NightV
Почётный участник
Почётный участник
Сообщения: 6599
Зарегистрирован: 30 дек 2011, 09:14
Репутация: 2279
Настоящее имя: Владимир Айрапетян
Откуда: Israel
Контактная информация:

Re: MESA 5i25+7i76+7i77

Сообщение NightV »

azbukived, не нужно дублировать вопрос.
azbukived писал(а):Делаю все, как написано на страничках форума.
значит что-то все-таки не так делаете
azbukived писал(а):Может комп старый?
раз есть PCI слот значит не настолько старый ;)
по ходу я тоже стал разъяснять как мастерить удочки :hehehe:
Всё просто! если знаешь КАК!
Аватара пользователя
azbukived
Опытный
Сообщения: 172
Зарегистрирован: 13 окт 2012, 17:08
Репутация: 5
Контактная информация:

Re: MESA 5i25+7i76+7i77

Сообщение azbukived »

NightV писал(а):azbukived, не нужно дублировать вопрос.
azbukived писал(а):Делаю все, как написано на страничках форума.
значит что-то все-таки не так делаете
azbukived писал(а):Может комп старый?
раз есть PCI слот значит не настолько старый ;)
по ходу я тоже стал разъяснять как мастерить удочки :hehehe:
Спасибо, а по слотам - это уже онадеживает. Дубляж проявил в отсутствии времени, ждал долго.
Еще раз спасибо за ответ.
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: MESA 5i25+7i76+7i77

Сообщение Nick »

UAVpilot писал(а):lcpci -vd 2718
она столько всего говорит...
в основном ругается, что нет такой команды lcpci и еще просит ":" поставить :).

надо так, если я ничего не напутал:

Код: Выделить всё

lspci -vd 2718:
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5181
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: MESA 5i25+7i76+7i77

Сообщение Serg »

Nick писал(а):надо так, если я ничего не напутал:
Да, это по кнопкам не попал. :idiot:
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: MESA 5i25+7i76+7i77

Сообщение Nick »

А где ты vendor id взял? Есть какая-то база? Или тупо у себя на месе глянул? Но вообще база какая-то есть?
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5181
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: MESA 5i25+7i76+7i77

Сообщение Serg »

Тупо в мануале на 5i25 глянул. :hehehe:
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
azbukived
Опытный
Сообщения: 172
Зарегистрирован: 13 окт 2012, 17:08
Репутация: 5
Контактная информация:

Re: MESA 5i25+7i76+7i77

Сообщение azbukived »

azbukived писал(а):
NightV писал(а):azbukived, не нужно дублировать вопрос.
azbukived писал(а):Делаю все, как написано на страничках форума.
значит что-то все-таки не так делаете
azbukived писал(а):Может комп старый?
раз есть PCI слот значит не настолько старый ;)
по ходу я тоже стал разъяснять как мастерить удочки :hehehe:
Спасибо, а по слотам - это уже онадеживает. Дубляж проявил в отсутствии времени, ждал долго.
Еще раз спасибо за ответ.
С платой комп тормозит... Че не хватает?... Может, видеокарта??? :thinking: :idiot: :hehehe:
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: MESA 5i25+7i76+7i77

Сообщение Nick »

azbukived писал(а):С платой комп тормозит... Че не хватает?... Может, видеокарта???
Каким именно образом тормозит?
Аватара пользователя
azbukived
Опытный
Сообщения: 172
Зарегистрирован: 13 окт 2012, 17:08
Репутация: 5
Контактная информация:

Re: MESA 5i25+7i76+7i77

Сообщение azbukived »

Nick писал(а):
azbukived писал(а):С платой комп тормозит... Че не хватает?... Может, видеокарта???
Каким именно образом тормозит?
Тормозит, когда происходит открывание программы CNC.
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: MESA 5i25+7i76+7i77

Сообщение Nick »

Это может быть, только если конфиг другой...
Аватара пользователя
azbukived
Опытный
Сообщения: 172
Зарегистрирован: 13 окт 2012, 17:08
Репутация: 5
Контактная информация:

Re: MESA 5i25+7i76+7i77

Сообщение azbukived »

Nick писал(а):Это может быть, только если конфиг другой...
Что-то стало получаться...
Аватара пользователя
azbukived
Опытный
Сообщения: 172
Зарегистрирован: 13 окт 2012, 17:08
Репутация: 5
Контактная информация:

Re: MESA 5i25+7i76+7i77

Сообщение azbukived »

azbukived писал(а):
Nick писал(а):Это может быть, только если конфиг другой...
Что-то стало получаться...
Добрый день!
Подскажите, как с этим справиться? Выходит такая ошибка, после настройки основных параметров:
Вложения
Снимок-1.png (6891 просмотр) <a class='original' href='./download/file.php?id=26708&sid=388c3a55fffe8e08df68785fe3253b72&mode=view' target=_blank>Загрузить оригинал (193.69 КБ)</a>
Снимок.png (6891 просмотр) <a class='original' href='./download/file.php?id=26709&sid=388c3a55fffe8e08df68785fe3253b72&mode=view' target=_blank>Загрузить оригинал (201.83 КБ)</a>
Аватара пользователя
Serb01
Опытный
Сообщения: 107
Зарегистрирован: 04 июн 2012, 09:58
Репутация: 17
Настоящее имя: Сергей Беседин
Откуда: Новокузнецк
Контактная информация:

Re: MESA 5i25+7i76+7i77

Сообщение Serb01 »

На лснс.орг нашел интересную программку которая помогает увидеть 5и25 в pncconf вот здесь:
http://www.linuxcnc.org/index.php/engli ... lity#32197
5i25UPDATE.zip
Скачиваем; разархивируем; запускаем под рутом.
После проделанных операций запускаем pncconf и о чудо в выборе плат появляется 5i25 нажимаем вперед и выбираем платы которые торчат в 5i25 в моем случае 7i76+7i77
У меня после всех проделанных операций MESA 5i25 не увидела pncconf. После 4 часов танцев с бубном, обнаружил, что 5i25 UPDATE.sh создаёт 2 папки: /usr/share/doc/hostmot2-firmware-5i2; и /lib/firmware/hm2/5i25. Эти папки у меня были закрыты - в файловом менеджере на них стоит крест. Для открытия доступа к папкам в терминале нужно выполнить:
1. sudo -s Получаем root права.
2. chmod 777 * -R /usr/share/doc/hostmot2-firmware-5i2
3. chmod 777 * -R /lib/firmware/hm2/5i25 - Изменяем права доступа в этих папках.
Может пингвиноводам это само-собой разумеющееся, а вот форточникам будет полезно.
Pncconf видит MESA 5i25.
Значительно проще быть чуточку внимательней, чем долгое время пускать деньги на ветер
plotik
Мастер
Сообщения: 428
Зарегистрирован: 10 май 2012, 15:30
Репутация: 33
Настоящее имя: Евгений
Откуда: Rostov-on-Don
Контактная информация:

Re: MESA 5i25+7i76+7i77

Сообщение plotik »

7i76-- читал мануал :wtf:
Вопрос: при значении TRUE на выходе появляется +24В а можно чтоб наоборот притягивался к земле?
"Ты не дрыгайся! Показывай свою гравицаппу. Если фирменная вещь — возьмём!"
"А этот паца́к все время говорит на языках, продолжения которых не знает!"
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5181
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: MESA 5i25+7i76+7i77

Сообщение Serg »

Можно так: при значении FALSE на выходе появляется +24В.
Притягивать к земле не получится - схема не позволяет, если только внешним резистором.
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
ihter
Новичок
Сообщения: 3
Зарегистрирован: 09 июл 2013, 21:12
Репутация: 0
Контактная информация:

Re: MESA 5i25+7i76+7i77

Сообщение ihter »

Доброе время суток. Хотел создать тему , но решил что правильнее будет свои детские вопросы задать сдесь.
В общем это проект , модернизации или постройки станка токарного с чпу, был начат 2 года назад , тогда были закуплены комплектующие , и вот только сейчас руки дошли. Почему покупалось именно так , не помню , но вот так.
1. комплект MESA 5i25+7i76. собрано воткнуто в комп поставлена ось подано питание, 5в с карты 5i25, 12в с блока питания компа, светодиоды горят на 7i76 две штуки желтым.
2. два сервокомплекта DELTA Серия ASDA-B2 . с мощностью моторов по 1квт , моторы переменного тока , блок управления , кабеля , все есть все исправно, и прям отличная инструкция на русском, не знаю почему но сразу планировал управлять этой сервой по step dir (хотя она может все). Максимальная частота входных импульсов 4MГц., наверно по этому и решил.
3.частотник , опять же DELTA. на 11квт для управления обычным асинхронным мотором. +-10в. Энкодер будет стоять на шпинделе.
4. какое то количество концевых выключателей , и кнопок.
Механика станка почти собрана ,да и не о ней речь. Много что нннепонятно.
Просьба помочь разобраться с моими вопросами:
1. В упор не могу найти частоту обработки step dir платами mesa !? перерыл мануалы от карт , невижу и все! кто знает скажите?, а лучше носом ткните в ссылку.
2.Первичная конфигурация :pncconf, после указанных в теме манипуляций, 5i25 определилась, идем дальше все нормуль , доходим до указания пинов , вот
Снимок-1.png (6223 просмотра) <a class='original' href='./download/file.php?id=62393&sid=388c3a55fffe8e08df68785fe3253b72&mode=view' target=_blank>Загрузить оригинал (142.03 КБ)</a>
и тут, я заистерил, с чем физически связана каждая вкладка?! что за циферки слева от строчек в которых я назначаю лимиты , там кнопки итд, с чем они физически связаны? , в какой из вкладок мне указывать концевики ?(в любой?). если я назначаю концевики , где и как мне их искать на плате 7i76? , также моторы осей? какой где будет на плате. Как говорится не пинайте сильно, но я тупо невижу где это посмотреть , и где про это почитать?!
3. Назначаю я значит концевики , оси приводов (непонимая где их потом искать на плате :freak: ) , энкодер шпинделя назначаю , и
Снимок-4.png (6223 просмотра) <a class='original' href='./download/file.php?id=62399&sid=388c3a55fffe8e08df68785fe3253b72&mode=view' target=_blank>Загрузить оригинал (79.1 КБ)</a>
делаю аналоговый выход для управления шпинделем, в этом случае при завершении конфигурации ,программа матерится , и не дает сохранится ,вот так :
Снимок-12.png (6223 просмотра) <a class='original' href='./download/file.php?id=62400&sid=388c3a55fffe8e08df68785fe3253b72&mode=view' target=_blank>Загрузить оригинал (94.33 КБ)</a>
если выход на шпиндель убрать то конфигуратор нормально заканчивает работу, и даже LCNCпотом запускается :shock: . как и где сделать управление шпинделем потом?.
4.Энкодер для шпинделя? Станок будет резать резьбы разные(надеюсь) , какое разрешение энкодера взять , и какой тип (меса вроде любой поддерживает).
5.Во время конфигурации , разные окошки просто убивают! что за еденицы измерения в верхних строчках где вроде как перемещения должны быть? метры , дюймы, мм,?! в картинку не влезла правая часть окна , но там нет едениц измерения! или из ненадо?
Снимок-9.png (6223 просмотра) <a class='original' href='./download/file.php?id=62404&sid=388c3a55fffe8e08df68785fe3253b72&mode=view' target=_blank>Загрузить оригинал (95.52 КБ)</a>
Ну и на последок : вывод halcmd show > txt

Код: Выделить всё

Loaded HAL Components:
ID      Type  Name                                      PID   State
    18  User  halcmd3699                                 3699 ready
    16  User  axisui                                     3673 ready
    15  User  hal_manualtoolchange                       3662 ready
    13  RT    pid                                             ready
    12  RT    hm2_pci                                         ready
    11  RT    hostmot2                                        ready
    10  RT    probe_parport                                   ready
     9  RT    motmod                                          ready
     8  RT    trivkins                                        ready
     7  User  halui                                      3650 ready
     5  User  iocontrol                                  3648 ready

Component Pins:
Owner   Type  Dir         Value  Name
     9  bit   OUT          TRUE  axis.0.active
     9  bit   OUT         FALSE  axis.0.amp-enable-out ==> x-enable
     9  bit   IN          FALSE  axis.0.amp-fault-in
     9  float OUT             0  axis.0.backlash-corr
     9  float OUT             0  axis.0.backlash-filt
     9  float OUT             0  axis.0.backlash-vel
     9  float OUT             0  axis.0.coarse-pos-cmd
     9  bit   OUT         FALSE  axis.0.error
     9  float OUT             0  axis.0.f-error
     9  float OUT        0.0005  axis.0.f-error-lim
     9  bit   OUT         FALSE  axis.0.f-errored
     9  bit   OUT         FALSE  axis.0.faulted
     9  float OUT             0  axis.0.free-pos-cmd
     9  bit   OUT         FALSE  axis.0.free-tp-enable
     9  float OUT             0  axis.0.free-vel-lim
     9  bit   IN           TRUE  axis.0.home-sw-in <== min-home-x
     9  bit   OUT         FALSE  axis.0.homed
     9  bit   OUT         FALSE  axis.0.homing
     9  bit   OUT          TRUE  axis.0.in-position
     9  bit   I/O         FALSE  axis.0.index-enable
     9  s32   IN              0  axis.0.jog-counts
     9  bit   IN          FALSE  axis.0.jog-enable
     9  float IN              0  axis.0.jog-scale
     9  bit   IN          FALSE  axis.0.jog-vel-mode
     9  float OUT             0  axis.0.joint-pos-cmd
     9  float OUT             0  axis.0.joint-pos-fb
     9  float OUT             0  axis.0.joint-vel-cmd
     9  bit   OUT         FALSE  axis.0.kb-jog-active
     9  float OUT             0  axis.0.motor-offset
     9  float OUT             0  axis.0.motor-pos-cmd ==> x-pos-cmd
     9  float IN              0  axis.0.motor-pos-fb <== x-pos-fb
     9  bit   OUT          TRUE  axis.0.neg-hard-limit
     9  bit   IN           TRUE  axis.0.neg-lim-sw-in <== min-home-x
     9  bit   OUT          TRUE  axis.0.pos-hard-limit
     9  bit   IN           TRUE  axis.0.pos-lim-sw-in <== max-x
     9  bit   OUT         FALSE  axis.0.wheel-jog-active
     9  bit   OUT          TRUE  axis.1.active
     9  bit   OUT         FALSE  axis.1.amp-enable-out
     9  bit   IN          FALSE  axis.1.amp-fault-in
     9  float OUT             0  axis.1.backlash-corr
     9  float OUT             0  axis.1.backlash-filt
     9  float OUT             0  axis.1.backlash-vel
     9  float OUT             0  axis.1.coarse-pos-cmd
     9  bit   OUT         FALSE  axis.1.error
     9  float OUT             0  axis.1.f-error
     9  float OUT             1  axis.1.f-error-lim
     9  bit   OUT         FALSE  axis.1.f-errored
     9  bit   OUT         FALSE  axis.1.faulted
     9  float OUT             0  axis.1.free-pos-cmd
     9  bit   OUT         FALSE  axis.1.free-tp-enable
     9  float OUT             0  axis.1.free-vel-lim
     9  bit   IN          FALSE  axis.1.home-sw-in
     9  bit   OUT         FALSE  axis.1.homed
     9  bit   OUT         FALSE  axis.1.homing
     9  bit   OUT          TRUE  axis.1.in-position
     9  bit   I/O         FALSE  axis.1.index-enable
     9  s32   IN              0  axis.1.jog-counts
     9  bit   IN          FALSE  axis.1.jog-enable
     9  float IN              0  axis.1.jog-scale
     9  bit   IN          FALSE  axis.1.jog-vel-mode
     9  float OUT             0  axis.1.joint-pos-cmd
     9  float OUT             0  axis.1.joint-pos-fb
     9  float OUT             0  axis.1.joint-vel-cmd
     9  bit   OUT         FALSE  axis.1.kb-jog-active
     9  float OUT             0  axis.1.motor-offset
     9  float OUT             0  axis.1.motor-pos-cmd
     9  float IN              0  axis.1.motor-pos-fb
     9  bit   OUT         FALSE  axis.1.neg-hard-limit
     9  bit   IN          FALSE  axis.1.neg-lim-sw-in
     9  bit   OUT         FALSE  axis.1.pos-hard-limit
     9  bit   IN          FALSE  axis.1.pos-lim-sw-in
     9  bit   OUT         FALSE  axis.1.wheel-jog-active
     9  bit   OUT          TRUE  axis.2.active
     9  bit   OUT         FALSE  axis.2.amp-enable-out ==> z-enable
     9  bit   IN          FALSE  axis.2.amp-fault-in
     9  float OUT             0  axis.2.backlash-corr
     9  float OUT             0  axis.2.backlash-filt
     9  float OUT             0  axis.2.backlash-vel
     9  float OUT             0  axis.2.coarse-pos-cmd
     9  bit   OUT         FALSE  axis.2.error
     9  float OUT             0  axis.2.f-error
     9  float OUT        0.0005  axis.2.f-error-lim
     9  bit   OUT         FALSE  axis.2.f-errored
     9  bit   OUT         FALSE  axis.2.faulted
     9  float OUT             0  axis.2.free-pos-cmd
     9  bit   OUT         FALSE  axis.2.free-tp-enable
     9  float OUT             0  axis.2.free-vel-lim
     9  bit   IN           TRUE  axis.2.home-sw-in <== min-home-z
     9  bit   OUT         FALSE  axis.2.homed
     9  bit   OUT         FALSE  axis.2.homing
     9  bit   OUT          TRUE  axis.2.in-position
     9  bit   I/O         FALSE  axis.2.index-enable
     9  s32   IN              0  axis.2.jog-counts
     9  bit   IN          FALSE  axis.2.jog-enable
     9  float IN              0  axis.2.jog-scale
     9  bit   IN          FALSE  axis.2.jog-vel-mode
     9  float OUT             0  axis.2.joint-pos-cmd
     9  float OUT             0  axis.2.joint-pos-fb
     9  float OUT             0  axis.2.joint-vel-cmd
     9  bit   OUT         FALSE  axis.2.kb-jog-active
     9  float OUT             0  axis.2.motor-offset
     9  float OUT             0  axis.2.motor-pos-cmd ==> z-pos-cmd
     9  float IN              0  axis.2.motor-pos-fb <== z-pos-fb
     9  bit   OUT          TRUE  axis.2.neg-hard-limit
     9  bit   IN           TRUE  axis.2.neg-lim-sw-in <== min-home-z
     9  bit   OUT          TRUE  axis.2.pos-hard-limit
     9  bit   IN           TRUE  axis.2.pos-lim-sw-in <== max-z
     9  bit   OUT         FALSE  axis.2.wheel-jog-active
    16  bit   OUT         FALSE  axisui.jog.a
    16  bit   OUT         FALSE  axisui.jog.b
    16  bit   OUT         FALSE  axisui.jog.c
    16  float OUT             0  axisui.jog.increment
    16  bit   OUT         FALSE  axisui.jog.u
    16  bit   OUT         FALSE  axisui.jog.v
    16  bit   OUT         FALSE  axisui.jog.w
    16  bit   OUT          TRUE  axisui.jog.x
    16  bit   OUT         FALSE  axisui.jog.y
    16  bit   OUT         FALSE  axisui.jog.z
    16  bit   IN          FALSE  axisui.notifications-clear
    16  bit   IN          FALSE  axisui.notifications-clear-error
    16  bit   IN          FALSE  axisui.notifications-clear-info
    16  bit   IN          FALSE  axisui.set-manual-mode
    15  bit   IN          FALSE  hal_manualtoolchange.change <== tool-change-request
    15  bit   OUT         FALSE  hal_manualtoolchange.changed ==> tool-change-confirmed
    15  s32   IN              0  hal_manualtoolchange.number <== tool-number
     7  bit   IN          FALSE  halui.abort
     7  float OUT             0  halui.axis.0.pos-commanded
     7  float OUT             0  halui.axis.0.pos-feedback
     7  float OUT             0  halui.axis.0.pos-relative
     7  float OUT             0  halui.axis.1.pos-commanded
     7  float OUT             0  halui.axis.1.pos-feedback
     7  float OUT             0  halui.axis.1.pos-relative
     7  float OUT             0  halui.axis.2.pos-commanded
     7  float OUT             0  halui.axis.2.pos-feedback
     7  float OUT             0  halui.axis.2.pos-relative
     7  float OUT             0  halui.axis.3.pos-commanded
     7  float OUT             0  halui.axis.3.pos-feedback
     7  float OUT             0  halui.axis.3.pos-relative
     7  float OUT             0  halui.axis.4.pos-commanded
     7  float OUT             0  halui.axis.4.pos-feedback
     7  float OUT             0  halui.axis.4.pos-relative
     7  float OUT             0  halui.axis.5.pos-commanded
     7  float OUT             0  halui.axis.5.pos-feedback
     7  float OUT             0  halui.axis.5.pos-relative
     7  float OUT             0  halui.axis.6.pos-commanded
     7  float OUT             0  halui.axis.6.pos-feedback
     7  float OUT             0  halui.axis.6.pos-relative
     7  float OUT             0  halui.axis.7.pos-commanded
     7  float OUT             0  halui.axis.7.pos-feedback
     7  float OUT             0  halui.axis.7.pos-relative
     7  float OUT             0  halui.axis.8.pos-commanded
     7  float OUT             0  halui.axis.8.pos-feedback
     7  float OUT             0  halui.axis.8.pos-relative
     7  bit   IN          FALSE  halui.estop.activate
     7  bit   OUT         FALSE  halui.estop.is-activated
     7  bit   IN          FALSE  halui.estop.reset
     7  bit   IN           TRUE  halui.feed-override.count-enable
     7  s32   IN              0  halui.feed-override.counts
     7  bit   IN          FALSE  halui.feed-override.decrease
     7  bit   IN          FALSE  halui.feed-override.direct-value
     7  bit   IN          FALSE  halui.feed-override.increase
     7  float IN            0.1  halui.feed-override.scale
     7  float OUT             1  halui.feed-override.value
     7  bit   OUT         FALSE  halui.flood.is-on
     7  bit   IN          FALSE  halui.flood.off
     7  bit   IN          FALSE  halui.flood.on
     7  bit   IN          FALSE  halui.home-all
     7  float IN            0.2  halui.jog-deadband
     7  float IN              0  halui.jog-speed <== jog-speed
     7  float IN              0  halui.jog.0.analog <== jog-x-analog
     7  float IN              0  halui.jog.0.increment
     7  bit   IN          FALSE  halui.jog.0.increment-minus
     7  bit   IN          FALSE  halui.jog.0.increment-plus
     7  bit   IN          FALSE  halui.jog.0.minus <== jog-x-neg
     7  bit   IN          FALSE  halui.jog.0.plus <== jog-x-pos
     7  float IN              0  halui.jog.1.analog
     7  float IN              0  halui.jog.1.increment
     7  bit   IN          FALSE  halui.jog.1.increment-minus
     7  bit   IN          FALSE  halui.jog.1.increment-plus
     7  bit   IN          FALSE  halui.jog.1.minus
     7  bit   IN          FALSE  halui.jog.1.plus
     7  float IN              0  halui.jog.2.analog <== jog-z-analog
     7  float IN              0  halui.jog.2.increment
     7  bit   IN          FALSE  halui.jog.2.increment-minus
     7  bit   IN          FALSE  halui.jog.2.increment-plus
     7  bit   IN          FALSE  halui.jog.2.minus <== jog-z-neg
     7  bit   IN          FALSE  halui.jog.2.plus <== jog-z-pos
     7  float IN              0  halui.jog.selected.increment
     7  bit   IN          FALSE  halui.jog.selected.increment-minus
     7  bit   IN          FALSE  halui.jog.selected.increment-plus
     7  bit   IN          FALSE  halui.jog.selected.minus <== jog-selected-neg
     7  bit   IN          FALSE  halui.jog.selected.plus <== jog-selected-pos
     7  bit   OUT         FALSE  halui.joint.0.has-fault
     7  bit   IN          FALSE  halui.joint.0.home
     7  bit   OUT         FALSE  halui.joint.0.is-homed ==> x-is-homed
     7  bit   OUT         FALSE  halui.joint.0.is-selected
     7  bit   OUT          TRUE  halui.joint.0.on-hard-max-limit
     7  bit   OUT          TRUE  halui.joint.0.on-hard-min-limit
     7  bit   OUT         FALSE  halui.joint.0.on-soft-max-limit
     7  bit   OUT         FALSE  halui.joint.0.on-soft-min-limit
     7  bit   IN          FALSE  halui.joint.0.select <== joint-select-a
     7  bit   IN          FALSE  halui.joint.0.unhome
     7  bit   OUT         FALSE  halui.joint.1.has-fault
     7  bit   IN          FALSE  halui.joint.1.home
     7  bit   OUT         FALSE  halui.joint.1.is-homed
     7  bit   OUT         FALSE  halui.joint.1.is-selected
     7  bit   OUT         FALSE  halui.joint.1.on-hard-max-limit
     7  bit   OUT         FALSE  halui.joint.1.on-hard-min-limit
     7  bit   OUT         FALSE  halui.joint.1.on-soft-max-limit
     7  bit   OUT         FALSE  halui.joint.1.on-soft-min-limit
     7  bit   IN          FALSE  halui.joint.1.select
     7  bit   IN          FALSE  halui.joint.1.unhome
     7  bit   OUT         FALSE  halui.joint.2.has-fault
     7  bit   IN          FALSE  halui.joint.2.home
     7  bit   OUT         FALSE  halui.joint.2.is-homed ==> z-is-homed
     7  bit   OUT         FALSE  halui.joint.2.is-selected
     7  bit   OUT          TRUE  halui.joint.2.on-hard-max-limit
     7  bit   OUT          TRUE  halui.joint.2.on-hard-min-limit
     7  bit   OUT         FALSE  halui.joint.2.on-soft-max-limit
     7  bit   OUT         FALSE  halui.joint.2.on-soft-min-limit
     7  bit   IN          FALSE  halui.joint.2.select <== joint-select-c
     7  bit   IN          FALSE  halui.joint.2.unhome
     7  u32   OUT    0x00000000  halui.joint.selected
     7  bit   OUT         FALSE  halui.joint.selected.has-fault
     7  bit   IN          FALSE  halui.joint.selected.home
     7  bit   OUT         FALSE  halui.joint.selected.is_homed
     7  bit   OUT          TRUE  halui.joint.selected.on-hard-max-limit
     7  bit   OUT          TRUE  halui.joint.selected.on-hard-min-limit
     7  bit   OUT         FALSE  halui.joint.selected.on-soft-limit
     7  bit   OUT         FALSE  halui.joint.selected.on-soft-min-limit
     7  bit   IN          FALSE  halui.joint.selected.unhome
     7  bit   OUT         FALSE  halui.lube.is-on
     7  bit   IN          FALSE  halui.lube.off
     7  bit   IN          FALSE  halui.lube.on
     7  bit   OUT         FALSE  halui.machine.is-on ==> machine-is-on
     7  bit   IN          FALSE  halui.machine.off
     7  bit   IN          FALSE  halui.machine.on
     7  bit   IN           TRUE  halui.max-velocity.count-enable
     7  s32   IN              0  halui.max-velocity.counts
     7  bit   IN          FALSE  halui.max-velocity.decrease
     7  bit   IN          FALSE  halui.max-velocity.direct-value
     7  bit   IN          FALSE  halui.max-velocity.increase
     7  float IN              0  halui.max-velocity.scale
     7  float OUT      1.666667  halui.max-velocity.value
     7  bit   OUT         FALSE  halui.mist.is-on
     7  bit   IN          FALSE  halui.mist.off
     7  bit   IN          FALSE  halui.mist.on
     7  bit   IN          FALSE  halui.mode.auto
     7  bit   OUT          TRUE  halui.mode.is-auto
     7  bit   OUT          TRUE  halui.mode.is-joint
     7  bit   OUT         FALSE  halui.mode.is-manual
     7  bit   OUT         FALSE  halui.mode.is-mdi ==> MDI-mode
     7  bit   OUT         FALSE  halui.mode.is-teleop
     7  bit   IN          FALSE  halui.mode.joint
     7  bit   IN          FALSE  halui.mode.manual
     7  bit   IN          FALSE  halui.mode.mdi
     7  bit   IN          FALSE  halui.mode.teleop
     7  bit   OUT          TRUE  halui.program.block-delete.is-on
     7  bit   IN          FALSE  halui.program.block-delete.off
     7  bit   IN          FALSE  halui.program.block-delete.on
     7  bit   OUT          TRUE  halui.program.is-idle
     7  bit   OUT         FALSE  halui.program.is-paused
     7  bit   OUT         FALSE  halui.program.is-running
     7  bit   OUT          TRUE  halui.program.optional-stop.is-on
     7  bit   IN          FALSE  halui.program.optional-stop.off
     7  bit   IN          FALSE  halui.program.optional-stop.on
     7  bit   IN          FALSE  halui.program.pause
     7  bit   IN          FALSE  halui.program.resume
     7  bit   IN          FALSE  halui.program.run
     7  bit   IN          FALSE  halui.program.step
     7  bit   IN          FALSE  halui.program.stop
     7  bit   IN           TRUE  halui.spindle-override.count-enable
     7  s32   IN              0  halui.spindle-override.counts
     7  bit   IN          FALSE  halui.spindle-override.decrease
     7  bit   IN          FALSE  halui.spindle-override.direct-value
     7  bit   IN          FALSE  halui.spindle-override.increase
     7  float IN            0.1  halui.spindle-override.scale
     7  float OUT             1  halui.spindle-override.value
     7  bit   OUT          TRUE  halui.spindle.brake-is-on
     7  bit   IN          FALSE  halui.spindle.brake-off
     7  bit   IN          FALSE  halui.spindle.brake-on
     7  bit   IN          FALSE  halui.spindle.decrease
     7  bit   IN          FALSE  halui.spindle.forward <== spindle-manual-cw
     7  bit   IN          FALSE  halui.spindle.increase
     7  bit   OUT         FALSE  halui.spindle.is-on
     7  bit   IN          FALSE  halui.spindle.reverse <== spindle-manual-ccw
     7  bit   OUT         FALSE  halui.spindle.runs-backward
     7  bit   OUT         FALSE  halui.spindle.runs-forward
     7  bit   IN          FALSE  halui.spindle.start
     7  bit   IN          FALSE  halui.spindle.stop <== spindle-manual-stop
     7  float OUT             0  halui.tool.length_offset.a
     7  float OUT             0  halui.tool.length_offset.b
     7  float OUT             0  halui.tool.length_offset.c
     7  float OUT             0  halui.tool.length_offset.u
     7  float OUT             0  halui.tool.length_offset.v
     7  float OUT             0  halui.tool.length_offset.w
     7  float OUT             0  halui.tool.length_offset.x
     7  float OUT             0  halui.tool.length_offset.y
     7  float OUT             0  halui.tool.length_offset.z
     7  u32   OUT    0x00000000  halui.tool.number
    12  bit   OUT         FALSE  hm2_5i25.0.7i76.0.0.input-00
    12  bit   OUT          TRUE  hm2_5i25.0.7i76.0.0.input-00-not
    12  bit   OUT         FALSE  hm2_5i25.0.7i76.0.0.input-01
    12  bit   OUT          TRUE  hm2_5i25.0.7i76.0.0.input-01-not
    12  bit   OUT         FALSE  hm2_5i25.0.7i76.0.0.input-02
    12  bit   OUT          TRUE  hm2_5i25.0.7i76.0.0.input-02-not
    12  bit   OUT         FALSE  hm2_5i25.0.7i76.0.0.input-03
    12  bit   OUT          TRUE  hm2_5i25.0.7i76.0.0.input-03-not
    12  bit   OUT         FALSE  hm2_5i25.0.7i76.0.0.input-04
    12  bit   OUT          TRUE  hm2_5i25.0.7i76.0.0.input-04-not
    12  bit   OUT         FALSE  hm2_5i25.0.7i76.0.0.input-05
    12  bit   OUT          TRUE  hm2_5i25.0.7i76.0.0.input-05-not
    12  bit   OUT         FALSE  hm2_5i25.0.7i76.0.0.input-06
    12  bit   OUT          TRUE  hm2_5i25.0.7i76.0.0.input-06-not
    12  bit   OUT         FALSE  hm2_5i25.0.7i76.0.0.input-07
    12  bit   OUT          TRUE  hm2_5i25.0.7i76.0.0.input-07-not
    12  bit   OUT         FALSE  hm2_5i25.0.7i76.0.0.input-08
    12  bit   OUT          TRUE  hm2_5i25.0.7i76.0.0.input-08-not
    12  bit   OUT         FALSE  hm2_5i25.0.7i76.0.0.input-09
    12  bit   OUT          TRUE  hm2_5i25.0.7i76.0.0.input-09-not
    12  bit   OUT         FALSE  hm2_5i25.0.7i76.0.0.input-10
    12  bit   OUT          TRUE  hm2_5i25.0.7i76.0.0.input-10-not
    12  bit   OUT         FALSE  hm2_5i25.0.7i76.0.0.input-11
    12  bit   OUT          TRUE  hm2_5i25.0.7i76.0.0.input-11-not
    12  bit   OUT         FALSE  hm2_5i25.0.7i76.0.0.input-12
    12  bit   OUT          TRUE  hm2_5i25.0.7i76.0.0.input-12-not
    12  bit   OUT         FALSE  hm2_5i25.0.7i76.0.0.input-13
    12  bit   OUT          TRUE  hm2_5i25.0.7i76.0.0.input-13-not
    12  bit   OUT         FALSE  hm2_5i25.0.7i76.0.0.input-14
    12  bit   OUT          TRUE  hm2_5i25.0.7i76.0.0.input-14-not
    12  bit   OUT         FALSE  hm2_5i25.0.7i76.0.0.input-15
    12  bit   OUT          TRUE  hm2_5i25.0.7i76.0.0.input-15-not
    12  bit   OUT         FALSE  hm2_5i25.0.7i76.0.0.input-16
    12  bit   OUT          TRUE  hm2_5i25.0.7i76.0.0.input-16-not
    12  bit   OUT         FALSE  hm2_5i25.0.7i76.0.0.input-17
    12  bit   OUT          TRUE  hm2_5i25.0.7i76.0.0.input-17-not
    12  bit   OUT         FALSE  hm2_5i25.0.7i76.0.0.input-18
    12  bit   OUT          TRUE  hm2_5i25.0.7i76.0.0.input-18-not
    12  bit   OUT         FALSE  hm2_5i25.0.7i76.0.0.input-19
    12  bit   OUT          TRUE  hm2_5i25.0.7i76.0.0.input-19-not
    12  bit   OUT         FALSE  hm2_5i25.0.7i76.0.0.input-20
    12  bit   OUT          TRUE  hm2_5i25.0.7i76.0.0.input-20-not
    12  bit   OUT         FALSE  hm2_5i25.0.7i76.0.0.input-21
    12  bit   OUT          TRUE  hm2_5i25.0.7i76.0.0.input-21-not
    12  bit   OUT         FALSE  hm2_5i25.0.7i76.0.0.input-22
    12  bit   OUT          TRUE  hm2_5i25.0.7i76.0.0.input-22-not
    12  bit   OUT         FALSE  hm2_5i25.0.7i76.0.0.input-23
    12  bit   OUT          TRUE  hm2_5i25.0.7i76.0.0.input-23-not
    12  bit   OUT         FALSE  hm2_5i25.0.7i76.0.0.input-24
    12  bit   OUT          TRUE  hm2_5i25.0.7i76.0.0.input-24-not
    12  bit   OUT         FALSE  hm2_5i25.0.7i76.0.0.input-25
    12  bit   OUT          TRUE  hm2_5i25.0.7i76.0.0.input-25-not
    12  bit   OUT         FALSE  hm2_5i25.0.7i76.0.0.input-26
    12  bit   OUT          TRUE  hm2_5i25.0.7i76.0.0.input-26-not
    12  bit   OUT         FALSE  hm2_5i25.0.7i76.0.0.input-27
    12  bit   OUT          TRUE  hm2_5i25.0.7i76.0.0.input-27-not
    12  bit   OUT         FALSE  hm2_5i25.0.7i76.0.0.input-28
    12  bit   OUT          TRUE  hm2_5i25.0.7i76.0.0.input-28-not
    12  bit   OUT         FALSE  hm2_5i25.0.7i76.0.0.input-29
    12  bit   OUT          TRUE  hm2_5i25.0.7i76.0.0.input-29-not
    12  bit   OUT         FALSE  hm2_5i25.0.7i76.0.0.input-30
    12  bit   OUT          TRUE  hm2_5i25.0.7i76.0.0.input-30-not
    12  bit   OUT         FALSE  hm2_5i25.0.7i76.0.0.input-31
    12  bit   OUT          TRUE  hm2_5i25.0.7i76.0.0.input-31-not
    12  bit   IN          FALSE  hm2_5i25.0.7i76.0.0.output-00
    12  bit   IN          FALSE  hm2_5i25.0.7i76.0.0.output-01
    12  bit   IN          FALSE  hm2_5i25.0.7i76.0.0.output-02
    12  bit   IN          FALSE  hm2_5i25.0.7i76.0.0.output-03
    12  bit   IN          FALSE  hm2_5i25.0.7i76.0.0.output-04
    12  bit   IN          FALSE  hm2_5i25.0.7i76.0.0.output-05
    12  bit   IN          FALSE  hm2_5i25.0.7i76.0.0.output-06
    12  bit   IN          FALSE  hm2_5i25.0.7i76.0.0.output-07
    12  bit   IN          FALSE  hm2_5i25.0.7i76.0.0.output-08
    12  bit   IN          FALSE  hm2_5i25.0.7i76.0.0.output-09
    12  bit   IN          FALSE  hm2_5i25.0.7i76.0.0.output-10
    12  bit   IN          FALSE  hm2_5i25.0.7i76.0.0.output-11
    12  bit   IN          FALSE  hm2_5i25.0.7i76.0.0.output-12
    12  bit   IN          FALSE  hm2_5i25.0.7i76.0.0.output-13
    12  bit   IN          FALSE  hm2_5i25.0.7i76.0.0.output-14
    12  bit   IN          FALSE  hm2_5i25.0.7i76.0.0.output-15
    12  bit   IN          FALSE  hm2_5i25.0.7i76.0.0.spindir
    12  bit   IN          FALSE  hm2_5i25.0.7i76.0.0.spinena
    12  float IN              0  hm2_5i25.0.7i76.0.0.spinout
    12  s32   OUT             0  hm2_5i25.0.encoder.00.count
    12  s32   OUT             0  hm2_5i25.0.encoder.00.count-latched
    12  bit   I/O         FALSE  hm2_5i25.0.encoder.00.index-enable <=> spindle-index-enable
    12  bit   IN          FALSE  hm2_5i25.0.encoder.00.latch-enable
    12  bit   IN          FALSE  hm2_5i25.0.encoder.00.latch-polarity
    12  float OUT             0  hm2_5i25.0.encoder.00.position ==> spindle-revs
    12  float OUT             0  hm2_5i25.0.encoder.00.position-latched
    12  s32   OUT             0  hm2_5i25.0.encoder.00.rawcounts
    12  s32   OUT             0  hm2_5i25.0.encoder.00.rawlatch
    12  bit   IN          FALSE  hm2_5i25.0.encoder.00.reset
    12  float OUT             0  hm2_5i25.0.encoder.00.velocity ==> spindle-vel-fb
    12  bit   OUT         FALSE  hm2_5i25.0.gpio.000.in
    12  bit   OUT          TRUE  hm2_5i25.0.gpio.000.in_not
    12  bit   OUT         FALSE  hm2_5i25.0.gpio.001.in
    12  bit   OUT          TRUE  hm2_5i25.0.gpio.001.in_not
    12  bit   OUT         FALSE  hm2_5i25.0.gpio.002.in
    12  bit   OUT          TRUE  hm2_5i25.0.gpio.002.in_not
    12  bit   OUT         FALSE  hm2_5i25.0.gpio.003.in
    12  bit   OUT          TRUE  hm2_5i25.0.gpio.003.in_not
    12  bit   OUT          TRUE  hm2_5i25.0.gpio.004.in
    12  bit   OUT         FALSE  hm2_5i25.0.gpio.004.in_not
    12  bit   IN          FALSE  hm2_5i25.0.gpio.004.out
    12  bit   OUT          TRUE  hm2_5i25.0.gpio.005.in
    12  bit   OUT         FALSE  hm2_5i25.0.gpio.005.in_not
    12  bit   IN          FALSE  hm2_5i25.0.gpio.005.out
    12  bit   OUT          TRUE  hm2_5i25.0.gpio.006.in
    12  bit   OUT         FALSE  hm2_5i25.0.gpio.006.in_not
    12  bit   IN          FALSE  hm2_5i25.0.gpio.006.out
    12  bit   OUT          TRUE  hm2_5i25.0.gpio.007.in
    12  bit   OUT         FALSE  hm2_5i25.0.gpio.007.in_not
    12  bit   IN          FALSE  hm2_5i25.0.gpio.007.out
    12  bit   OUT          TRUE  hm2_5i25.0.gpio.008.in
    12  bit   OUT         FALSE  hm2_5i25.0.gpio.008.in_not
    12  bit   IN          FALSE  hm2_5i25.0.gpio.008.out
    12  bit   OUT          TRUE  hm2_5i25.0.gpio.009.in
    12  bit   OUT         FALSE  hm2_5i25.0.gpio.009.in_not
    12  bit   IN          FALSE  hm2_5i25.0.gpio.009.out
    12  bit   OUT          TRUE  hm2_5i25.0.gpio.010.in
    12  bit   OUT         FALSE  hm2_5i25.0.gpio.010.in_not
    12  bit   OUT          TRUE  hm2_5i25.0.gpio.011.in
    12  bit   OUT         FALSE  hm2_5i25.0.gpio.011.in_not
    12  bit   OUT          TRUE  hm2_5i25.0.gpio.012.in
    12  bit   OUT         FALSE  hm2_5i25.0.gpio.012.in_not
    12  bit   IN          FALSE  hm2_5i25.0.gpio.012.out
    12  bit   OUT          TRUE  hm2_5i25.0.gpio.013.in
    12  bit   OUT         FALSE  hm2_5i25.0.gpio.013.in_not
    12  bit   IN          FALSE  hm2_5i25.0.gpio.013.out
    12  bit   OUT         FALSE  hm2_5i25.0.gpio.014.in
    12  bit   OUT          TRUE  hm2_5i25.0.gpio.014.in_not
    12  bit   OUT         FALSE  hm2_5i25.0.gpio.015.in
    12  bit   OUT          TRUE  hm2_5i25.0.gpio.015.in_not
    12  bit   OUT         FALSE  hm2_5i25.0.gpio.016.in
    12  bit   OUT          TRUE  hm2_5i25.0.gpio.016.in_not
    12  bit   OUT          TRUE  hm2_5i25.0.gpio.017.in
    12  bit   OUT         FALSE  hm2_5i25.0.gpio.017.in_not
    12  bit   IN          FALSE  hm2_5i25.0.gpio.017.out
    12  bit   OUT          TRUE  hm2_5i25.0.gpio.018.in
    12  bit   OUT         FALSE  hm2_5i25.0.gpio.018.in_not
    12  bit   IN          FALSE  hm2_5i25.0.gpio.018.out
    12  bit   OUT          TRUE  hm2_5i25.0.gpio.019.in
    12  bit   OUT         FALSE  hm2_5i25.0.gpio.019.in_not
    12  bit   IN          FALSE  hm2_5i25.0.gpio.019.out
    12  bit   OUT          TRUE  hm2_5i25.0.gpio.020.in
    12  bit   OUT         FALSE  hm2_5i25.0.gpio.020.in_not
    12  bit   IN          FALSE  hm2_5i25.0.gpio.020.out
    12  bit   OUT          TRUE  hm2_5i25.0.gpio.021.in
    12  bit   OUT         FALSE  hm2_5i25.0.gpio.021.in_not
    12  bit   IN          FALSE  hm2_5i25.0.gpio.021.out
    12  bit   OUT          TRUE  hm2_5i25.0.gpio.022.in
    12  bit   OUT         FALSE  hm2_5i25.0.gpio.022.in_not
    12  bit   IN          FALSE  hm2_5i25.0.gpio.022.out
    12  bit   OUT          TRUE  hm2_5i25.0.gpio.023.in
    12  bit   OUT         FALSE  hm2_5i25.0.gpio.023.in_not
    12  bit   IN          FALSE  hm2_5i25.0.gpio.023.out
    12  bit   OUT          TRUE  hm2_5i25.0.gpio.024.in ==> min-home-x
    12  bit   OUT         FALSE  hm2_5i25.0.gpio.024.in_not
    12  bit   IN          FALSE  hm2_5i25.0.gpio.024.out
    12  bit   OUT          TRUE  hm2_5i25.0.gpio.025.in ==> min-home-z
    12  bit   OUT         FALSE  hm2_5i25.0.gpio.025.in_not
    12  bit   IN          FALSE  hm2_5i25.0.gpio.025.out
    12  bit   OUT          TRUE  hm2_5i25.0.gpio.026.in ==> max-x
    12  bit   OUT         FALSE  hm2_5i25.0.gpio.026.in_not
    12  bit   IN          FALSE  hm2_5i25.0.gpio.026.out
    12  bit   OUT          TRUE  hm2_5i25.0.gpio.027.in ==> max-z
    12  bit   OUT         FALSE  hm2_5i25.0.gpio.027.in_not
    12  bit   IN          FALSE  hm2_5i25.0.gpio.027.out
    12  bit   OUT          TRUE  hm2_5i25.0.gpio.028.in ==> estop-ext
    12  bit   OUT         FALSE  hm2_5i25.0.gpio.028.in_not
    12  bit   IN          FALSE  hm2_5i25.0.gpio.028.out
    12  bit   OUT          TRUE  hm2_5i25.0.gpio.029.in ==> cycle-start
    12  bit   OUT         FALSE  hm2_5i25.0.gpio.029.in_not
    12  bit   IN          FALSE  hm2_5i25.0.gpio.029.out
    12  bit   OUT          TRUE  hm2_5i25.0.gpio.030.in ==> abort
    12  bit   OUT         FALSE  hm2_5i25.0.gpio.030.in_not
    12  bit   IN          FALSE  hm2_5i25.0.gpio.030.out
    12  bit   OUT          TRUE  hm2_5i25.0.gpio.031.in
    12  bit   OUT         FALSE  hm2_5i25.0.gpio.031.in_not
    12  bit   IN           TRUE  hm2_5i25.0.gpio.031.out <== spindle-brake
    12  bit   OUT         FALSE  hm2_5i25.0.gpio.032.in
    12  bit   OUT          TRUE  hm2_5i25.0.gpio.032.in_not
    12  bit   IN          FALSE  hm2_5i25.0.gpio.032.out <== coolant-mist
    12  bit   OUT          TRUE  hm2_5i25.0.gpio.033.in
    12  bit   OUT         FALSE  hm2_5i25.0.gpio.033.in_not
    12  bit   IN          FALSE  hm2_5i25.0.gpio.033.out
    12  bit   IN          FALSE  hm2_5i25.0.led.CR01
    12  bit   IN          FALSE  hm2_5i25.0.led.CR02
    12  u32   IN     0x00000000  hm2_5i25.0.sserial.channel
    12  u32   IN     0x00000000  hm2_5i25.0.sserial.parameter
    12  u32   IN     0x00000000  hm2_5i25.0.sserial.port
    12  u32   OUT    0x00000000  hm2_5i25.0.sserial.port-0.fault-count
    12  u32   OUT    0x00000001  hm2_5i25.0.sserial.port-0.port_state
    12  bit   IN           TRUE  hm2_5i25.0.sserial.port-0.run
    12  bit   IN          FALSE  hm2_5i25.0.sserial.read
    12  u32   OUT    0x00000000  hm2_5i25.0.sserial.state
    12  u32   IN     0x00000000  hm2_5i25.0.sserial.value
    12  bit   IN          FALSE  hm2_5i25.0.sserial.write
    12  bit   IN          FALSE  hm2_5i25.0.stepgen.00.control-type
    12  s32   OUT             0  hm2_5i25.0.stepgen.00.counts
    12  float OUT             0  hm2_5i25.0.stepgen.00.dbg_err_at_match
    12  float OUT             0  hm2_5i25.0.stepgen.00.dbg_ff_vel
    12  float OUT             0  hm2_5i25.0.stepgen.00.dbg_pos_minus_prev_
    12  float OUT             0  hm2_5i25.0.stepgen.00.dbg_s_to_match
    12  s32   OUT             0  hm2_5i25.0.stepgen.00.dbg_step_rate
    12  float OUT             0  hm2_5i25.0.stepgen.00.dbg_vel_error
    12  bit   IN          FALSE  hm2_5i25.0.stepgen.00.enable <== x-enable
    12  float IN              0  hm2_5i25.0.stepgen.00.position-cmd <== x-pos-cmd
    12  float OUT             0  hm2_5i25.0.stepgen.00.position-fb ==> x-pos-fb
    12  float IN              0  hm2_5i25.0.stepgen.00.velocity-cmd
    12  float OUT             0  hm2_5i25.0.stepgen.00.velocity-fb
    12  bit   IN          FALSE  hm2_5i25.0.stepgen.01.control-type
    12  s32   OUT             0  hm2_5i25.0.stepgen.01.counts
    12  float OUT             0  hm2_5i25.0.stepgen.01.dbg_err_at_match
    12  float OUT             0  hm2_5i25.0.stepgen.01.dbg_ff_vel
    12  float OUT             0  hm2_5i25.0.stepgen.01.dbg_pos_minus_prev_
    12  float OUT             0  hm2_5i25.0.stepgen.01.dbg_s_to_match
    12  s32   OUT             0  hm2_5i25.0.stepgen.01.dbg_step_rate
    12  float OUT             0  hm2_5i25.0.stepgen.01.dbg_vel_error
    12  bit   IN          FALSE  hm2_5i25.0.stepgen.01.enable <== z-enable
    12  float IN              0  hm2_5i25.0.stepgen.01.position-cmd <== z-pos-cmd
    12  float OUT             0  hm2_5i25.0.stepgen.01.position-fb ==> z-pos-fb
    12  float IN              0  hm2_5i25.0.stepgen.01.velocity-cmd
    12  float OUT             0  hm2_5i25.0.stepgen.01.velocity-fb
    12  bit   I/O         FALSE  hm2_5i25.0.watchdog.has_bit
     5  bit   OUT         FALSE  iocontrol.0.coolant-flood ==> coolant-flood
     5  bit   OUT         FALSE  iocontrol.0.coolant-mist ==> coolant-mist
     5  bit   IN           TRUE  iocontrol.0.emc-enable-in <== estop-ext
     5  bit   OUT         FALSE  iocontrol.0.lube
     5  bit   IN          FALSE  iocontrol.0.lube_level
     5  bit   OUT         FALSE  iocontrol.0.tool-change ==> tool-change-request
     5  bit   IN          FALSE  iocontrol.0.tool-changed <== tool-change-confirmed
     5  s32   OUT             0  iocontrol.0.tool-number
     5  s32   OUT             0  iocontrol.0.tool-prep-number ==> tool-number
     5  s32   OUT             0  iocontrol.0.tool-prep-pocket
     5  bit   OUT         FALSE  iocontrol.0.tool-prepare ==> tool-prepare-loopback
     5  bit   IN          FALSE  iocontrol.0.tool-prepared <== tool-prepare-loopback
     5  bit   OUT         FALSE  iocontrol.0.user-enable-out ==> estop-out
     5  bit   OUT         FALSE  iocontrol.0.user-request-enable
     9  float IN              1  motion.adaptive-feed
     9  float IN              0  motion.analog-in-00
     9  float IN              0  motion.analog-in-01
     9  float IN              0  motion.analog-in-02
     9  float IN              0  motion.analog-in-03
     9  float OUT             0  motion.analog-out-00
     9  float OUT             0  motion.analog-out-01
     9  float OUT             0  motion.analog-out-02
     9  float OUT             0  motion.analog-out-03
     9  bit   OUT         FALSE  motion.coord-error
     9  bit   OUT          TRUE  motion.coord-mode
     9  float OUT             0  motion.current-vel
     9  bit   IN          FALSE  motion.digital-in-00
     9  bit   IN          FALSE  motion.digital-in-01
     9  bit   IN          FALSE  motion.digital-in-02
     9  bit   IN          FALSE  motion.digital-in-03
     9  bit   OUT         FALSE  motion.digital-out-00
     9  bit   OUT         FALSE  motion.digital-out-01
     9  bit   OUT         FALSE  motion.digital-out-02
     9  bit   OUT         FALSE  motion.digital-out-03
     9  float OUT             0  motion.distance-to-go
     9  bit   IN           TRUE  motion.enable
     9  bit   IN          FALSE  motion.feed-hold
     9  bit   OUT          TRUE  motion.in-position ==> in-position
     9  bit   IN          FALSE  motion.motion-enabled <== machine-is-enabled
     9  bit   OUT         FALSE  motion.on-soft-limit
     9  bit   IN          FALSE  motion.probe-input <== probe-in
     9  s32   OUT             0  motion.program-line
     9  float OUT             0  motion.requested-vel
     9  bit   IN           TRUE  motion.spindle-at-speed <== spindle-at-speed
     9  bit   OUT          TRUE  motion.spindle-brake ==> spindle-brake
     9  bit   OUT         FALSE  motion.spindle-forward ==> spindle-cw
     9  bit   I/O         FALSE  motion.spindle-index-enable <=> spindle-index-enable
     9  bit   OUT         FALSE  motion.spindle-on ==> spindle-enable
     9  bit   OUT         FALSE  motion.spindle-reverse ==> spindle-ccw
     9  float IN              0  motion.spindle-revs <== spindle-revs
     9  float OUT             0  motion.spindle-speed-cmd-rps
     9  float IN              0  motion.spindle-speed-in <== spindle-vel-fb
     9  float OUT             0  motion.spindle-speed-out ==> spindle-vel-cmd
     9  float OUT             0  motion.spindle-speed-out-rps ==> spindle-vel-cmd-rps
     9  bit   OUT         FALSE  motion.teleop-mode
     9  float OUT             0  motion.tooloffset.a
     9  float OUT             0  motion.tooloffset.b
     9  float OUT             0  motion.tooloffset.c
     9  float OUT             0  motion.tooloffset.u
     9  float OUT             0  motion.tooloffset.v
     9  float OUT             0  motion.tooloffset.w
     9  float OUT             0  motion.tooloffset.x
     9  float OUT             0  motion.tooloffset.y
     9  float OUT             0  motion.tooloffset.z
    13  float I/O             0  pid.s.Dgain
    13  float I/O             0  pid.s.FF0
    13  float I/O             0  pid.s.FF1
    13  float I/O             0  pid.s.FF2
    13  float I/O             0  pid.s.Igain
    13  float I/O             1  pid.s.Pgain
    13  float I/O             0  pid.s.bias
    13  float IN              0  pid.s.command
    13  float IN              0  pid.s.command-deriv
    13  float I/O             0  pid.s.deadband
    13  bit   IN          FALSE  pid.s.enable
    13  float OUT             0  pid.s.error
    13  float IN              0  pid.s.feedback
    13  float IN              0  pid.s.feedback-deriv
    13  bit   IN          FALSE  pid.s.index-enable
    13  float I/O             0  pid.s.maxcmdD
    13  float I/O             0  pid.s.maxcmdDD
    13  float I/O             0  pid.s.maxerror
    13  float I/O             0  pid.s.maxerrorD
    13  float I/O             0  pid.s.maxerrorI
    13  float I/O             0  pid.s.maxoutput
    13  float OUT             0  pid.s.output
    13  bit   OUT         FALSE  pid.s.saturated
    13  s32   OUT             0  pid.s.saturated-count
    13  float OUT             0  pid.s.saturated-s

Pin Aliases:
 Alias                                      Original Name

Signals:
Type          Value  Name     (linked to)
bit           FALSE  MDI-mode
                         <== halui.mode.is-mdi
bit            TRUE  abort
                         <== hm2_5i25.0.gpio.030.in
bit           FALSE  coolant-flood
                         <== iocontrol.0.coolant-flood
bit           FALSE  coolant-mist
                         ==> hm2_5i25.0.gpio.032.out
                         <== iocontrol.0.coolant-mist
bit            TRUE  cycle-start
                         <== hm2_5i25.0.gpio.029.in
bit            TRUE  estop-ext
                         <== hm2_5i25.0.gpio.028.in
                         ==> iocontrol.0.emc-enable-in
bit           FALSE  estop-out
                         <== iocontrol.0.user-enable-out
bit            TRUE  in-position
                         <== motion.in-position
bit           FALSE  jog-selected-neg
                         ==> halui.jog.selected.minus
bit           FALSE  jog-selected-pos
                         ==> halui.jog.selected.plus
float             0  jog-speed
                         ==> halui.jog-speed
float             0  jog-x-analog
                         ==> halui.jog.0.analog
bit           FALSE  jog-x-neg
                         ==> halui.jog.0.minus
bit           FALSE  jog-x-pos
                         ==> halui.jog.0.plus
float             0  jog-z-analog
                         ==> halui.jog.2.analog
bit           FALSE  jog-z-neg
                         ==> halui.jog.2.minus
bit           FALSE  jog-z-pos
                         ==> halui.jog.2.plus
bit           FALSE  joint-select-a
                         ==> halui.joint.0.select
bit           FALSE  joint-select-c
                         ==> halui.joint.2.select
bit           FALSE  machine-is-enabled
                         ==> motion.motion-enabled
bit           FALSE  machine-is-on
                         <== halui.machine.is-on
bit            TRUE  max-x
                         ==> axis.0.pos-lim-sw-in
                         <== hm2_5i25.0.gpio.026.in
bit            TRUE  max-z
                         ==> axis.2.pos-lim-sw-in
                         <== hm2_5i25.0.gpio.027.in
bit            TRUE  min-home-x
                         ==> axis.0.home-sw-in
                         ==> axis.0.neg-lim-sw-in
                         <== hm2_5i25.0.gpio.024.in
bit            TRUE  min-home-z
                         ==> axis.2.home-sw-in
                         ==> axis.2.neg-lim-sw-in
                         <== hm2_5i25.0.gpio.025.in
bit           FALSE  probe-in
                         ==> motion.probe-input
bit            TRUE  spindle-at-speed
                         ==> motion.spindle-at-speed
bit            TRUE  spindle-brake
                         ==> hm2_5i25.0.gpio.031.out
                         <== motion.spindle-brake
bit           FALSE  spindle-ccw
                         <== motion.spindle-reverse
bit           FALSE  spindle-cw
                         <== motion.spindle-forward
bit           FALSE  spindle-enable
                         <== motion.spindle-on
bit           FALSE  spindle-index-enable
                         <=> hm2_5i25.0.encoder.00.index-enable
                         <=> motion.spindle-index-enable
bit           FALSE  spindle-manual-ccw
                         ==> halui.spindle.reverse
bit           FALSE  spindle-manual-cw
                         ==> halui.spindle.forward
bit           FALSE  spindle-manual-stop
                         ==> halui.spindle.stop
float             0  spindle-revs
                         <== hm2_5i25.0.encoder.00.position
                         ==> motion.spindle-revs
float             0  spindle-vel-cmd
                         <== motion.spindle-speed-out
float             0  spindle-vel-cmd-rps
                         <== motion.spindle-speed-out-rps
float             0  spindle-vel-fb
                         <== hm2_5i25.0.encoder.00.velocity
                         ==> motion.spindle-speed-in
bit           FALSE  tool-change-confirmed
                         <== hal_manualtoolchange.changed
                         ==> iocontrol.0.tool-changed
bit           FALSE  tool-change-request
                         ==> hal_manualtoolchange.change
                         <== iocontrol.0.tool-change
s32               0  tool-number
                         ==> hal_manualtoolchange.number
                         <== iocontrol.0.tool-prep-number
bit           FALSE  tool-prepare-loopback
                         <== iocontrol.0.tool-prepare
                         ==> iocontrol.0.tool-prepared
bit           FALSE  x-enable
                         <== axis.0.amp-enable-out
                         ==> hm2_5i25.0.stepgen.00.enable
bit           FALSE  x-is-homed
                         <== halui.joint.0.is-homed
float             0  x-pos-cmd
                         <== axis.0.motor-pos-cmd
                         ==> hm2_5i25.0.stepgen.00.position-cmd
float             0  x-pos-fb
                         ==> axis.0.motor-pos-fb
                         <== hm2_5i25.0.stepgen.00.position-fb
bit           FALSE  z-enable
                         <== axis.2.amp-enable-out
                         ==> hm2_5i25.0.stepgen.01.enable
bit           FALSE  z-is-homed
                         <== halui.joint.2.is-homed
float             0  z-pos-cmd
                         <== axis.2.motor-pos-cmd
                         ==> hm2_5i25.0.stepgen.01.position-cmd
float             0  z-pos-fb
                         ==> axis.2.motor-pos-fb
                         <== hm2_5i25.0.stepgen.01.position-fb

Parameters:
Owner   Type  Dir         Value  Name
     9  s32   RO              0  axis.0.home-state
     9  s32   RO              0  axis.1.home-state
     9  s32   RO              0  axis.2.home-state
    12  bit   RW          FALSE  hm2_5i25.0.7i76.0.0.output-00-invert
    12  bit   RW          FALSE  hm2_5i25.0.7i76.0.0.output-01-invert
    12  bit   RW          FALSE  hm2_5i25.0.7i76.0.0.output-02-invert
    12  bit   RW          FALSE  hm2_5i25.0.7i76.0.0.output-03-invert
    12  bit   RW          FALSE  hm2_5i25.0.7i76.0.0.output-04-invert
    12  bit   RW          FALSE  hm2_5i25.0.7i76.0.0.output-05-invert
    12  bit   RW          FALSE  hm2_5i25.0.7i76.0.0.output-06-invert
    12  bit   RW          FALSE  hm2_5i25.0.7i76.0.0.output-07-invert
    12  bit   RW          FALSE  hm2_5i25.0.7i76.0.0.output-08-invert
    12  bit   RW          FALSE  hm2_5i25.0.7i76.0.0.output-09-invert
    12  bit   RW          FALSE  hm2_5i25.0.7i76.0.0.output-10-invert
    12  bit   RW          FALSE  hm2_5i25.0.7i76.0.0.output-11-invert
    12  bit   RW          FALSE  hm2_5i25.0.7i76.0.0.output-12-invert
    12  bit   RW          FALSE  hm2_5i25.0.7i76.0.0.output-13-invert
    12  bit   RW          FALSE  hm2_5i25.0.7i76.0.0.output-14-invert
    12  bit   RW          FALSE  hm2_5i25.0.7i76.0.0.output-15-invert
    12  u32   RO     0x10000043  hm2_5i25.0.7i76.0.0.serial-number
    12  bit   RW          FALSE  hm2_5i25.0.7i76.0.0.spindir-invert
    12  bit   RW          FALSE  hm2_5i25.0.7i76.0.0.spinena-invert
    12  float RW            100  hm2_5i25.0.7i76.0.0.spinout-maxlim
    12  float RW              0  hm2_5i25.0.7i76.0.0.spinout-minlim
    12  float RW            100  hm2_5i25.0.7i76.0.0.spinout-scalemax
    12  u32   RO     0x00420000  hm2_5i25.0.7i76.0.0.status
    12  bit   RW          FALSE  hm2_5i25.0.encoder.00.counter-mode
    12  bit   RW           TRUE  hm2_5i25.0.encoder.00.filter
    12  bit   RW          FALSE  hm2_5i25.0.encoder.00.index-invert
    12  bit   RW          FALSE  hm2_5i25.0.encoder.00.index-mask
    12  bit   RW          FALSE  hm2_5i25.0.encoder.00.index-mask-invert
    12  float RW           4000  hm2_5i25.0.encoder.00.scale
    12  float RW            0.5  hm2_5i25.0.encoder.00.vel-timeout
    12  bit   RW          FALSE  hm2_5i25.0.gpio.000.invert_output
    12  bit   RW          FALSE  hm2_5i25.0.gpio.000.is_opendrain
    12  bit   RW          FALSE  hm2_5i25.0.gpio.001.invert_output
    12  bit   RW          FALSE  hm2_5i25.0.gpio.001.is_opendrain
    12  bit   RW          FALSE  hm2_5i25.0.gpio.002.invert_output
    12  bit   RW          FALSE  hm2_5i25.0.gpio.002.is_opendrain
    12  bit   RW          FALSE  hm2_5i25.0.gpio.003.invert_output
    12  bit   RW          FALSE  hm2_5i25.0.gpio.003.is_opendrain
    12  bit   RW          FALSE  hm2_5i25.0.gpio.004.invert_output
    12  bit   RW          FALSE  hm2_5i25.0.gpio.004.is_opendrain
    12  bit   RW          FALSE  hm2_5i25.0.gpio.004.is_output
    12  bit   RW          FALSE  hm2_5i25.0.gpio.005.invert_output
    12  bit   RW          FALSE  hm2_5i25.0.gpio.005.is_opendrain
    12  bit   RW          FALSE  hm2_5i25.0.gpio.005.is_output
    12  bit   RW          FALSE  hm2_5i25.0.gpio.006.invert_output
    12  bit   RW          FALSE  hm2_5i25.0.gpio.006.is_opendrain
    12  bit   RW          FALSE  hm2_5i25.0.gpio.006.is_output
    12  bit   RW          FALSE  hm2_5i25.0.gpio.007.invert_output
    12  bit   RW          FALSE  hm2_5i25.0.gpio.007.is_opendrain
    12  bit   RW          FALSE  hm2_5i25.0.gpio.007.is_output
    12  bit   RW          FALSE  hm2_5i25.0.gpio.008.invert_output
    12  bit   RW          FALSE  hm2_5i25.0.gpio.008.is_opendrain
    12  bit   RW          FALSE  hm2_5i25.0.gpio.008.is_output
    12  bit   RW          FALSE  hm2_5i25.0.gpio.009.invert_output
    12  bit   RW          FALSE  hm2_5i25.0.gpio.009.is_opendrain
    12  bit   RW          FALSE  hm2_5i25.0.gpio.009.is_output
    12  bit   RW          FALSE  hm2_5i25.0.gpio.010.invert_output
    12  bit   RW          FALSE  hm2_5i25.0.gpio.010.is_opendrain
    12  bit   RW          FALSE  hm2_5i25.0.gpio.012.invert_output
    12  bit   RW          FALSE  hm2_5i25.0.gpio.012.is_opendrain
    12  bit   RW          FALSE  hm2_5i25.0.gpio.012.is_output
    12  bit   RW          FALSE  hm2_5i25.0.gpio.013.invert_output
    12  bit   RW          FALSE  hm2_5i25.0.gpio.013.is_opendrain
    12  bit   RW          FALSE  hm2_5i25.0.gpio.013.is_output
    12  bit   RW          FALSE  hm2_5i25.0.gpio.017.invert_output
    12  bit   RW          FALSE  hm2_5i25.0.gpio.017.is_opendrain
    12  bit   RW          FALSE  hm2_5i25.0.gpio.017.is_output
    12  bit   RW          FALSE  hm2_5i25.0.gpio.018.invert_output
    12  bit   RW          FALSE  hm2_5i25.0.gpio.018.is_opendrain
    12  bit   RW          FALSE  hm2_5i25.0.gpio.018.is_output
    12  bit   RW          FALSE  hm2_5i25.0.gpio.019.invert_output
    12  bit   RW          FALSE  hm2_5i25.0.gpio.019.is_opendrain
    12  bit   RW          FALSE  hm2_5i25.0.gpio.019.is_output
    12  bit   RW          FALSE  hm2_5i25.0.gpio.020.invert_output
    12  bit   RW          FALSE  hm2_5i25.0.gpio.020.is_opendrain
    12  bit   RW          FALSE  hm2_5i25.0.gpio.020.is_output
    12  bit   RW          FALSE  hm2_5i25.0.gpio.021.invert_output
    12  bit   RW          FALSE  hm2_5i25.0.gpio.021.is_opendrain
    12  bit   RW          FALSE  hm2_5i25.0.gpio.021.is_output
    12  bit   RW          FALSE  hm2_5i25.0.gpio.022.invert_output
    12  bit   RW          FALSE  hm2_5i25.0.gpio.022.is_opendrain
    12  bit   RW          FALSE  hm2_5i25.0.gpio.022.is_output
    12  bit   RW          FALSE  hm2_5i25.0.gpio.023.invert_output
    12  bit   RW          FALSE  hm2_5i25.0.gpio.023.is_opendrain
    12  bit   RW          FALSE  hm2_5i25.0.gpio.023.is_output
    12  bit   RW          FALSE  hm2_5i25.0.gpio.024.invert_output
    12  bit   RW          FALSE  hm2_5i25.0.gpio.024.is_opendrain
    12  bit   RW          FALSE  hm2_5i25.0.gpio.024.is_output
    12  bit   RW          FALSE  hm2_5i25.0.gpio.025.invert_output
    12  bit   RW          FALSE  hm2_5i25.0.gpio.025.is_opendrain
    12  bit   RW          FALSE  hm2_5i25.0.gpio.025.is_output
    12  bit   RW          FALSE  hm2_5i25.0.gpio.026.invert_output
    12  bit   RW          FALSE  hm2_5i25.0.gpio.026.is_opendrain
    12  bit   RW          FALSE  hm2_5i25.0.gpio.026.is_output
    12  bit   RW          FALSE  hm2_5i25.0.gpio.027.invert_output
    12  bit   RW          FALSE  hm2_5i25.0.gpio.027.is_opendrain
    12  bit   RW          FALSE  hm2_5i25.0.gpio.027.is_output
    12  bit   RW          FALSE  hm2_5i25.0.gpio.028.invert_output
    12  bit   RW          FALSE  hm2_5i25.0.gpio.028.is_opendrain
    12  bit   RW          FALSE  hm2_5i25.0.gpio.028.is_output
    12  bit   RW          FALSE  hm2_5i25.0.gpio.029.invert_output
    12  bit   RW          FALSE  hm2_5i25.0.gpio.029.is_opendrain
    12  bit   RW          FALSE  hm2_5i25.0.gpio.029.is_output
    12  bit   RW          FALSE  hm2_5i25.0.gpio.030.invert_output
    12  bit   RW          FALSE  hm2_5i25.0.gpio.030.is_opendrain
    12  bit   RW          FALSE  hm2_5i25.0.gpio.030.is_output
    12  bit   RW          FALSE  hm2_5i25.0.gpio.031.invert_output
    12  bit   RW          FALSE  hm2_5i25.0.gpio.031.is_opendrain
    12  bit   RW           TRUE  hm2_5i25.0.gpio.031.is_output
    12  bit   RW          FALSE  hm2_5i25.0.gpio.032.invert_output
    12  bit   RW          FALSE  hm2_5i25.0.gpio.032.is_opendrain
    12  bit   RW           TRUE  hm2_5i25.0.gpio.032.is_output
    12  bit   RW          FALSE  hm2_5i25.0.gpio.033.invert_output
    12  bit   RW          FALSE  hm2_5i25.0.gpio.033.is_opendrain
    12  bit   RW          FALSE  hm2_5i25.0.gpio.033.is_output
    12  bit   RW          FALSE  hm2_5i25.0.io_error
    12  s32   RO            399  hm2_5i25.0.pet_watchdog.time
    12  s32   RW           5460  hm2_5i25.0.pet_watchdog.tmax
    12  s32   RO          32711  hm2_5i25.0.read.time
    12  s32   RW         146608  hm2_5i25.0.read.tmax
    12  s32   RO              0  hm2_5i25.0.read_gpio.time
    12  s32   RW              0  hm2_5i25.0.read_gpio.tmax
    12  u32   RW     0x00000001  hm2_5i25.0.sserial.port-0.fault-dec
    12  u32   RW     0x0000000A  hm2_5i25.0.sserial.port-0.fault-inc
    12  u32   RW     0x000000C8  hm2_5i25.0.sserial.port-0.fault-lim
    12  u32   RW     0x000003E8  hm2_5i25.0.stepgen.00.dirhold
    12  u32   RW     0x000003E8  hm2_5i25.0.stepgen.00.dirsetup
    12  float RW            2.5  hm2_5i25.0.stepgen.00.maxaccel
    12  float RW            2.1  hm2_5i25.0.stepgen.00.maxvel
    12  float RW            200  hm2_5i25.0.stepgen.00.position-scale
    12  u32   RW     0x00000000  hm2_5i25.0.stepgen.00.step_type
    12  u32   RW     0x000003E8  hm2_5i25.0.stepgen.00.steplen
    12  u32   RW     0x000003E8  hm2_5i25.0.stepgen.00.stepspace
    12  u32   RW     0x000003E8  hm2_5i25.0.stepgen.01.dirhold
    12  u32   RW     0x000003E8  hm2_5i25.0.stepgen.01.dirsetup
    12  float RW            2.5  hm2_5i25.0.stepgen.01.maxaccel
    12  float RW            2.1  hm2_5i25.0.stepgen.01.maxvel
    12  float RW            200  hm2_5i25.0.stepgen.01.position-scale
    12  u32   RW     0x00000000  hm2_5i25.0.stepgen.01.step_type
    12  u32   RW     0x000003E8  hm2_5i25.0.stepgen.01.steplen
    12  u32   RW     0x000003E8  hm2_5i25.0.stepgen.01.stepspace
    12  u32   RW     0x00989680  hm2_5i25.0.watchdog.timeout_ns
    12  s32   RO          12971  hm2_5i25.0.write.time
    12  s32   RW          64001  hm2_5i25.0.write.tmax
    12  s32   RO              0  hm2_5i25.0.write_gpio.time
    12  s32   RW              0  hm2_5i25.0.write_gpio.tmax
     9  s32   RO            441  motion-command-handler.time
     9  s32   RW           8834  motion-command-handler.tmax
     9  s32   RO           9604  motion-controller.time
     9  s32   RW          93044  motion-controller.tmax
     9  bit   RO          FALSE  motion.debug-bit-0
     9  bit   RO          FALSE  motion.debug-bit-1
     9  float RO              1  motion.debug-float-0
     9  float RO              0  motion.debug-float-1
     9  float RO              0  motion.debug-float-2
     9  float RO              1  motion.debug-float-3
     9  s32   RO              0  motion.debug-s32-0
     9  s32   RO              0  motion.debug-s32-1
     9  u32   RO     0x001C7D04  motion.servo.last-period
     9  float RO        1000226  motion.servo.last-period-ns
     9  u32   RW     0x00000000  motion.servo.overruns
    13  s32   RO           1015  pid.s.do-pid-calcs.time
    13  s32   RW          12866  pid.s.do-pid-calcs.tmax
     9  float RO              0  tc.0.acc
     9  float RO              0  tc.0.pos
     9  float RO              0  tc.0.vel
     9  float RO              0  tc.1.acc
     9  float RO              0  tc.1.pos
     9  float RO              0  tc.1.vel
     9  float RO              0  tc.2.acc
     9  float RO              0  tc.2.pos
     9  float RO              0  tc.2.vel
     9  float RO              0  tc.3.acc
     9  float RO              0  tc.3.pos
     9  float RO              0  tc.3.vel
     9  u32   RO     0x00000000  traj.active_tc
     9  float RO              0  traj.pos_out
     9  float RO              0  traj.vel_out

Parameter Aliases:
 Alias                                      Original Name

Exported Functions:
Owner   CodeAddr  Arg       FP   Users  Name
 00012  f95c3552  f50ea000  NO       1   hm2_5i25.0.pet_watchdog
 00012  f95b59dc  f50ea000  YES      1   hm2_5i25.0.read
 00012  f95b5906  f50ea000  YES      0   hm2_5i25.0.read_gpio
 00012  f95b5936  f50ea000  YES      1   hm2_5i25.0.write
 00012  f95b58d6  f50ea000  YES      0   hm2_5i25.0.write_gpio
 00009  f92e9759  00000000  YES      1   motion-command-handler
 00009  f92ebcb2  00000000  YES      1   motion-controller
 00013  f809d000  f9282918  YES      1   pid.s.do-pid-calcs

Realtime Threads:
     Period  FP     Name               (     Time, Max-Time )
     999815  YES          servo-thread (    57141,   320047 )
                  1 hm2_5i25.0.read
                  2 motion-command-handler
                  3 motion-controller
                  4 pid.s.do-pid-calcs
                  5 hm2_5i25.0.write
                  6 hm2_5i25.0.pet_watchdog
ну и hal

Код: Выделить всё

# Generated by PNCconf at Fri Oct 30 16:16:49 2015
# Все изменения в этом файле будут перезаписаны
# overwritten when you run PNCconf again

loadrt trivkins
loadrt [EMCMOT]EMCMOT servo_period_nsec=[EMCMOT]SERVO_PERIOD num_joints=[TRAJ]AXES
loadrt probe_parport
loadrt hostmot2
loadrt hm2_pci config=" num_encoders=1 num_pwmgens=0 num_3pwmgens=0 num_stepgens=2 sserial_port_0=00xxxxxx " 
setp     hm2_5i25.0.watchdog.timeout_ns 10000000
loadrt pid names=pid.s

addf hm2_5i25.0.read servo-thread
addf motion-command-handler servo-thread
addf motion-controller servo-thread
addf pid.s.do-pid-calcs servo-thread
addf hm2_5i25.0.write         servo-thread
addf hm2_5i25.0.pet_watchdog  servo-thread

# external output signals

# --- SPINDLE-BRAKE ---
setp hm2_5i25.0.gpio.031.is_output true
net spindle-brake hm2_5i25.0.gpio.031.out

# --- COOLANT-MIST ---
setp hm2_5i25.0.gpio.032.is_output true
net coolant-mist hm2_5i25.0.gpio.032.out


# external input signals

# --- MIN-HOME-X ---
net min-home-x     <=  hm2_5i25.0.gpio.024.in

# --- MIN-HOME-Z ---
net min-home-z     <=  hm2_5i25.0.gpio.025.in

# --- MAX-X ---
net max-x     <=  hm2_5i25.0.gpio.026.in

# --- MAX-Z ---
net max-z     <=  hm2_5i25.0.gpio.027.in

# --- ESTOP-EXT ---
net estop-ext     <=  hm2_5i25.0.gpio.028.in

# --- CYCLE-START ---
net cycle-start     <=  hm2_5i25.0.gpio.029.in

# --- ABORT ---
net abort     <=  hm2_5i25.0.gpio.030.in


#*******************
#  AXIS X
#*******************

# Step Gen signals/setup

setp   hm2_5i25.0.stepgen.00.dirsetup        [AXIS_0]DIRSETUP
setp   hm2_5i25.0.stepgen.00.dirhold         [AXIS_0]DIRHOLD
setp   hm2_5i25.0.stepgen.00.steplen         [AXIS_0]STEPLEN
setp   hm2_5i25.0.stepgen.00.stepspace       [AXIS_0]STEPSPACE
setp   hm2_5i25.0.stepgen.00.position-scale  [AXIS_0]STEP_SCALE
setp   hm2_5i25.0.stepgen.00.step_type        0
setp   hm2_5i25.0.stepgen.00.control-type     0
setp   hm2_5i25.0.stepgen.00.maxaccel         2.5
setp   hm2_5i25.0.stepgen.00.maxvel           2.1

net x-pos-fb     axis.0.motor-pos-fb   <=  hm2_5i25.0.stepgen.00.position-fb
net x-pos-cmd    axis.0.motor-pos-cmd  =>  hm2_5i25.0.stepgen.00.position-cmd
net x-enable     axis.0.amp-enable-out =>  hm2_5i25.0.stepgen.00.enable

# ---setup home / limit switch signals---

net min-home-x     =>  axis.0.home-sw-in
net min-home-x     =>  axis.0.neg-lim-sw-in
net max-x     =>  axis.0.pos-lim-sw-in

#*******************
#  AXIS Z
#*******************

# Step Gen signals/setup

setp   hm2_5i25.0.stepgen.01.dirsetup        [AXIS_2]DIRSETUP
setp   hm2_5i25.0.stepgen.01.dirhold         [AXIS_2]DIRHOLD
setp   hm2_5i25.0.stepgen.01.steplen         [AXIS_2]STEPLEN
setp   hm2_5i25.0.stepgen.01.stepspace       [AXIS_2]STEPSPACE
setp   hm2_5i25.0.stepgen.01.position-scale  [AXIS_2]STEP_SCALE
setp   hm2_5i25.0.stepgen.01.step_type        0
setp   hm2_5i25.0.stepgen.01.control-type     0
setp   hm2_5i25.0.stepgen.01.maxaccel         2.5
setp   hm2_5i25.0.stepgen.01.maxvel           2.1

net z-pos-fb     axis.2.motor-pos-fb   <=  hm2_5i25.0.stepgen.01.position-fb
net z-pos-cmd    axis.2.motor-pos-cmd  =>  hm2_5i25.0.stepgen.01.position-cmd
net z-enable     axis.2.amp-enable-out =>  hm2_5i25.0.stepgen.01.enable

# ---setup home / limit switch signals---

net min-home-z     =>  axis.2.home-sw-in
net min-home-z     =>  axis.2.neg-lim-sw-in
net max-z     =>  axis.2.pos-lim-sw-in

#*******************
#  SPINDLE S
#*******************

# ---Encoder feedback signals/setup---

setp    hm2_5i25.0.encoder.00.counter-mode 0
setp    hm2_5i25.0.encoder.00.filter 1
setp    hm2_5i25.0.encoder.00.index-invert 0
setp    hm2_5i25.0.encoder.00.index-mask 0
setp    hm2_5i25.0.encoder.00.index-mask-invert 0
setp    hm2_5i25.0.encoder.00.scale  [SPINDLE_9]ENCODER_SCALE

net spindle-revs              <=  hm2_5i25.0.encoder.00.position
net spindle-vel-fb            <=  hm2_5i25.0.encoder.00.velocity
net spindle-index-enable     <=>  hm2_5i25.0.encoder.00.index-enable

# ---setup spindle control signals---

net spindle-vel-cmd-rps    <=  motion.spindle-speed-out-rps
net spindle-vel-cmd        <=  motion.spindle-speed-out
net spindle-enable         <=  motion.spindle-on
net spindle-cw             <=  motion.spindle-forward
net spindle-ccw            <=  motion.spindle-reverse
net spindle-brake          <=  motion.spindle-brake
net spindle-revs           =>  motion.spindle-revs
net spindle-at-speed       =>  motion.spindle-at-speed
net spindle-vel-fb         =>  motion.spindle-speed-in
net spindle-index-enable  <=>  motion.spindle-index-enable

# ---Setup spindle at speed signals---

sets spindle-at-speed true


#******************************
# connect miscellaneous signals
#******************************

#  ---HALUI signals---

net joint-select-a        halui.joint.0.select
net x-is-homed            halui.joint.0.is-homed
net jog-x-pos             halui.jog.0.plus
net jog-x-neg             halui.jog.0.minus
net jog-x-analog          halui.jog.0.analog
net joint-select-c        halui.joint.2.select
net z-is-homed            halui.joint.2.is-homed
net jog-z-pos             halui.jog.2.plus
net jog-z-neg             halui.jog.2.minus
net jog-z-analog          halui.jog.2.analog
net jog-selected-pos      halui.jog.selected.plus
net jog-selected-neg      halui.jog.selected.minus
net spindle-manual-cw     halui.spindle.forward
net spindle-manual-ccw    halui.spindle.reverse
net spindle-manual-stop   halui.spindle.stop
net machine-is-on         halui.machine.is-on
net jog-speed             halui.jog-speed 
net MDI-mode              halui.mode.is-mdi

#  ---coolant signals---

net coolant-mist      <=  iocontrol.0.coolant-mist
net coolant-flood     <=  iocontrol.0.coolant-flood

#  ---probe signal---

net probe-in     =>  motion.probe-input

#  ---motion control signals---

net in-position               <=  motion.in-position
net machine-is-enabled        <=  motion.motion-enabled

#  ---digital in / out signals---

#  ---estop signals---

net estop-out     <=  iocontrol.0.user-enable-out
net estop-ext     =>  iocontrol.0.emc-enable-in

#  ---manual tool change signals---

loadusr -W hal_manualtoolchange
net tool-change-request     iocontrol.0.tool-change       =>  hal_manualtoolchange.change
net tool-change-confirmed   iocontrol.0.tool-changed      <=  hal_manualtoolchange.changed
net tool-number             iocontrol.0.tool-prep-number  =>  hal_manualtoolchange.number
net tool-prepare-loopback   iocontrol.0.tool-prepare      =>  iocontrol.0.tool-prepared
ini

Код: Выделить всё

# Generated by PNCconf at Fri Oct 30 16:15:16 2015
# Все изменения в этом файле будут перезаписаны
# overwritten when you run PNCconf again

[EMC]
MACHINE = htc_cnc
DEBUG = 0

[DISPLAY]
DISPLAY = axis
POSITION_OFFSET = RELATIVE
POSITION_FEEDBACK = ACTUAL
MAX_FEED_OVERRIDE = 2.000000
MAX_SPINDLE_OVERRIDE = 1.000000
MIN_SPINDLE_OVERRIDE = 0.500000
INTRO_GRAPHIC = linuxcnc.gif
INTRO_TIME = 5
PROGRAM_PREFIX = /home/ihter/linuxcnc/nc_files
INCREMENTS = 5mm 1mm .5mm .1mm .05mm .01mm .005mm
LATHE = 1
POSITION_OFFSET = RELATIVE
POSITION_FEEDBACK = ACTUAL
DEFAULT_LINEAR_VELOCITY = 0.250000
MAX_LINEAR_VELOCITY = 1.000000
MIN_LINEAR_VELOCITY = 0.010000
DEFAULT_ANGULAR_VELOCITY = 0.250000
MAX_ANGULAR_VELOCITY = 1.000000
MIN_ANGULAR_VELOCITY = 0.010000
EDITOR = gedit
GEOMETRY = xyz

[FILTER]
PROGRAM_EXTENSION = .png,.gif,.jpg Greyscale Depth Image
PROGRAM_EXTENSION = .py Python Script
png = image-to-gcode
gif = image-to-gcode
jpg = image-to-gcode
py = python

[TASK]
TASK = milltask
CYCLE_TIME = 0.010

[RS274NGC]
PARAMETER_FILE = linuxcnc.var

[EMCMOT]
EMCMOT = motmod
COMM_TIMEOUT = 1.0
COMM_WAIT = 0.010
SERVO_PERIOD = 1000000

[HOSTMOT2]
# **** This is for info only ****
# DRIVER0=hm2_pci
# BOARD0=5i25

[HAL]
HALUI = halui
HALFILE = htc_cnc.hal
HALFILE = custom.hal
POSTGUI_HALFILE = postgui_call_list.hal
SHUTDOWN = shutdown.hal

[HALUI]

[TRAJ]
AXES = 3
COORDINATES = X Z
LINEAR_UNITS = mm
ANGULAR_UNITS = degree
CYCLE_TIME = 0.010
DEFAULT_VELOCITY = 0.17
MAX_LINEAR_VELOCITY = 1.67

[EMCIO]
EMCIO = io
CYCLE_TIME = 0.100
TOOL_TABLE = tool.tbl

#********************
# Axis X
#********************
[AXIS_0]
TYPE = LINEAR
HOME = 5.0
FERROR = 0.005
MIN_FERROR = 0.0005
MAX_VELOCITY = 1.667
MAX_ACCELERATION = 2.0
# these are in nanoseconds
DIRSETUP   = 1000
DIRHOLD    = 1000
STEPLEN    = 1000
STEPSPACE  = 1000
STEP_SCALE = 200.0
MIN_LIMIT = -5.0
MAX_LIMIT = 5.01
HOME_OFFSET = 5.000000
HOME_SEARCH_VEL = -0.050000
HOME_LATCH_VEL = -0.016667
HOME_FINAL_VEL = 0.000000
HOME_USE_INDEX = NO
HOME_IGNORE_LIMITS = YES
HOME_SEQUENCE = 1

#********************
# Axis Z
#********************
[AXIS_2]
TYPE = LINEAR
HOME = 10.0
FERROR = 0.005
MIN_FERROR = 0.0005
MAX_VELOCITY = 1.667
MAX_ACCELERATION = 2.0
# these are in nanoseconds
DIRSETUP   = 1000
DIRHOLD    = 1000
STEPLEN    = 1000
STEPSPACE  = 1000
STEP_SCALE = 200.0
MIN_LIMIT = -10.0
MAX_LIMIT = 10.01
HOME_OFFSET = 10.000000
HOME_SEARCH_VEL = -0.050000
HOME_LATCH_VEL = -0.016667
HOME_FINAL_VEL = 0.000000
HOME_USE_INDEX = NO
HOME_IGNORE_LIMITS = YES
HOME_SEQUENCE = 0

#********************
# Spindle 
#********************
[SPINDLE_9]
ENCODER_SCALE = 4000.0
OUTPUT_SCALE = 10.0
прошу по возможности ответить , ну или закидать ссылками. спасибо.
plotik
Мастер
Сообщения: 428
Зарегистрирован: 10 май 2012, 15:30
Репутация: 33
Настоящее имя: Евгений
Откуда: Rostov-on-Don
Контактная информация:

Re: MESA 5i25+7i76+7i77

Сообщение plotik »

Тоже сижу разбираюсь. Сейчас плату паяю--согласно поста вышесказанного Сергеем.
Все джамперы(5i25+7i76) стояли по дефолту с завода--перепроверил по ману. Питание подключил как на картинке. Для меня пока непонятно по разъёму TB1 на что влияет 5-ый пин LOGIC POWER--поэтому не подключал. Путём научного тыкаhttp://linuxcnc.org/docs/html/hal/basic_hal.html и тестера определил номера выходов--а именно командой
setp hm2_5i25.0.7i76.0.0.pinout-00 TRUE
Название hm2.... дословно не помню но то что там присутствовало 7i76 и номер пина это точно.
Вложения
mesa7i76.png (6203 просмотра) <a class='original' href='./download/file.php?id=62459&sid=388c3a55fffe8e08df68785fe3253b72&mode=view' target=_blank>Загрузить оригинал (847.82 КБ)</a>
"Ты не дрыгайся! Показывай свою гравицаппу. Если фирменная вещь — возьмём!"
"А этот паца́к все время говорит на языках, продолжения которых не знает!"
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: MESA 5i25+7i76+7i77

Сообщение Nick »

На сколько я понимаю, можно задать отдельное питание логики модуля Field IO. По дефолту, он подключен к общему питанию VFIELD (перемычка W1). Внизу в доках есть параметры питания Field IO - там стоит 5-32В, а у vin - 8-32. Может для этого.
Ответить

Вернуться в «MESA»