7i76e start up error

More
5 years 3 months ago #214864 by kelargo
7i76e start up error was created by kelargo
hello,

setting up my 7i76e.. and I just have a basic pncconf config. so there might be something in this causing the error.

I error I see is this, after launching linuxcnc. 
Code:
hm2/hm2_7i76e.0: error finishing read! iter=466 hm2/hm2_7i76e.0: error finishing read! iter=466

What does this error mean?  what causes it?  
it seems to generates the same error message with different numbers, such as  636, 384, 518 or 466.


full launch from the cmd line
Code:
papa@linuxcnc:~$ linuxcnc -v -d -l  Verbose mode on Debug mode on + getopts dvlhkr opt + case "$opt" in + USE_LAST_INIFILE=1 + getopts dvlhkr opt + shift 3 + case "" in + '[' -z ']' + tty -s + trap ErrorCheck EXIT + '[' '!' -z '' ']' + EXTRA_ARGS= + RUN_IN_PLACE=no + echo RUN_IN_PLACE=no RUN_IN_PLACE=no + LINUXCNCVERSION=2.8.2 + export LINUXCNCVERSION + INIVAR=inivar + HALCMD='halcmd ' + PICKCONFIG='/usr/bin/wish8.6 /usr/lib/tcltk/linuxcnc/bin/pickconfig.tcl' + LINUXCNC_EMCSH=/usr/bin/wish8.6 + echo LINUXCNC_DIR= LINUXCNC_DIR= + echo LINUXCNC_BIN_DIR=/usr/bin LINUXCNC_BIN_DIR=/usr/bin + echo LINUXCNC_TCL_DIR=/usr/lib/tcltk/linuxcnc LINUXCNC_TCL_DIR=/usr/lib/tcltk/linuxcnc + echo LINUXCNC_SCRIPT_DIR= LINUXCNC_SCRIPT_DIR= + echo LINUXCNC_RTLIB_DIR=/usr/lib/linuxcnc/modules LINUXCNC_RTLIB_DIR=/usr/lib/linuxcnc/modules + echo LINUXCNC_CONFIG_DIR= LINUXCNC_CONFIG_DIR= + echo LINUXCNC_LANG_DIR=/usr/lib/tcltk/linuxcnc/msgs LINUXCNC_LANG_DIR=/usr/lib/tcltk/linuxcnc/msgs + echo INIVAR=inivar INIVAR=inivar + echo HALCMD=halcmd HALCMD=halcmd + echo LINUXCNC_EMCSH=/usr/bin/wish8.6 LINUXCNC_EMCSH=/usr/bin/wish8.6 + export LINUXCNC_TCL_DIR + export LINUXCNC_EMCSH + export LINUXCNC_HELP_DIR + export LINUXCNC_LANG_DIR + export REALTIME + export HALCMD + export LINUXCNC_NCFILES_DIR + '[' -z ']' + echo 'LINUXCNC - 2.8.2' LINUXCNC - 2.8.2 + '[' '!' -z 1 ']' ++ inivar -ini /home/papa/.linuxcncrc -var LAST_CONFIG -sec PICKCONFIG + INIFILE=/home/papa/linuxcnc/configs/my_LinuxCNC_machine/my_LinuxCNC_machine.ini + echo 'Using previous inifile: /home/papa/linuxcnc/configs/my_LinuxCNC_machine/my_LinuxCNC_machine.ini' Using previous inifile: /home/papa/linuxcnc/configs/my_LinuxCNC_machine/my_LinuxCNC_machine.ini + '[' '!' -n /home/papa/linuxcnc/configs/my_LinuxCNC_machine/my_LinuxCNC_machine.ini ']' + '[' '!' -n /home/papa/linuxcnc/configs/my_LinuxCNC_machine/my_LinuxCNC_machine.ini ']' ++ handle_includes /home/papa/linuxcnc/configs/my_LinuxCNC_machine/my_LinuxCNC_machine.ini ++ hdr='# handle_includes():' ++ inifile=/home/papa/linuxcnc/configs/my_LinuxCNC_machine/my_LinuxCNC_machine.ini +++ dirname /home/papa/linuxcnc/configs/my_LinuxCNC_machine/my_LinuxCNC_machine.ini ++ cd /home/papa/linuxcnc/configs/my_LinuxCNC_machine ++ /bin/grep '^#INCLUDE' /home/papa/linuxcnc/configs/my_LinuxCNC_machine/my_LinuxCNC_machine.ini ++ status=1 ++ '[' 1 -ne 0 ']' ++ echo /home/papa/linuxcnc/configs/my_LinuxCNC_machine/my_LinuxCNC_machine.ini ++ return 0 + INIFILE=/home/papa/linuxcnc/configs/my_LinuxCNC_machine/my_LinuxCNC_machine.ini + INI_NAME=my_LinuxCNC_machine.ini + INI_DIR=/home/papa/linuxcnc/configs/my_LinuxCNC_machine + CONFIG_DIR=/home/papa/linuxcnc/configs/my_LinuxCNC_machine + export CONFIG_DIR + export PATH=/home/papa/linuxcnc/configs/my_LinuxCNC_machine/bin:/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games + PATH=/home/papa/linuxcnc/configs/my_LinuxCNC_machine/bin:/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games + '[' -z ']' + echo 'Machine configuration directory is '\''/home/papa/linuxcnc/configs/my_LinuxCNC_machine'\''' Machine configuration directory is '/home/papa/linuxcnc/configs/my_LinuxCNC_machine' + echo 'Machine configuration file is '\''my_LinuxCNC_machine.ini'\''' Machine configuration file is 'my_LinuxCNC_machine.ini' + '[' '!' -f /home/papa/linuxcnc/configs/my_LinuxCNC_machine/my_LinuxCNC_machine.ini ']' + echo INIFILE=/home/papa/linuxcnc/configs/my_LinuxCNC_machine/my_LinuxCNC_machine.ini INIFILE=/home/papa/linuxcnc/configs/my_LinuxCNC_machine/my_LinuxCNC_machine.ini + retval= + GetFromIni VERSION EMC + name=VERSION ++ inivar -ini /home/papa/linuxcnc/configs/my_LinuxCNC_machine/my_LinuxCNC_machine.ini -var VERSION -sec EMC + retval=1.1 + '[' '!' -n VERSION ']' + echo VERSION=1.1 VERSION=1.1 + '[' 1.1 '!=' 1.1 ']' + /usr/bin/tclsh8.6 /usr/share/linuxcnc/hallib/check_config.tcl /home/papa/linuxcnc/configs/my_LinuxCNC_machine/my_LinuxCNC_machine.ini + exitval=0 + case "$exitval" in + GetFromIni PARAMETER_FILE RS274NGC + name=PARAMETER_FILE ++ inivar -ini /home/papa/linuxcnc/configs/my_LinuxCNC_machine/my_LinuxCNC_machine.ini -var PARAMETER_FILE -sec RS274NGC + retval=linuxcnc.var + '[' '!' -n PARAMETER_FILE ']' + echo PARAMETER_FILE=linuxcnc.var PARAMETER_FILE=linuxcnc.var + RS274NGC_PARAMFILE=linuxcnc.var + GetFromIniEx MOT MOT EMCMOT EMCMOT motmod + original_var='[MOT]MOT' + '[' 5 -ge 2 ']' ++ inivar -ini /home/papa/linuxcnc/configs/my_LinuxCNC_machine/my_LinuxCNC_machine.ini -var MOT -sec MOT + retval= + shift 2 + '[' 3 -ge 2 ']' ++ inivar -ini /home/papa/linuxcnc/configs/my_LinuxCNC_machine/my_LinuxCNC_machine.ini -var EMCMOT -sec EMCMOT + retval=motmod + return + EMCMOT=motmod.so + GetFromIniEx IO IO EMCIO EMCIO io + original_var='[IO]IO' + '[' 5 -ge 2 ']' ++ inivar -ini /home/papa/linuxcnc/configs/my_LinuxCNC_machine/my_LinuxCNC_machine.ini -var IO -sec IO + retval= + shift 2 + '[' 3 -ge 2 ']' ++ inivar -ini /home/papa/linuxcnc/configs/my_LinuxCNC_machine/my_LinuxCNC_machine.ini -var EMCIO -sec EMCIO + retval=io + return + EMCIO=io + GetFromIni TASK TASK + name=TASK ++ inivar -ini /home/papa/linuxcnc/configs/my_LinuxCNC_machine/my_LinuxCNC_machine.ini -var TASK -sec TASK + retval=milltask + '[' '!' -n TASK ']' + echo TASK=milltask TASK=milltask + EMCTASK=milltask + '[' milltask = emctask ']' + EMCSERVER=linuxcncsvr + GetFromIniQuiet HALUI HAL + name=HALUI ++ inivar -ini /home/papa/linuxcnc/configs/my_LinuxCNC_machine/my_LinuxCNC_machine.ini -var HALUI -sec HAL + retval=halui + '[' '!' -n HALUI ']' + echo HALUI=halui HALUI=halui + HALUI=halui + GetFromIni DISPLAY DISPLAY + name=DISPLAY ++ inivar -ini /home/papa/linuxcnc/configs/my_LinuxCNC_machine/my_LinuxCNC_machine.ini -var DISPLAY -sec DISPLAY + retval=axis + '[' '!' -n DISPLAY ']' + echo DISPLAY=axis DISPLAY=axis ++ set -- axis ++ echo axis + EMCDISPLAY=axis ++ set -- axis ++ shift ++ echo + EMCDISPLAYARGS= + case $EMCDISPLAY in + GetFromIniEx NML_FILE LINUXCNC NML_FILE EMC /usr/share/linuxcnc/linuxcnc.nml + original_var='[LINUXCNC]NML_FILE' + '[' 5 -ge 2 ']' ++ inivar -ini /home/papa/linuxcnc/configs/my_LinuxCNC_machine/my_LinuxCNC_machine.ini -var NML_FILE -sec LINUXCNC + retval= + shift 2 + '[' 3 -ge 2 ']' ++ inivar -ini /home/papa/linuxcnc/configs/my_LinuxCNC_machine/my_LinuxCNC_machine.ini -var NML_FILE -sec EMC + retval= + shift 2 + '[' 1 -ge 2 ']' + '[' 1 -eq 0 ']' + retval=/usr/share/linuxcnc/linuxcnc.nml + NMLFILE=/usr/share/linuxcnc/linuxcnc.nml + export NMLFILE + GetFromIni COORDINATES TRAJ + name=COORDINATES ++ inivar -ini /home/papa/linuxcnc/configs/my_LinuxCNC_machine/my_LinuxCNC_machine.ini -var COORDINATES -sec TRAJ + retval=XXYZ + '[' '!' -n COORDINATES ']' + echo COORDINATES=XXYZ COORDINATES=XXYZ + TRAJ_COORDINATES=XXYZ + export TRAJ_COORDINATES + GetFromIni KINEMATICS KINS + name=KINEMATICS ++ inivar -ini /home/papa/linuxcnc/configs/my_LinuxCNC_machine/my_LinuxCNC_machine.ini -var KINEMATICS -sec KINS + retval='trivkins coordinates=XXYZ kinstype=BOTH' + '[' '!' -n KINEMATICS ']' + echo 'KINEMATICS=trivkins coordinates=XXYZ kinstype=BOTH' KINEMATICS=trivkins coordinates=XXYZ kinstype=BOTH + KINS_KINEMATICS='trivkins coordinates=XXYZ kinstype=BOTH' + export KINS_KINEMATICS + KILL_TASK= + KILL_TIMEOUT=20 + LOCKFILE=/tmp/linuxcnc.lock + '[' -f /tmp/linuxcnc.lock ']' + echo Starting LinuxCNC... Starting LinuxCNC... + trap 'Cleanup ; exit 0' SIGINT SIGTERM + cd /home/papa/linuxcnc/configs/my_LinuxCNC_machine + touch /tmp/linuxcnc.lock ++ inivar -ini /home/papa/linuxcnc/configs/my_LinuxCNC_machine/my_LinuxCNC_machine.ini -var INTRO_GRAPHIC -sec DISPLAY + img=linuxcnc.gif ++ inivar -ini /home/papa/linuxcnc/configs/my_LinuxCNC_machine/my_LinuxCNC_machine.ini -var INTRO_TIME -sec DISPLAY + imgtime=5 + '[' 5 = '' ']' + '[' linuxcnc.gif '!=' '' ']' + '[' -e linuxcnc.gif ']' + '[' -e /home/papa/linuxcnc/configs/my_LinuxCNC_machine/linuxcnc.gif ']' + '[' -e /usr/share/linuxcnc/linuxcnc.gif ']' + img=/usr/share/linuxcnc/linuxcnc.gif + '[' /usr/share/linuxcnc/linuxcnc.gif '!=' '' ']' + '[' -x /usr/lib/tcltk/linuxcnc/bin/popimage ']' + /usr/lib/tcltk/linuxcnc/bin/popimage /usr/share/linuxcnc/linuxcnc.gif 5 + echo 'Starting LinuxCNC server program: linuxcncsvr' Starting LinuxCNC server program: linuxcncsvr + program_available linuxcncsvr + type -path linuxcncsvr + export INI_FILE_NAME=/home/papa/linuxcnc/configs/my_LinuxCNC_machine/my_LinuxCNC_machine.ini + INI_FILE_NAME=/home/papa/linuxcnc/configs/my_LinuxCNC_machine/my_LinuxCNC_machine.ini + linuxcncsvr -ini /home/papa/linuxcnc/configs/my_LinuxCNC_machine/my_LinuxCNC_machine.ini + echo 'Loading Real Time OS, RTAPI, and HAL_LIB modules' Loading Real Time OS, RTAPI, and HAL_LIB modules + /etc/init.d/realtime start + export HAL_RTMOD_DIR=/usr/lib/linuxcnc/modules + HAL_RTMOD_DIR=/usr/lib/linuxcnc/modules + '[' io '!=' '' ']' + echo 'Starting LinuxCNC IO program: io' Starting LinuxCNC IO program: io + program_available io + type -path io + halcmd loadusr -Wn iocontrol io -ini /home/papa/linuxcnc/configs/my_LinuxCNC_machine/my_LinuxCNC_machine.ini + '[' -n halui ']' + echo 'Starting HAL User Interface program: halui' Starting HAL User Interface program: halui + program_available halui + type -path halui + halcmd loadusr -Wn halui halui -ini /home/papa/linuxcnc/configs/my_LinuxCNC_machine/my_LinuxCNC_machine.ini ++ inivar -ini /home/papa/linuxcnc/configs/my_LinuxCNC_machine/my_LinuxCNC_machine.ini -var TWOPASS -sec HAL -num 1 + TWOPASS= + '[' -n '' ']' + NUM=1 ++ inivar -tildeexpand -ini /home/papa/linuxcnc/configs/my_LinuxCNC_machine/my_LinuxCNC_machine.ini -var HALFILE -sec HAL -num 1 + CFGFILE=my_LinuxCNC_machine.hal + '[' -n my_LinuxCNC_machine.hal ']' + IFS='\ ' + read CFGFILE CFGFILE_ARGS + foundmsg= + saveIFS='      ' + IFS=: + explicit_file_in_hallib=my_LinuxCNC_machine.hal + '[' -z my_LinuxCNC_machine.hal ']' + '[' my_LinuxCNC_machine.hal '!=' my_LinuxCNC_machine.hal ']' + '[' m = / ']' + for pathdir in $HALLIB_PATH + foundfile=./my_LinuxCNC_machine.hal + '[' -r ./my_LinuxCNC_machine.hal ']' + '[' . = . ']' + foundmsg='Found file(REL): ./my_LinuxCNC_machine.hal' + break + '[' -d ./my_LinuxCNC_machine.hal ']' + IFS='      ' + '[' -z 'Found file(REL): ./my_LinuxCNC_machine.hal' ']' + echo 'Found file(REL): ./my_LinuxCNC_machine.hal' Found file(REL): ./my_LinuxCNC_machine.hal + CFGFILE=./my_LinuxCNC_machine.hal + case $CFGFILE in + halcmd -i /home/papa/linuxcnc/configs/my_LinuxCNC_machine/my_LinuxCNC_machine.ini -f ./my_LinuxCNC_machine.hal Note: Using POSIX realtime hm2: loading Mesa HostMot2 driver version 0.15 hm2_eth: loading Mesa AnyIO HostMot2 ethernet driver version 0.2 hm2_eth: 10.10.10.121: INFO: Hardware address (MAC): 00:60:1b:10:4a:a4 hm2_eth: discovered 7I76E-16 hm2/hm2_7i76e.0: Low Level init 0.15 hm2/hm2_7i76e.0: Smart Serial Firmware Version 43 Board hm2_7i76e.0.7i76.0.0 Hardware Mode 0 = standard Board hm2_7i76e.0.7i76.0.0 Software Mode 0 = io_spin Board hm2_7i76e.0.7i76.0.0 Software Mode 1 = io_ana_spin Board hm2_7i76e.0.7i76.0.0 Software Mode 2 = io_enc_ana_spin_fv hm2/hm2_7i76e.0: 51 I/O Pins used: hm2/hm2_7i76e.0:     IO Pin 000 (P1-01): StepGen #0, pin Direction (Output) hm2/hm2_7i76e.0:     IO Pin 001 (P1-14): StepGen #0, pin Step (Output) hm2/hm2_7i76e.0:     IO Pin 002 (P1-02): StepGen #1, pin Direction (Output) hm2/hm2_7i76e.0:     IO Pin 003 (P1-15): StepGen #1, pin Step (Output) hm2/hm2_7i76e.0:     IO Pin 004 (P1-03): StepGen #2, pin Direction (Output) hm2/hm2_7i76e.0:     IO Pin 005 (P1-16): StepGen #2, pin Step (Output) hm2/hm2_7i76e.0:     IO Pin 006 (P1-04): StepGen #3, pin Direction (Output) hm2/hm2_7i76e.0:     IO Pin 007 (P1-17): StepGen #3, pin Step (Output) hm2/hm2_7i76e.0:     IO Pin 008 (P1-05): StepGen #4, pin Direction (Output) hm2/hm2_7i76e.0:     IO Pin 009 (P1-06): StepGen #4, pin Step (Output) hm2/hm2_7i76e.0:     IO Pin 010 (P1-07): Smart Serial Interface #0, pin tx0 (Output) hm2/hm2_7i76e.0:     IO Pin 011 (P1-08): Smart Serial Interface #0, pin rx0 (Input) hm2/hm2_7i76e.0:     IO Pin 012 (P1-09): IOPort hm2/hm2_7i76e.0:     IO Pin 013 (P1-10): IOPort hm2/hm2_7i76e.0:     IO Pin 014 (P1-11): Encoder #0, pin Index (Input) hm2/hm2_7i76e.0:     IO Pin 015 (P1-12): Encoder #0, pin B (Input) hm2/hm2_7i76e.0:     IO Pin 016 (P1-13): Encoder #0, pin A (Input) hm2/hm2_7i76e.0:     IO Pin 017 (P2-01): IOPort hm2/hm2_7i76e.0:     IO Pin 018 (P2-14): IOPort hm2/hm2_7i76e.0:     IO Pin 019 (P2-02): IOPort hm2/hm2_7i76e.0:     IO Pin 020 (P2-15): IOPort hm2/hm2_7i76e.0:     IO Pin 021 (P2-03): IOPort hm2/hm2_7i76e.0:     IO Pin 022 (P2-16): IOPort hm2/hm2_7i76e.0:     IO Pin 023 (P2-04): IOPort hm2/hm2_7i76e.0:     IO Pin 024 (P2-17): IOPort hm2/hm2_7i76e.0:     IO Pin 025 (P2-05): IOPort hm2/hm2_7i76e.0:     IO Pin 026 (P2-06): IOPort hm2/hm2_7i76e.0:     IO Pin 027 (P2-07): IOPort hm2/hm2_7i76e.0:     IO Pin 028 (P2-08): IOPort hm2/hm2_7i76e.0:     IO Pin 029 (P2-09): IOPort hm2/hm2_7i76e.0:     IO Pin 030 (P2-10): IOPort hm2/hm2_7i76e.0:     IO Pin 031 (P2-11): IOPort hm2/hm2_7i76e.0:     IO Pin 032 (P2-12): IOPort hm2/hm2_7i76e.0:     IO Pin 033 (P2-13): IOPort hm2/hm2_7i76e.0:     IO Pin 034 (P3-01): IOPort hm2/hm2_7i76e.0:     IO Pin 035 (P3-14): IOPort hm2/hm2_7i76e.0:     IO Pin 036 (P3-02): IOPort hm2/hm2_7i76e.0:     IO Pin 037 (P3-15): IOPort hm2/hm2_7i76e.0:     IO Pin 038 (P3-03): IOPort hm2/hm2_7i76e.0:     IO Pin 039 (P3-16): IOPort hm2/hm2_7i76e.0:     IO Pin 040 (P3-04): IOPort hm2/hm2_7i76e.0:     IO Pin 041 (P3-17): IOPort hm2/hm2_7i76e.0:     IO Pin 042 (P3-05): IOPort hm2/hm2_7i76e.0:     IO Pin 043 (P3-06): IOPort hm2/hm2_7i76e.0:     IO Pin 044 (P3-07): IOPort hm2/hm2_7i76e.0:     IO Pin 045 (P3-08): IOPort hm2/hm2_7i76e.0:     IO Pin 046 (P3-09): IOPort hm2/hm2_7i76e.0:     IO Pin 047 (P3-10): IOPort hm2/hm2_7i76e.0:     IO Pin 048 (P3-11): IOPort hm2/hm2_7i76e.0:     IO Pin 049 (P3-12): IOPort hm2/hm2_7i76e.0:     IO Pin 050 (P3-13): IOPort hm2/hm2_7i76e.0: registered + NUM=2 ++ inivar -tildeexpand -ini /home/papa/linuxcnc/configs/my_LinuxCNC_machine/my_LinuxCNC_machine.ini -var HALFILE -sec HAL -num 2 + CFGFILE=custom.hal + '[' -n custom.hal ']' + IFS='\ ' + read CFGFILE CFGFILE_ARGS + foundmsg= + saveIFS='      ' + IFS=: + explicit_file_in_hallib=custom.hal + '[' -z custom.hal ']' + '[' custom.hal '!=' custom.hal ']' + '[' c = / ']' + for pathdir in $HALLIB_PATH + foundfile=./custom.hal + '[' -r ./custom.hal ']' + '[' . = . ']' + foundmsg='Found file(REL): ./custom.hal' + break + '[' -d ./custom.hal ']' + IFS='      ' + '[' -z 'Found file(REL): ./custom.hal' ']' + echo 'Found file(REL): ./custom.hal' Found file(REL): ./custom.hal + CFGFILE=./custom.hal + case $CFGFILE in + halcmd -i /home/papa/linuxcnc/configs/my_LinuxCNC_machine/my_LinuxCNC_machine.ini -f ./custom.hal + NUM=3 ++ inivar -tildeexpand -ini /home/papa/linuxcnc/configs/my_LinuxCNC_machine/my_LinuxCNC_machine.ini -var HALFILE -sec HAL -num 3 + CFGFILE= + '[' -n '' ']' + echo 'Starting TASK program: milltask' Starting TASK program: milltask + program_available milltask + type -path milltask + NUM=1 + halcmd loadusr -Wn inihal milltask -ini /home/papa/linuxcnc/configs/my_LinuxCNC_machine/my_LinuxCNC_machine.ini ++ inivar -ini /home/papa/linuxcnc/configs/my_LinuxCNC_machine/my_LinuxCNC_machine.ini -var HALCMD -sec HAL -num 1 + HALCOMMAND= + '[' -n '' ']' + halcmd start + run_applications + NUM=1 ++ inivar -tildeexpand -ini /home/papa/linuxcnc/configs/my_LinuxCNC_machine/my_LinuxCNC_machine.ini -var APP -sec APPLICATIONS -num 1 + APPFILE= + '[' -z '' ']' + return + echo 'Starting DISPLAY program: axis' Starting DISPLAY program: axis + result=0 + case $EMCDISPLAY in + program_available axis + type -path axis + axis -ini /home/papa/linuxcnc/configs/my_LinuxCNC_machine/my_LinuxCNC_machine.ini note: MAXV     max: 25.000 units/sec 1500.000 units/min note: LJOG     max: 25.000 units/sec 1500.000 units/min note: LJOG default: 6.000 units/sec 360.000 units/min Warning: Forward kinematics must handle duplicate coordinate letters:xx note: jog_order='XYZ' note: jog_invert=set([]) hm2/hm2_7i76e.0: error finishing read! iter=466 hm2/hm2_7i76e.0: error finishing read! iter=466 + result=0 + Cleanup + echo 'Shutting down and cleaning up LinuxCNC...' Shutting down and cleaning up LinuxCNC... + for KILL_TASK in linuxcncpanel iosh linuxcncsh linuxcncrsh linuxcnctop mdi debuglevel gmoccapy gscreen + /bin/pidof -x linuxcncpanel + for KILL_TASK in linuxcncpanel iosh linuxcncsh linuxcncrsh linuxcnctop mdi debuglevel gmoccapy gscreen + /bin/pidof -x iosh + for KILL_TASK in linuxcncpanel iosh linuxcncsh linuxcncrsh linuxcnctop mdi debuglevel gmoccapy gscreen + /bin/pidof -x linuxcncsh + for KILL_TASK in linuxcncpanel iosh linuxcncsh linuxcncrsh linuxcnctop mdi debuglevel gmoccapy gscreen + /bin/pidof -x linuxcncrsh + for KILL_TASK in linuxcncpanel iosh linuxcncsh linuxcncrsh linuxcnctop mdi debuglevel gmoccapy gscreen + /bin/pidof -x linuxcnctop + for KILL_TASK in linuxcncpanel iosh linuxcncsh linuxcncrsh linuxcnctop mdi debuglevel gmoccapy gscreen + /bin/pidof -x mdi + for KILL_TASK in linuxcncpanel iosh linuxcncsh linuxcncrsh linuxcnctop mdi debuglevel gmoccapy gscreen + /bin/pidof -x debuglevel + for KILL_TASK in linuxcncpanel iosh linuxcncsh linuxcncrsh linuxcnctop mdi debuglevel gmoccapy gscreen + /bin/pidof -x gmoccapy + for KILL_TASK in linuxcncpanel iosh linuxcncsh linuxcncrsh linuxcnctop mdi debuglevel gmoccapy gscreen + /bin/pidof -x gscreen + program_available axis-remote + type -path axis-remote + '[' '!' -z :50.0 ']' + axis-remote --ping + '[' '' = other ']' ++ inivar -ini /home/papa/linuxcnc/configs/my_LinuxCNC_machine/my_LinuxCNC_machine.ini -var SHUTDOWN -sec HAL + SHUTDOWN=shutdown.hal + '[' -n shutdown.hal ']' + echo 'Running HAL shutdown script' Running HAL shutdown script + halcmd -f shutdown.hal + for KILL_TASK in linuxcncsvr milltask + /bin/pidof -x linuxcncsvr 4768 + KillTaskWithTimeout + '[' '!' -n '' ']' ++ /bin/pidof -x linuxcncsvr + KILL_PIDS=4768 + '[' '!' -n 4768 ']' + local NPROCS + for KILL_PID in $KILL_PIDS + /bin/ps -o comm= 4768 + /bin/grep -q '<defunct>' + /bin/kill 4768 + WAIT=20 + '[' 20 -gt 1 ']' ++ /bin/ps -o comm= 4768 ++ /bin/grep -v '<defunct>' ++ wc -l + NPROCS=0 + '[' 0 -gt 0 ']' + WAIT=0 + '[' 0 -gt 1 ']' + '[' 0 -gt 0 ']' + '[' 0 -gt 0 ']' + KILL_PIDS= + KILL_TASK= + for KILL_TASK in linuxcncsvr milltask + /bin/pidof -x milltask 4811 + KillTaskWithTimeout + '[' '!' -n '' ']' ++ /bin/pidof -x milltask + KILL_PIDS=4811 + '[' '!' -n 4811 ']' + local NPROCS + for KILL_PID in $KILL_PIDS + /bin/ps -o comm= 4811 + /bin/grep -q '<defunct>' + /bin/kill 4811 task: 1484 cycles, min=0.000053, max=0.011648, avg=0.009967, 0 latency excursions (> 10x expected cycle time of 0.010000s) + WAIT=20 + '[' 20 -gt 1 ']' ++ /bin/ps -o comm= 4811 ++ /bin/grep -v '<defunct>' ++ wc -l + NPROCS=0 + '[' 0 -gt 0 ']' + WAIT=0 + '[' 0 -gt 1 ']' + '[' 0 -gt 0 ']' + '[' 0 -gt 0 ']' + KILL_PIDS= + KILL_TASK= + echo 'Stopping realtime threads' Stopping realtime threads + halcmd stop + echo 'Unloading hal components' Unloading hal components + halcmd unload all hm2_eth: in hm2_eth_reset hm2_eth: HostMot2 ethernet driver unloaded hm2: unloading ++ seq 10 + for i in `seq 10` ++ wc -w ++ halcmd list comp + '[' 2 = 1 ']' + sleep .2 + for i in `seq 10` ++ halcmd list comp ++ wc -w + '[' 2 = 1 ']' + sleep .2 + for i in `seq 10` ++ halcmd list comp ++ wc -w + '[' 1 = 1 ']' + break + echo 'Removing HAL_LIB, RTAPI, and Real Time OS modules' Removing HAL_LIB, RTAPI, and Real Time OS modules + /etc/init.d/realtime stop Note: Using POSIX realtime + echo 'Removing NML shared memory segments' Removing NML shared memory segments + read b x t x x x x x x m x + case $b$t in + read b x t x x x x x x m x + case $b$t in + read b x t x x x x x x m x + case $b$t in + read b x t x x x x x x m x + case $b$t in + read b x t x x x x x x m x + case $b$t in + read b x t x x x x x x m x + case $b$t in + read b x t x x x x x x m x + case $b$t in + read b x t x x x x x x m x + case $b$t in + read b x t x x x x x x m x + case $b$t in + ipcrm -M 1001 + read b x t x x x x x x m x + case $b$t in + ipcrm -M 1003 + read b x t x x x x x x m x + case $b$t in + ipcrm -M 1002 + read b x t x x x x x x m x + case $b$t in + read b x t x x x x x x m x + case $b$t in + read b x t x x x x x x m x + case $b$t in + ipcrm -M 1004 + read b x t x x x x x x m x + case $b$t in + ipcrm -M 1005 + read b x t x x x x x x m x + case $b$t in + read b x t x x x x x x m x + case $b$t in + read b x t x x x x x x m x + case $b$t in + read b x t x x x x x x m x + case $b$t in + read b x t x x x x x x m x + case $b$t in + read b x t x x x x x x m x + case $b$t in + read b x t x x x x x x m x + case $b$t in + read b x t x x x x x x m x + case $b$t in + read b x t x x x x x x m x + case $b$t in + read b x t x x x x x x m x + case $b$t in + read b x t x x x x x x m x + case $b$t in + read b x t x x x x x x m x + case $b$t in + read b x t x x x x x x m x + case $b$t in + read b x t x x x x x x m x + case $b$t in + read b x t x x x x x x m x + case $b$t in + read b x t x x x x x x m x + case $b$t in + read b x t x x x x x x m x + case $b$t in + read b x t x x x x x x m x + case $b$t in + read b x t x x x x x x m x + case $b$t in + read b x t x x x x x x m x + case $b$t in + read b x t x x x x x x m x + case $b$t in + read b x t x x x x x x m x + case $b$t in + read b x t x x x x x x m x + case $b$t in + read b x t x x x x x x m x + case $b$t in + read b x t x x x x x x m x + '[' -f /tmp/linuxcnc.lock ']' + rm /tmp/linuxcnc.lock + exit 0 + ErrorCheck + result=0 + '[' '!' -z :50.0 ']' + echo 'catch {send -async popimage destroy .}; destroy .' + /usr/bin/wish8.6 + '[' 0 -ne 0 ']' + rm -f /dev/fd/2 /dev/fd/1 + exit 0
 

