Simulink IO enabled error on Arduino Uno
54 views (last 30 days)
Show older comments
Marc Fuller
on 27 May 2018
Answered: Lokendra Samba
on 14 Jun 2020
I am trying to use the Simulink IO enabled feature in MATLAB 2018a. The platform is an Arduino Uno. Even with the simplest example, for instance trying to read from pin 4 and displaying it I get an error although simulation mode works fine without IO enabled, and when I load the program onto the hardware it also works fine. Here is error that I see when I enable Simulink IO:
MATLAB System block 'blink2/Digital Input/Digital Input' error occurred when invoking 'setupImpl' method of 'codertarget.arduinobase.blocks.DigitalRead'. The error was thrown from '
'C:\ProgramData\MATLAB\SupportPackages\R2018a\toolbox\target\shared\ioserver\+matlabshared\+ioclient\+transport\TransportLayerAbstract.p' at line 0
'C:\ProgramData\MATLAB\SupportPackages\R2018a\toolbox\target\shared\ioserver\+matlabshared\+ioclient\IOProtocol.p' at line 0
'C:\ProgramData\MATLAB\SupportPackages\R2018a\toolbox\target\shared\ioserver\+matlabshared\+ioclient\IOProtocol.p' at line 0
'C:\ProgramData\MATLAB\SupportPackages\R2018a\toolbox\target\shared\ioserver\+matlabshared\+ioclient\+peripherals\DigitalIO.p' at line 0
'C:\ProgramData\MATLAB\SupportPackages\R2018a\toolbox\target\supportpackages\arduinobase\+codertarget\+arduinobase\+blocks\DigitalRead.p' at line 0'.
Caused by:
Transport layer object is corrupted. Try fclose(instrfind) and delete(instrfind) and then create a new hardware object
3 Comments
Alex Kuzmichev
on 6 Jul 2018
Edited: Walter Roberson
on 7 Jul 2018
I am trying run arduino_communication in normal mode with Simulink and I get same error:
MATLAB System block 'arduino_communication/Digital Output/Digital Output' error occurred when invoking 'setupImpl' method of 'codertarget.arduinobase.blocks.DigitalWrite'. The error was thrown from '
'C:\ProgramData\MATLAB\SupportPackages\R2018a\toolbox\target\shared\ioserver\+matlabshared\+ioclient\+transport\TransportLayerAbstract.p' at line 0
'C:\ProgramData\MATLAB\SupportPackages\R2018a\toolbox\target\shared\ioserver\+matlabshared\+ioclient\IOProtocol.p' at line 0
'C:\ProgramData\MATLAB\SupportPackages\R2018a\toolbox\target\shared\ioserver\+matlabshared\+ioclient\IOProtocol.p' at line 0
'C:\ProgramData\MATLAB\SupportPackages\R2018a\toolbox\target\shared\ioserver\+matlabshared\+ioclient\+peripherals\DigitalIO.p' at line 0
'C:\ProgramData\MATLAB\SupportPackages\R2018a\toolbox\target\supportpackages\arduinobase\+codertarget\+arduinobase\+blocks\DigitalWrite.p' at line 0'.
*Caused by:
Transport layer object is corrupted.* Try fclose(instrfind) and delete(instrfind) and then create a new hardware object
After
fclose(instrfind)
delete(instrfind)
I get
...
*Caused by:
Instrument object OBJ is an invalid object.*
Accepted Answer
More Answers (6)
Kaninika Pant
on 1 Jun 2018
Try clearing the workspace. Try clear all, clear classes. Also try disconnecting the board and reconnecting it once.
0 Comments
Steffen Hartmann
on 30 Oct 2018
Hello, have the same problem here. Was it really the "incompatible" uno-board?
0 Comments
Kadir Tolga Dogukanli
on 26 Dec 2018
I have the same errors. Did you solve the problem?
MATLAB System block 'sondeneme/I2C Read' error occurred when invoking 'setupImpl' method of 'codertarget.arduinobase.internal.arduinoI2CRead'. The error was thrown from '
'C:\ProgramData\MATLAB\SupportPackages\R2018b\toolbox\target\shared\ioserver\+matlabshared\+ioclient\+transport\TransportLayerAbstract.p' at line 0
'C:\ProgramData\MATLAB\SupportPackages\R2018b\toolbox\target\shared\ioserver\+matlabshared\+ioclient\IOProtocol.p' at line 0
'C:\ProgramData\MATLAB\SupportPackages\R2018b\toolbox\target\shared\ioserver\+matlabshared\+ioclient\IOProtocol.p' at line 0
'C:\ProgramData\MATLAB\SupportPackages\R2018b\toolbox\target\shared\ioserver\+matlabshared\+ioclient\+peripherals\I2C.p' at line 0
'C:\ProgramData\MATLAB\SupportPackages\R2018b\toolbox\target\supportpackages\arduinobase\+codertarget\+arduinobase\+internal\arduinoI2CRead.p' at line 0
'C:\ProgramData\MATLAB\SupportPackages\R2018b\toolbox\target\shared\svd\+matlabshared\+svd\I2CBlock.p' at line 0'.
Caused by:
Transport layer object is corrupted. Clear and recreate the hardware object
Component:Simulink | Category:Block error
0 Comments
Jussi Savola
on 9 Apr 2019
Edited: Jussi Savola
on 9 Apr 2019
Me too.
I'm trying to read data from A4, then do some fancy stuff with FFT and then light up a led in D10.
I'm using Matlab 2018A with Arduino (Elegoo) Mega 2560
Simulation 1 Clear
01:55 AM Elapsed: 28 sec
MATLAB System block 'blinker_a/Analog Input' error occurred when invoking 'setupImpl' method of 'codertarget.arduinobase.internal.arduino_AnalogInput'. The error was thrown from '
'C:\ProgramData\MATLAB\SupportPackages\R2018a\toolbox\target\shared\ioserver\+matlabshared\+ioclient\+transport\TransportLayerAbstract.p' at line 0
'C:\ProgramData\MATLAB\SupportPackages\R2018a\toolbox\target\shared\ioserver\+matlabshared\+ioclient\IOProtocol.p' at line 0
'C:\ProgramData\MATLAB\SupportPackages\R2018a\toolbox\target\shared\ioserver\+matlabshared\+ioclient\IOProtocol.p' at line 0
'C:\ProgramData\MATLAB\SupportPackages\R2018a\toolbox\target\shared\ioserver\+matlabshared\+ioclient\+peripherals\AnalogInput.p' at line 0
'C:\ProgramData\MATLAB\SupportPackages\R2018a\toolbox\target\supportpackages\arduinobase\+codertarget\+arduinobase\+internal\arduino_AnalogInput.p' at line 0
'C:\ProgramData\MATLAB\SupportPackages\R2018a\toolbox\target\shared\svd\+matlabshared\+svd\AnalogInSingle.p' at line 0'.
Caused by:
Transport layer object is corrupted. Try fclose(instrfind) and delete(instrfind) and then create a new hardware object
Edit: It seems that disabling Simulink I/O made the error go away. Go figure.
0 Comments
Lokendra Samba
on 14 Jun 2020
go to this thread, you may find solution!!
https://de.mathworks.com/matlabcentral/answers/351957-do-simulink-deploy-to-hardware-and-external-modes-work-with-arduino-uno-clones
i have same problem, but changing 'BaudRate' help me solve problem. now it works for all mode for me.
0 Comments
See Also
Categories
Find more on Device Driver Blocks in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!