1. Home
    1. Dashboard
    2. Search
  2. Forum
    1. Unresolved Threads
    2. Members
      1. Recent Activities
      2. Users Online
      3. Team Members
      4. Search Members
      5. Trophys
  3. Articles
  4. Blog
  5. Videos
  6. Jobs
  7. Shop
    1. Orders
  • Login or register
  • Search
This Thread
  • Everywhere
  • This Thread
  • This Forum
  • Articles
  • Pages
  • Forum
  • Blog Articles
  • Products
  • More Options
  1. Robotforum - Support and discussion community for industrial robots and cobots
  2. Forum
  3. Industrial Robot Support and Discussion Center
  4. KUKA Robot Forum
Your browser does not support videos RoboDK Software for simulation and programming
Visit our Mainsponsor
IRBCAM
Robotics Channel
Robotics Training
Advertise in robotics
Sponsored Ads

R1 Linking error

  • Molnar_Bence
  • April 4, 2024 at 10:00 AM
  • Thread is Unresolved
  • Molnar_Bence
    Reactions Received
    1
    Trophies
    1
    Posts
    13
    • April 4, 2024 at 10:00 AM
    • #1

    Hi guys,

    I have a KCR2sr controller and I have a problem with this. I don't move the robot, because show up this message.

    Erros message: R1/Home_move linking error.

    Here is the picture: 80426273796928100c2bdc380c5fc2e0.jpg

    Do you have any idea what is the problem?

    I am really new the robot programming, so I am really open any idea.

    If you need more information, just text me!

    Thank you!

  • kwakisaki April 4, 2024 at 10:47 AM

    Approved the thread.
  • Fubini
    Reactions Received
    272
    Trophies
    9
    Posts
    1,872
    • April 4, 2024 at 12:51 PM
    • #2

    Do as suggested on the screen. The module msg.src has a syntax error. Go to this module and see what the syntax error is.

    Fubini

  • Online
    panic mode
    Reactions Received
    1,267
    Trophies
    11
    Posts
    13,037
    • April 4, 2024 at 12:56 PM
    • #3

    Linking errors are normally result of either target program not compiled or missing, for example due to renaming etc.

    You have bunch of programs that have red X across icons. You should focus on those...

    1) read pinned topic: READ FIRST...

    2) if you have an issue with robot, post question in the correct forum section... do NOT contact me directly

    3) read 1 and 2

  • Online
    SkyeFire
    Reactions Received
    1,042
    Trophies
    12
    Posts
    9,388
    • April 4, 2024 at 3:12 PM
    • #4

    A linking error happens when a module contains a call to another module that is either missing, or contains a syntax or linking error of its own.

    In this case, you used the Error List and Display buttons to get the message that MSG.SRC contains a syntax error. MSG.SRC is a core module that comes standard with KUKA robots since KSS v5.4 or 5.6, and is used by many other modules to display messages on the pendant. So a syntax error in MSG.SRC will cause a linking error in any, and every, module that contains a call to MSG.SRC.

    So you need to locate MSG.SRC, and use the ERR LIST and DISPLAY, just like you did on HOME_MOVE. That should show you the line(s) in MSG.SRC that are causing the issue.

    If you have a backup of the robot from before this happened, the simplest cure is to replace MSG.SRC on the robot with the MSG.SRC from that backup. If not, then you'll need to debug MSG.SRC manually.

  • Molnar_Bence
    Reactions Received
    1
    Trophies
    1
    Posts
    13
    • April 9, 2024 at 11:43 AM
    • #5
    Quote from SkyeFire

    A linking error happens when a module contains a call to another module that is either missing, or contains a syntax or linking error of its own.

    In this case, you used the Error List and Display buttons to get the message that MSG.SRC contains a syntax error. MSG.SRC is a core module that comes standard with KUKA robots since KSS v5.4 or 5.6, and is used by many other modules to display messages on the pendant. So a syntax error in MSG.SRC will cause a linking error in any, and every, module that contains a call to MSG.SRC.

    So you need to locate MSG.SRC, and use the ERR LIST and DISPLAY, just like you did on HOME_MOVE. That should show you the line(s) in MSG.SRC that are causing the issue.

    If you have a backup of the robot from before this happened, the simplest cure is to replace MSG.SRC on the robot with the MSG.SRC from that backup. If not, then you'll need to debug MSG.SRC manually.

    Thank you for your response! I have another issue related to this: I can’t find the msg.src file anywhere. Could it be in a hidden folder? Or where can I locate this file? Thank you once again for your assistance! 🙏

  • Online
    panic mode
    Reactions Received
    1,267
    Trophies
    11
    Posts
    13,037
    • April 9, 2024 at 12:56 PM
    • #6

    Hat is not a standard file ghat robot came sith. Someone else created it...(Not Kuka). So it could be anywhere... We cannot tell you the exact path

    Check past archives....

    1) read pinned topic: READ FIRST...

    2) if you have an issue with robot, post question in the correct forum section... do NOT contact me directly

    3) read 1 and 2

  • Molnar_Bence
    Reactions Received
    1
    Trophies
    1
    Posts
    13
    • April 9, 2024 at 1:29 PM
    • #7

    Sorry this was my fault, I didn't see it. But finally I found this file. I attached here the error message.

    5f54ca2f9bcdca7369b4dcd576a79384.jpg

    I open this file and I see this one. I am not expert with robot programming so do you have any idea what is wrong this file? (I attached just important part.)

    Code
      ;* Hinweismeldung mit (STOP)
       CASE 3    
         jCase3: 
         bProgBrake = FALSE
         EMPTY_MSG={MSG_T: VALID FALSE,RELEASE FALSE,TYP #QUIT,MODUL[]" ",KEY[]" ",PARAM_TYP #KEY,PARAM[]" ",DLG_FORMAT[]" ",ANSWER 0}
         $MSG_T=EMPTY_MSG
         $MSG_T=MELDUNG[MSG_NR]
         $MSG_T.MODUL[]=MELDUNG[MSG_NR].MODUL[]
         $MSG_T.TYP=#QUIT
         $MSG_T.VALID=TRUE
         bMldStoerung=TRUE
         WHILE  $MSG_T.VALID
           WAIT SEC 0.1
           IF eTstQuitt THEN
            $MSG_T.RELEASE=TRUE
           ENDIF
         ENDWHILE
         $MSG_T.RELEASE=FALSE
         ;* Programm wurde unterbrochen
         IF bProgBrake THEN 
           GOTO jcase3
         ENDIF
         bMldStoerung = FALSE
           WAIT SEC 1
    Display More

    Thank you once again for your assistance! 🙏

  • Fubini
    Reactions Received
    272
    Trophies
    9
    Posts
    1,872
    • April 9, 2024 at 1:31 PM
    • #8

    And in which line does the compiler say the error is? The system gives you this info.

    Fubini

  • Molnar_Bence
    Reactions Received
    1
    Trophies
    1
    Posts
    13
    • April 9, 2024 at 1:59 PM
    • #9

    The error line is 64 and 76. Do you have any idea what is the problem?

    Code
    &ACCESS RVEO
    &REL 288
    &COMMENT HAHN Modul
    &PARAM TEMPLATE = C:\KRC\Roboter\Template\ExpertVorgabe
    &PARAM EDITMASK = *
    DEF MSG(MODE1:IN,MSG_NR:OUT ,ANSWER:OUT,BEFEHL:OUT)
                               
    ;FOLD HAHN Maschinenbau GmbH(c)  Modul MELDUNGEN  V1.0    
    ;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
    ;Bearbeitet von Stephan Fries   
    ;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
      
    ;***************************************************************** 
    ;*                        Deklaration                            *
    ;***************************************************************** 
                            
    DECL INT MODE1 
                    ;* =1 >> Reset Meldungsparameter
                    ;* =2 >> Einfacher Hinweis ohne Bestätigung 
                    ;* =3 >> Hinweismeldung mit (STOP)
                    ;* =4 >> Status Meldungen         
                    ;* =5 >> LOOP         
                    ;* =10>> Meldung mit Dialog über Softkey
                    ;* =11>> Anzeige mit Quitt(Wert aus(BEFEHL)wird angezeigt
                    ;* =12>> Abrage Eingang mit Quitt
    ;*Meldungsnummer               
    DECL CHAR cLoopMsg[128]
    DECL INT MSG_NR     
    DECL INT OFFSET
    DECL INT ANSWER
    DECL INT BEFEHL
    DECL STATE_T STATE
    DECL MSG_T EMPTY_MSG
    DECL CHAR cKeyTxt[20]
    DECL CHAR cZwiSpei[20]
    
    
    ;*>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
    ;; PROGRAMM
    ;*>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
    ; $MSG_T.VALID=FALSE
    ;*>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
    
    SWITCH mode1
    
      ;* Msg Zustandmeldung Löschen
      CASE 1 
    
      ;* Hinweis ohne Bestätigung
      CASE 2      
         EMPTY_MSG={MSG_T: VALID FALSE,RELEASE FALSE,TYP #STATE,MODUL[]" ",KEY[]" ",PARAM_TYP #KEY,PARAM[]" ",DLG_FORMAT[]" ",ANSWER 0}
         $MSG_T=EMPTY_MSG
         $MSG_T=MELDUNG[MSG_NR]
         $MSG_T.MODUL[]=MELDUNG[MSG_NR].MODUL[]
         $MSG_T.TYP=#NOTIFY
         $MSG_T.PARAM_TYP=#KEY
         $MSG_T.VALID=TRUE
    
         ;* Hinweismeldung mit (STOP)
       CASE 3    
         jCase3: 
         bProgBrake = FALSE
         EMPTY_MSG={MSG_T: VALID FALSE,RELEASE FALSE,TYP #QUIT,MODUL[]" ",KEY[]" ",PARAM_TYP #KEY,PARAM[]" ",DLG_FORMAT[]" ",ANSWER 0}
         $MSG_T=EMPTY_MSG
         $MSG_T=MELDUNG[MSG_NR]
         $MSG_T.MODUL[]=MELDUNG[MSG_NR].MODUL[]
         $MSG_T.TYP=#QUIT
         $MSG_T.VALID=TRUE
         bMldStoerung=TRUE
         WHILE  $MSG_T.VALID
           WAIT SEC 0.1
           IF eTstQuitt THEN
            $MSG_T.RELEASE=TRUE
           ENDIF
         ENDWHILE
         $MSG_T.RELEASE=FALSE
         ;* Programm wurde unterbrochen
         IF bProgBrake THEN 
           GOTO jcase3
         ENDIF
         bMldStoerung=FALSE
           WAIT SEC 1
    Display More
  • Online
    panic mode
    Reactions Received
    1,267
    Trophies
    11
    Posts
    13,037
    • April 9, 2024 at 2:39 PM
    • #10

    bMldStoerung need to be declared as BOOL

    1) read pinned topic: READ FIRST...

    2) if you have an issue with robot, post question in the correct forum section... do NOT contact me directly

    3) read 1 and 2

  • Online
    SkyeFire
    Reactions Received
    1,042
    Trophies
    12
    Posts
    9,388
    • April 9, 2024 at 2:58 PM
    • #11
    Quote from Molnar_Bence

    The error line is 64 and 76. Do you have any idea what is the problem?

    The error report also shows the actual line of code that is causing the error: bMldStoerung=TRUE. However, your screenshot shows there is another line 12 lines later that also has an error, so you will have to check both.

    In the case of bMldStoerung=TRUE, that's a simple assignment of a Boolean value to a boolean variable. The error "both sides not compatible", shown in your screenshot, should only occur if the variable bMldStoerung is declared as a non-Boolean variable, or is not declared at all. Assuming that the module MSG used to work, the former explanation is unlikely. This suggests that whatever file bMldStoerung was originally declared in has been deleted, or corrupted.

    The best way to attack this problem would be to open an Archive of the robot made before these errors began showing up (you made backups, yes?), and search it using a tool like BareGrep to find which module bMldStoerung was originally declared in (the syntax should look like DECL BOOL bMldStoerung), and restore that module onto the robot.

    If you don't have a good pre-error Archive backup, then make one before making any changes, and save it someplace where it won't be overwritten by newer Archives. And I strongly recommend making a full hard-drive image backup immediately, because if the hard drive becomes corrupted or fails, there will probably be no way to recover the robot since KUKA no longer provides the re-install media for the operating systems on KRC2s. And KRC2s are all so old that hardware failures are very likely. Given that the MSG module, or something it depends on, has become corrupted, I strongly suspect your KRC2 hard drive may be starting to fail.

    Without a pre-error Archive, probably the simplest "quick hack" fix would be to go into $CONFIG.DAT and add DECL BOOL bMldStoerung=TRUE to it. This will not fix the original problem, but may provide a usable replacement for the original variable that MSG can use.

    It would be far better to locate the original declaration for bMldStoerung and fix it.

  • MOM
    Reactions Received
    175
    Trophies
    7
    Posts
    1,419
    • April 11, 2024 at 3:14 PM
    • #12

    As SkyFire mentioned:

    bMldStoerung=TRUE

    would be ok als long as bMldStoerung is declared as BOOL.

    If bMldStoerung is declared as output then you would need

    bMldStoerung=$IN[1025] ; for TRUE

    (in this case bMldStoerung is declared as Signal and the asignment also has to be Signal)

  • Online
    panic mode
    Reactions Received
    1,267
    Trophies
    11
    Posts
    13,037
    • April 11, 2024 at 3:48 PM
    • #13

    what...?

    SIGNAL test $OUT[666]

    $OUT[666]=TRUE ; this works

    test = TRUE ; this works

    test=$IN[1025] ; this also works

    $OUT[666]=$IN[1025]; all of this works...

    1) read pinned topic: READ FIRST...

    2) if you have an issue with robot, post question in the correct forum section... do NOT contact me directly

    3) read 1 and 2

  • Online
    panic mode
    Reactions Received
    1,267
    Trophies
    11
    Posts
    13,037
    • April 11, 2024 at 3:53 PM
    • #14

    also if bMldStoerung is not declared, different message should be displayed.

    to me it looks like it is declared but it is of wrong type or possibly it is masked by another declaration

    1) read pinned topic: READ FIRST...

    2) if you have an issue with robot, post question in the correct forum section... do NOT contact me directly

    3) read 1 and 2

  • Molnar_Bence
    Reactions Received
    1
    Trophies
    1
    Posts
    13
    • April 12, 2024 at 9:15 AM
    • #15

    Thanks a lot helping!

    First of all I have a archive file, but in the archive file haven't msg.src file. Just on the robot, so that is why there aren't any backup.

    I wrote the "DECL BOOL bMldStoerung=TRUE" in the config.dat file and the home_move is working now. That's really great!! Thank you!

    I searched with BareGrep the originally declared, but unfortunately I didn't find it. I know that some file is damaged, but I don't know which file.


    I really hope you can help with another problem, I have more program, but it isn't work.

    Here is the picture about the problem:

    274dc9508bd101456d3f367d2fc8ab35.jpg

    Do you have idea what is the problem?

    Thanks a lot!

  • Roland Keller
    Reactions Received
    12
    Trophies
    5
    Posts
    61
    • April 12, 2024 at 9:41 AM
    • #16
    Code
    TRIGGER WHEN DISTANCE = 1 DELAY = 0 DO AktPos=10

    EXECTRUE doesn't belong there

  • Online
    panic mode
    Reactions Received
    1,267
    Trophies
    11
    Posts
    13,037
    • April 12, 2024 at 2:41 PM
    • #17

    why not simply create a fresh archive?

    then you can go through each file that has errors and fix them one by one (or comment that line out) until all errors are resolved. to comment line out, simply place semicolon at the line begin, that will turn the program line into a comment.

    1) read pinned topic: READ FIRST...

    2) if you have an issue with robot, post question in the correct forum section... do NOT contact me directly

    3) read 1 and 2

  • Online
    SkyeFire
    Reactions Received
    1,042
    Trophies
    12
    Posts
    9,388
    • April 12, 2024 at 5:56 PM
    • #18
    Quote from Molnar_Bence

    I have more program, but it isn't work.

    Do you need all these programs? They appear to be leftovers from someone's previous production process. If you don't need them, you should consider just deleting them. Of course, make backups first, just in case.

    Quote from Molnar_Bence

    I searched with BareGrep the originally declared, but unfortunately I didn't find it. I know that some file is damaged, but I don't know which file.

    I'll ask again: do you have any backup of the robot from before these error occurred?

    Is this a robot you've been operating for some time? Or is it a secondhand robot that came with someone else's programs already loaded?

  • Molnar_Bence
    Reactions Received
    1
    Trophies
    1
    Posts
    13
    • April 15, 2024 at 10:35 AM
    • #19
    Quote from SkyeFire

    Do you need all these programs? They appear to be leftovers from someone's previous production process. If you don't need them, you should consider just deleting them. Of course, make backups first, just in case.

    I'll ask again: do you have any backup of the robot from before these error occurred?

    Is this a robot you've been operating for some time? Or is it a secondhand robot that came with someone else's programs already loaded?

    Yes, I need all programs and yes I have a backup before these error occurred. But when I restore this backup, the HMI write that "Restoring failed"

    0082ae0efcbed6d370699eb8514f169f.jpg

    Yes it is work before, just something happened.

  • Molnar_Bence
    Reactions Received
    1
    Trophies
    1
    Posts
    13
    • April 15, 2024 at 10:50 AM
    • #20
    Quote from panic mode

    why not simply create a fresh archive?

    then you can go through each file that has errors and fix them one by one (or comment that line out) until all errors are resolved. to comment line out, simply place semicolon at the line begin, that will turn the program line into a comment.

    I would like to correct these errors one by one, but I believe that these errors are related.

    In all programs, it displays this error (only with a different ‘AKT_POS’ value):

    Both sides of the value assignment are not compatible.’ TRIGGER WHEN DISTANCE = 1 DELAY = 0 DO AktPos=10 EXEC TRUE.

    I need a solution for this error. Thank you!!

