Home/Support/Support Forum/BL4S210 Run Time Error
Welcome to Digi Forum, where you can ask questions and receive answers from other members of the community.

BL4S210 Run Time Error

0 votes
When using Dynamic C 10.72C to compile a program, I'll get the following message at the end of the process:

Run Time Error: Invalid Argument
Address fe:eb1d

After dismissing it, another message will pop up after a second or two:

While debugging:
Timeout while waiting for response from target

Any pointers in where the issue would lie? Would it be something in my code?
asked Apr 27, 2018 in Rabbit by msleaf1291 New to the Community (0 points)

Please log in or register to answer this question.

2 Answers

0 votes
If this is something you recently ported. Take a look at Technical Note TN203, Porting a Program to Dynamic C. Take a look under the Declaration of Variables and Size of.

http://ftp1.digi.com/support/documentation/0220044_j.pdf
answered Apr 30, 2018 by Campbell Veteran of the Digi Community (552 points)
The program was originally written for a Rabbit PK2230 controller. I could be wrong, but I would have imagined size wouldn't be an issue going from an older controller to a newer one.
0 votes
This is likely caused by a bug in your program. Can you break your program down into smaller pieces, or disable portions of its functionality to see if the error goes away? Are you overflowing your stack (e.g., large arrays as auto variables in functions, or using lots of recursive function calls)? Maybe you're overflowing an array and overwriting some global variables?

If you use the debugger to single-step over lines of code in your main loop, you'll find out which function call causes the crash. Then you can single step over lines in that code.

You're getting the run-time error as part of the crash, and the result is that the debugger (hosted on the Rabbit) stops working so you can't debug your program.
answered Apr 30, 2018 by TomCollins Veteran of the Digi Community (1,453 points)
I haven't had a chance to single-step it. I'll check that and see where exactly I can find the fault.

As for the program itself, it was actually originally written for a Rabbit PK2230 controller. I had to change some of the I/O calls that were specific to that controller, but otherwise I left it as is. I guess there must be more differences between the two than I initially thought.
...