Please Log in to join the conversation.

More
5 years 3 months ago #214875 by PCW
Replied by PCW on topic 7i76e start up error
That means communication has been lost with the 7I76E

Common reasons are:

1. Non-RT kernel
2. Too high a servo thread rate (normally should be 1 ms = 1000000 ns )
3. Intel MAC on host with IRQ-coalescing enabled (see hm2_eth man page)
4. Real time issues on the host (power management enabled etc)

Please Log in to join the conversation.

More
5 years 3 months ago #214916 by kelargo
Replied by kelargo on topic 7i76e start up error
thanks. is this like a one-shot, startup, delay error?

the man page for hm2_eth talks about additional pins being created.

I'm not familiar with how to read these pins, please help me understand how to read these pin values?

ifconfig shows no packets dropping on the 7i76e nic interface.

I guess, if I monitor these pins, I will know if there is a problem?

In addition to the pins documented in hostmot2(9), hm2_eth(9) creates additional pins:

(bit, out) hm2_<BoardType>.<BoardNum>.packet-error
(s32, out) hm2_<BoardType>.<BoardNum>.packet-error-level
(bit, out) hm2_<BoardType>.<BoardNum>.packet-error-exceeded


# uname -a
Linux linuxcnc 4.19.0-17-rt-amd64 #1 SMP PREEMPT RT Debian 4.19.194-2 (2021-06-21) x86_64 GNU/Linux