Advertising from our partners

IRBCAM
Robotics Channel
Robotics Training
Advertise in robotics
Advertise in Robotics
Advertise in Robotics

Job Postings

  • Anyware Robotics is hiring!

    yzhou377 February 23, 2025 at 4:54 AM
  • How to see your Job Posting (search or recruit) here in Robot-Forum.com

    Werner Hampel November 18, 2021 at 3:44 PM
Your browser does not support videos RoboDK Software for simulation and programming

Tag Cloud

  • abb
  • Backup
  • calibration
  • Communication
  • CRX
  • DCS
  • dx100
  • dx200
  • error
  • Ethernet
  • Ethernet IP
  • external axis
  • Fanuc
  • help
  • hmi
  • I/O
  • irc5
  • IRVIsion
  • karel
  • kawasaki
  • KRC2
  • KRC4
  • KRC 4
  • KRL
  • KUKA
  • motoman
  • Offset
  • PLC
  • PROFINET
  • Program
  • Programming
  • RAPID
  • robodk
  • roboguide
  • robot
  • robotstudio
  • RSI
  • safety
  • Siemens
  • simulation
  • SPEED
  • staubli
  • tcp
  • TCP/IP
  • teach pendant
  • vision
  • Welding
  • workvisual
  • yaskawa
  • YRC1000

