7i76e start up error

More
15 Jul 2021 12:46 #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. 
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
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 or Create an account to join the conversation.

More
15 Jul 2021 14:25 #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 or Create an account to join the conversation.

More
15 Jul 2021 18:53 #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 or Create an account to join the conversation.

More
15 Jul 2021 19:36 #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 or Create an account to join the conversation.

More
15 Jul 2021 20:51 - 15 Jul 2021 20:56 #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.
Last edit: 15 Jul 2021 20:56 by kelargo. Reason: answer to swapping NIC IPs.

Please Log in or Create an account to join the conversation.

More
15 Jul 2021 21:05 #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 or Create an account to join the conversation.

More
15 Jul 2021 21:15 #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 or Create an account to join the conversation.

More
15 Jul 2021 22:53 #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 or Create an account to join the conversation.

More
15 Jul 2021 23:03 #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 or Create an account to join the conversation.

More
15 Jul 2021 23:58 #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 or Create an account to join the conversation.

Moderators: PCWjmelson
Time to create page: 0.125 seconds
Powered by Kunena Forum