my_LinuxCNC_machine/my_LinuxCNC_machine.ini:SERVO_PERIOD = 1000000


I have a realtek NIC. my interface config..

# PCI interface to MESA controller 7I76E
auto eth0
iface eth0 inet static
address 10.10.10.1/24
hardware-irq-coalesce-rx-usecs 0


power management is all default values from iso install... pretty sure dont have anything tweaked in that area. In bios, I disabled wifi and bluetooth.
running latency-histogram, I get max(us) 17.0

Please Log in to join the conversation.

More
5 years 3 months ago #214920 by PCW
Replied by PCW on topic 7i76e start up error
What are your ping times?

Power management typically needs to be disabled in the BIOS

Typically you get read errors because LinuxCNC timed out
a series of read requests (default timeout is 80% of the servo thread period)

With the default error inc and dec parameters you would need 5
sequential timed out packets for LinuxCNC to give up and issue the read error

Please Log in to join the conversation.

More
5 years 3 months ago #214930 by kelargo
Replied by kelargo on topic 7i76e start up error
Thank you, Below is the result of 100 standard size pings.

This NIC, going to the 7i76e, is a PCI NIC, not the motherboard NIC.
PCI, not PCIe.

Wondering if swapping interfaces would yield different results for linuxcnc?

100 packets transmitted, 100 received, 0% packet loss, time 473ms
rtt min/avg/max/mdev = 0.080/0.097/0.155/0.016 ms