Thread Tag Cloud

  • abb
  • Backup
  • calibration
  • Communication
  • CRX
  • DCS
  • dx100
  • dx200
  • error
  • Ethernet
  • Ethernet IP
  • external axis
  • Fanuc
  • help
  • hmi
  • I/O
  • irc5
  • IRVIsion
  • karel
  • kawasaki
  • KRC2
  • KRC4
  • KRC 4
  • KRL
  • KUKA
  • motoman
  • Offset
  • PLC
  • PROFINET
  • Program
  • Programming
  • RAPID
  • robodk
  • roboguide
  • robot
  • robotstudio
  • RSI
  • safety
  • Siemens
  • simulation
  • SPEED
  • staubli
  • tcp
  • TCP/IP
  • teach pendant
  • vision
  • Welding
  • workvisual
  • yaskawa
  • YRC1000

Similar Threads

  • Run programm using DirectoryLoader

    • Kuka60HA
    • March 6, 2024 at 1:48 PM
    • KUKA Robot Forum
  • krc4 KSS01327 Linking error, Cell ERR error 2031

    • COLDINSUDBURY
    • February 4, 2024 at 10:18 AM
    • KUKA Robot Forum
  • KRC4 Enabling Switch Timeout Error

    • robonovak
    • May 10, 2022 at 7:38 PM
    • KUKA Robot Forum
  • R1 cell linking error

    • Reza so
    • June 7, 2018 at 5:22 AM
    • KUKA Robot Forum
  • running a KUKA KR 5 ARC (KR C4 controller) in T1 and auto mode

    • is_razi
    • March 2, 2023 at 8:19 AM
    • KUKA Robot Forum
  • Using DirectoryLoader with KUKA CNC

    • miked
    • January 30, 2023 at 9:13 PM
    • KUKA Robot Forum
  • weave motion on KRC2

    • Robotmei
    • November 5, 2022 at 6:49 PM
    • KUKA Robot Forum
  • OS upgrade

    • aqapour
    • August 14, 2022 at 4:23 PM
    • KUKA Robot Forum
  • KRC2 $config.dat fail

    • Catalin Pop
    • August 20, 2020 at 1:18 PM
    • KUKA Robot Forum
  • SAFETY CONFIGURATION CHECKSUM ERROR

    • legityme
    • May 11, 2020 at 6:49 PM
    • KUKA Robot Forum

Tags

  • KUKA
  • error
  • LINKING
  1. Privacy Policy
  2. Legal Notice
Powered by WoltLab Suite™
As a registered Member:
* You will see no Google advertising
* You can translate posts into your local language
* You can ask questions or help the community with your knowledge
* You can thank the authors for their help
* You can receive notifications of replies or new topics on request
* We do not sell your data - we promise

JOIN OUR GREAT ROBOTICS COMMUNITY.
Don’t have an account yet? Register yourself now and be a part of our community!
Register Yourself Lost Password
Robotforum - Support and discussion community for industrial robots and cobots in the WSC-Connect App on Google Play
Robotforum - Support and discussion community for industrial robots and cobots in the WSC-Connect App on the App Store
Download