Answer :  swapped IPs on NICs.  still get that error.

Please Log in to join the conversation.

More
5 years 3 months ago #214932 by PCW
Replied by PCW on topic 7i76e start up error
The ping times look OK, not sure whats going on.

You might try using a slower thread rate (say 2000000 ns)
and examine the tmax parameters with halcmd

halcmd show param *.tmax

Is it possible you have a power supply issue and the 7I76E is resetting?
(you can see by the green user LEDs)

Please Log in to join the conversation.

More
5 years 3 months ago #214935 by kelargo
Replied by kelargo on topic 7i76e start up error
I think this solved my problem:

added "iommu=soft" to /etc/default/grub and then ran grub-update. reboot.

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash isolcpus=5,7 iommu=soft"

it doesnt seem to be appearing anymore.

I had previously noticed an iommu error during boot in dmesg. and perhaps that solved this networking issue?

Please Log in to join the conversation.

More
5 years 3 months ago #214942 by kelargo
Replied by kelargo on topic 7i76e start up error
also, I disabled IPv6. as well as adding the "iommu=soft" grub boot parameter.

This is with no error. the "actual servo period" parameter is still 1000000.
Should change it, based upon this info?

$ halcmd show param *.tmax
Parameters:
Owner Type Dir Value Name
26 s32 RW 0 hm2_7i76e.0.read-request.tmax
26 s32 RW 3017165 hm2_7i76e.0.read.tmax
26 s32 RW 131794 hm2_7i76e.0.write.tmax
19 s32 RW 7955 motion-command-handler.tmax
19 s32 RW 76035 motion-controller.tmax
29 s32 RW 14800 pid.s.do-pid-calcs.tmax
29 s32 RW 20572 pid.x.do-pid-calcs.tmax
29 s32 RW 9509 pid.x2.do-pid-calcs.tmax
29 s32 RW 17131 pid.y.do-pid-calcs.tmax
29 s32 RW 12358 pid.z.do-pid-calcs.tmax
20 s32 RW 3089537 servo-thread.tmax

old syslog messages had this, before adding iommu=soft parameter:


lots of these - with every boot. now, the only message in syslog with iommu is the kernel boot command line.

Jul 15 17:07:31 linuxcnc kernel: [ 1.201918] iommu: Adding device 0000:00:01.0 to group 0
Jul 15 17:07:31 linuxcnc kernel: [ 1.202132] iommu: Adding device 0000:00:01.1 to group 1
Jul 15 17:07:31 linuxcnc kernel: [ 1.202324] iommu: Adding device 0000:00:01.2 to group 2
Jul 15 17:07:31 linuxcnc kernel: [ 1.202531] iommu: Adding device 0000:00:08.0 to group 3
Jul 15 17:07:31 linuxcnc kernel: [ 1.202558] iommu: Adding device 0000:00:08.1 to group 3
Jul 15 17:07:31 linuxcnc kernel: [ 1.202743] iommu: Adding device 0000:00:14.0 to group 4
Jul 15 17:07:31 linuxcnc kernel: [ 1.202770] iommu: Adding device 0000:00:14.3 to group 4
Jul 15 17:07:31 linuxcnc kernel: [ 1.203005] iommu: Adding device 0000:00:18.0 to group 5
Jul 15 17:07:31 linuxcnc kernel: [ 1.203031] iommu: Adding device 0000:00:18.1 to group 5
Jul 15 17:07:31 linuxcnc kernel: [ 1.203057] iommu: Adding device 0000:00:18.2 to group 5
Jul 15 17:07:31 linuxcnc kernel: [ 1.203082] iommu: Adding device 0000:00:18.3 to group 5
Jul 15 17:07:31 linuxcnc kernel: [ 1.203100] iommu: Adding device 0000:00:18.4 to group 5
Jul 15 17:07:31 linuxcnc kernel: [ 1.203126] iommu: Adding device 0000:00:18.5 to group 5
Jul 15 17:07:31 linuxcnc kernel: [ 1.203152] iommu: Adding device 0000:00:18.6 to group 5
Jul 15 17:07:31 linuxcnc kernel: [ 1.203179] iommu: Adding device 0000:00:18.7 to group 5
Jul 15 17:07:31 linuxcnc kernel: [ 1.203392] iommu: Adding device 0000:01:00.0 to group 6
Jul 15 17:07:31 linuxcnc kernel: [ 1.203440] iommu: Using direct mapping for device 0000:01:00.0
Jul 15 17:07:31 linuxcnc kernel: [ 1.203475] iommu: Adding device 0000:01:00.1 to group 6
Jul 15 17:07:31 linuxcnc kernel: [ 1.203628] iommu: Adding device 0000:02:00.0 to group 7
Jul 15 17:07:31 linuxcnc kernel: [ 1.203655] iommu: Adding device 0000:02:00.1 to group 7
Jul 15 17:07:31 linuxcnc kernel: [ 1.203682] iommu: Adding device 0000:02:00.2 to group 7
Jul 15 17:07:31 linuxcnc kernel: [ 1.203700] iommu: Adding device 0000:03:00.0 to group 7
Jul 15 17:07:31 linuxcnc kernel: [ 1.203715] iommu: Adding device 0000:03:02.0 to group 7
Jul 15 17:07:31 linuxcnc kernel: [ 1.203731] iommu: Adding device 0000:03:03.0 to group 7
Jul 15 17:07:31 linuxcnc kernel: [ 1.203747] iommu: Adding device 0000:03:04.0 to group 7
Jul 15 17:07:31 linuxcnc kernel: [ 1.203762] iommu: Adding device 0000:03:09.0 to group 7
Jul 15 17:07:31 linuxcnc kernel: [ 1.203778] iommu: Adding device 0000:05:00.0 to group 7
Jul 15 17:07:31 linuxcnc kernel: [ 1.203791] iommu: Adding device 0000:06:00.0 to group 7
Jul 15 17:07:31 linuxcnc kernel: [ 1.203818] iommu: Adding device 0000:09:00.0 to group 7
Jul 15 17:07:31 linuxcnc kernel: [ 1.203835] iommu: Adding device 0000:0a:00.0 to group 3
Jul 15 17:07:31 linuxcnc kernel: [ 1.203851] iommu: Adding device 0000:0a:00.2 to group 3
Jul 15 17:07:31 linuxcnc kernel: [ 1.203866] iommu: Adding device 0000:0a:00.3 to group 3
Jul 15 17:07:31 linuxcnc kernel: [ 1.203881] iommu: Adding device 0000:0a:00.4 to group 3
Jul 15 17:07:31 linuxcnc kernel: [ 1.203896] iommu: Adding device 0000:0a:00.6 to group 3
Jul 15 17:08:00 linuxcnc kernel: [ 37.852989] amd_iommu_report_page_fault: 82 callbacks suppressed
Jul 15 17:08:01 linuxcnc kernel: [ 37.923023] amd_iommu_report_page_fault: 72 callbacks suppressed
Jul 15 17:08:52 linuxcnc kernel: [ 89.167960] amd_iommu_report_page_fault: 54 callbacks suppressed
Jul 15 17:08:52 linuxcnc kernel: [ 89.499898] amd_iommu_report_page_fault: 44 callbacks suppressed
Jul 15 17:09:04 linuxcnc kernel: [ 101.686369] amd_iommu_report_page_fault: 22 callbacks suppressed
Jul 15 17:09:05 linuxcnc kernel: [ 102.808462] amd_iommu_report_page_fault: 12 callbacks suppressed
Jul 15 17:09:44 linuxcnc kernel: [ 141.548610] amd_iommu_report_page_fault: 22 callbacks suppressed
Jul 15 17:09:44 linuxcnc kernel: [ 141.698430] amd_iommu_report_page_fault: 12 callbacks suppressed

Please Log in to join the conversation.

More
5 years 3 months ago #214944 by PCW
Replied by PCW on topic 7i76e start up error
26 s32 RW 3017165 hm2_7i76e.0.read.tmax

Is pretty bad assuming a 3 or so GHz CPU, that's 1 ms...
(times on x86 are in CPU clocks)

Not sure what the problem is

Please Log in to join the conversation.

More
5 years 3 months ago #214951 by kelargo
Replied by kelargo on topic 7i76e start up error
thank you for the input.

I tweak cpu speeds. get these values now.

# lsmod | grep cpu
cpufreq_powersave 16384 0
cpufreq_conservative 16384 0
cpufreq_userspace 16384 0
xt_tcpudp 16384 1
pcc_cpufreq 16384 0
acpi_cpufreq 24576 0
x_tables 45056 4 nft_compat,xt_tcpudp,ipt_REJECT,ip_tables


# cpupower frequency-set --governor userspace
Setting cpu: 0
Setting cpu: 1
Setting cpu: 2
Setting cpu: 3
Setting cpu: 4
Setting cpu: 5
Setting cpu: 6
Setting cpu: 7

# cpupower --cpu all frequency-set --freq 3700
Setting cpu: 0
Setting cpu: 1
Setting cpu: 2
Setting cpu: 3
Setting cpu: 4
Setting cpu: 5
Setting cpu: 6
Setting cpu: 7


after that - I get these values. better I hope? :)

papa@linuxcnc:~$ halcmd show param *.tmax
Parameters:
Owner Type Dir Value Name
26 s32 RW 0 hm2_7i76e.0.read-request.tmax
26 s32 RW 670847 hm2_7i76e.0.read.tmax
26 s32 RW 174492 hm2_7i76e.0.write.tmax
19 s32 RW 7955 motion-command-handler.tmax
19 s32 RW 65897 motion-controller.tmax
29 s32 RW 5920 pid.s.do-pid-calcs.tmax
29 s32 RW 18907 pid.x.do-pid-calcs.tmax
29 s32 RW 14874 pid.x2.do-pid-calcs.tmax
29 s32 RW 6364 pid.y.do-pid-calcs.tmax
29 s32 RW 6290 pid.z.do-pid-calcs.tmax
20 s32 RW 928811 servo-thread.tmax

Please Log in to join the conversation.

Time to create page: 0.065 seconds
Powered by Kunena Forum