Post by jonasz on Deploy LicenseServer for Linux SL
CODESYS Forge
talk
(Post)
Hello, I'm asking for help with installing the license server for Linux SL 4.18.0.0. When I try to install it, I get a message that the WIBUCodeMeter package is missing. I checked the package manager tab to see if the package is installed, and it is - Codemeter 8.40.7120.501. I've checked the CodeMeter Runtime on the target machine, and everything seems to be working fine. One thing caught my eye: the Device Architecture tab says "None" Please help me solve this problem.
Last updated: 2025-11-14
Post by adam on Get/Set I/O Address Mapping of DeviceObjects in python Script
CODESYS Forge
talk
(Post)
I want to cancel the automatic address allocation for all IO mappings. If I directly set the automatic_iec_address in class ScriptIoMapping to False, the address becomes None. So I reset manual_iec_address with itselfs value. It only work with the Input IOMapping . For output, it reports an error: "Invalid address: The channel type 'Output' requires address type '%Q'." I checked the description file ,both accessRight are total same. Does anyone know what causes this?
Last updated: 2025-11-14
Post by ppanchal on Add a dynamic text on One Visualization from another
CODESYS Forge
talk
(Post)
I've created a TitleBar Visualization in which I have "Logo" on the Left corner, "Screen Name" in the center and Time/ date on the right corner. I've also created a 'Menu" visualization that slides out from left to right. I have TitleBar and Menu Visualizations in the MainScreen (3rd Visualization). I want to have "Screen Name" automatically updated on TitleBar Visualization based on Menu item selected from the "Menu" visualization. Can anyone advise how can I achive this? TIA
Last updated: 2025-11-18
Post by youness on CSVReaderInit returns error : INVALID_HANDLE
CODESYS Forge
talk
(Post)
I have Already the same problem when i'm trying to write data more than 10 times in the same file. In fact, i send my data periodicaly to a file that i configured to have permission of W/R in my CodesysContol.cfg. When the Error occurs, i must reboot my machine to success. It means that the problem isn't realted to a limitation of size, but a problem in the function supposed to handle the file. totorovic : allow me to know if you've found a solution to your problem. Thanks.
Last updated: 2025-11-26
Post by imdatatas on SMC_ERROR.SMC_AXIS_NOT_READY_FOR_MOTION when using Drive Virtual
CODESYS Forge
talk
(Post)
@ducng, Another possible situation could be that normally there are 3 inputs for MC_Power. In your above images, I can't see the "bDriveStart" input activated. As Mr. @gseidel mentioned, you need to make sure MC_Power.Status output should be TRUE. Issuing any movement command without activating the axis would naturally result in an error. For MC_Power; You can set the Enable and bDriveStart inputs to TRUE and try turning the axis activation on and off using only the bRegulatorOn input. Regards, Imdat
Last updated: 2025-11-28
Post by gseidel on MC_Phasing state explenation
CODESYS Forge
talk
(Post)
Hi kenth1973, MC_Phasing has been improved in recent versions. I would recommend to install the latest version of SoftMotion (4.20.1.0) and test whether the problem still exists, and if so, what the error identifier is. (Also check the PLC log in this case, it might contain additional information.) Setting the internal state of the FB is not recommended, it could lead to malfunction of the FB and unintended movements of the drive. Best regards, Georg
Last updated: 2025-11-28
Post by ahofer on Deploy Control SL kein Zugriff aus der vertuellen Maschine
CODESYS Forge
talk
(Post)
Hallo, ich arbeiten an einer Technikerschule als Lehrer; dort hatte ich das Problem. Jetzt habe ich die Situation bei mir zuhause ausprobiert; anfangs gab es eine Fehlermeldung; dann habe ich die Firewall ausgeschaltet. Daraufhin ging der Zugriff. Anschließend habe ich die Firewall wieder eingeschaltet und plötzlich ging der Zugriff auch mit Firewall. Ob das jetzt im Netzwerk in der Schule genauso ist kann ich erst morgen testen. Ich melde mich dann wieder. VG Toni
Last updated: 2025-12-08
Post by durallymax on VAR_INFO from inside of a FB to get info on the instance.
CODESYS Forge
talk
(Post)
The help link appears to be broken. When I implemented something similar I had to add {attribute 'reflection} above the declaration of the FB with {attribute 'instance-path'} above the string VAR that would contain the path. Then wrote a function to trim off however much I wanted removed by searching for periods, then formatting it with spaces at the periods and removing brackets on arrays while also breaking up the PascalCase to present it a bit nicer for the end-users.
Last updated: 2025-12-12
Post by scrollman on Attribute FB for comment
CODESYS Forge
talk
(Post)
Masters, I need your help. I can explain in different way. I can get the name and comment of parameter if i use "VARINFO", but right now I want to get name and comment of FB from inside one. I can get the name to use the "{attribute 'reflection'}" but I don't understand how to get comment? Do you have any idea how to do it? Thanks
Last updated: 2026-01-08
Post by davidbo on Clean old license into an image SD
CODESYS Forge
talk
(Post)
That might not be enough using CODESYS V3.5 SP20 and CODESYS Control for Raspberry Pi MC SL version: 4.11 I deleted .cmact_license directory. I installed new license and the dialog box said it was done successfully, but in reality it was not. What more should be deleted 5:/var/opt/codesys$ ls -la total 1948 drwxr-xr-x 10 root root 4096 Nov 17 12:29 . drwxr-xr-x 5 root root 4096 Jul 30 2020 .. -rw-r--r-- 1 root root 100014 Nov 17 12:08 .Audit_0.log -rw-r--r-- 1 root root 100040 Nov 17 11:30 .Audit_1.log -rw-r--r-- 1 root root 100062 Nov 17 09:18 .Audit_2.log -rw-r--r-- 1 root root 66260 Nov 17 12:36 .Audit.log drwxr-xr-x 2 root root 4096 Mar 30 2020 backup -rw-r--r-- 1 root root 2640 Feb 22 2024 bacstac.ini drwxr-xr-x 4 root root 4096 Mar 30 2020 cert drwxr-xr-x 2 root root 4096 Nov 17 12:29 .cmact_licenses drwxr-xr-x 2 root root 4096 Mar 30 2020 _cnc -rw-r--r-- 1 root root 1000088 Nov 17 08:35 codesyscontrol_0.log -rw-r--r-- 1 root root 422521 Nov 17 12:30 codesyscontrol.log -rw-r--r-- 1 root root 355 Nov 17 12:29 .GroupDatabase.csv -rw-r--r-- 1 root root 355 Nov 17 12:19 .GroupDatabase.csv_ drwxr-xr-x 3 root root 4096 Nov 17 11:16 OPCUAServer drwxr-xr-x 6 root root 4096 Mar 30 2020 .pki drwxr-xr-x 9 root root 4096 Nov 17 11:16 PlcLogic -rwxr-xr-x 1 root root 156 Mar 30 2020 rts_set_baud.sh -rw-r--r-- 1 root root 20736 Feb 22 2024 .SoftContainer_CmEmbedded.wbb -rw-r--r-- 1 root root 12445 Nov 17 09:06 SysFileMap.cfg -rw-r--r-- 1 root root 1983 Feb 22 2024 .UFC_SoftContainer_CmEmbedded.WibuC mLif -rw-r--r-- 1 root root 646 Nov 17 09:51 .UserDatabase.csv -rw-r--r-- 1 root root 646 Nov 17 09:51 .UserDatabase.csv_ -rw-r--r-- 1 root root 17305 Nov 17 12:29 .UserMgmtRightsDB.csv drwxr-xr-x 2 root root 4096 Mar 30 2020 visu -rw-r--r-- 1 root root 32684 Feb 8 2023 WibuCtxt.ctx
Last updated: 2025-11-17
Post by seler on Custom button with output status
CODESYS Forge
talk
(Post)
Just to clarify. Output for lamp will have two inputs: from plc IN (wall switch) and from visu button. Until now I had separate object for visu button and separate for visu lamp. Now I want it to be one object, bulb icone which will change color on lamp status and yet by touching it will change visu button state. Tried "Switch Image" object but there is no way to assign switch var.
Last updated: 2025-11-19
Post by kalmeyer on NO SIGNAL ON POWER_ON FOR STEPPER MOTOR
CODESYS Forge
talk
(Post)
I WOULD BE GRATEFUL FOR HELP....✔✔✔ I HAVE SPENT A LOT OF TIME ON THIS "SMALL" PROBLEM😢 I HAVE MADE A MC_POWER FOR STEPPERMOTOR. BUT I DO NOT GET A "HIGH" ON THE STATUS OUTPUT EVEN THOUGH PENABLE, PREG AND PDRIVESTART ARE ACTIVATED ( SEE ATTACHED WRONG_1) HAD I MADE SOME ERROR IN PLC_PRG_1..???? (WRONG_2) 1000 THANKS FOR HELP WITH THIS PROBLEM. 👀👀 /KLAUS FROM DENMARK
Last updated: 2025-11-23
Post by msirotkin on EtherCAT status errors
CODESYS Forge
talk
(Post)
Didn't help. I'm just trying to understand why the errors occur. Are they from the poor driver or from the Linux network stack. That's why I wanted to know how the rxerros and lostframes are counted. Because in other places (like ethtool info) there are no any issues. And the Ethercat device works fine. And it also strange that on the second ethernet port with a different HW and driver Ethercat works better, but still time to time gets such errors.
Last updated: 2025-11-26
Post by bertus on Can't get SMC_SmoothPath to work
CODESYS Forge
talk
(Post)
Hello all, I am trying to run a XY trajectory from a static G-Code file. Everything works except the smoothing/blending of the corners. My setup: Codesys v3.5sp18 Raspberry Pi 4 CODESYS Control for Raspberry Pi SL, using demo license. Zero axes (only using the interpolator). The order of processing for my decoding is: SMC_NCDecoder (ok) SMC_SmoothMerge (ok) SMC_SmoothPath (not ok) SMC_LimitDynamics SMC_CheckVelocities I created following instances and buffers: fbNCDecoder: SMC_NCDecoder; fbSmoothMerge: SMC_SmoothMerge; fbSmoothPath: SMC_SmoothPath; fbLimitDynamics: SMC_LimitDynamics; fbCheckVelocities: SMC_CheckVelocities; aNCDecoderBuffer: ARRAY[0..49] OF SMC_GeoInfo; // buffer stage 1 (fbNCDecoder) aSmoothMergeBuffer: ARRAY[0..19] OF SMC_GeoInfo; // buffer stage 2 (fbSmoothMerge) aSmoothPathBuffer: ARRAY[0..99] OF SMC_GeoInfo; // buffer stage 3 (fbSmoothPath) aLimitDynamicsBuffer: ARRAY[0..39] OF SMC_GeoInfo; // buffer stage 4 (fbLimitDynamics) My original G-Code file has a lot of short G1 elements but this example, I reduced it to a simple square: N000 G51 D10 N010 G38 O1 N020 G00 X0 Y0 F50 E1000 E-1000 N030 G01 X0 Y-37.5 N040 G01 X-75 Y-37.5 N050 G01 X-75 Y37.5 N060 G01 X0 Y37.5 N070 G01 X0 Y0 N080 G50 N090 G39 O1 In the Codesys CNC settings, I have these instances activated: SMC_SmoothMerge SMC_SmoothPath SMC_LimitDynamics SMC_CheckVelocities And with those settings (and the path-preprocessing button actived), the G-Code viewer shows the square with nicely blended corners (see attached picture). However, when running it on the PLC, it doesn't blend the corners at all. Below the relevant part of my code. The process is started with bDecode. // stage 1: decoding G-code fbNCDecoder( ncprog := square, bExecute:= bDecode, bAbort:= NOT bDecode, nSizeOutQueue := SIZEOF(aNCDecoderBuffer), pbyBufferOutQueue := ADR(aNCDecoderBuffer) ); // stage 2: merge short linear segments fbSmoothMerge( bExecute := bDecode, poqDataIn := fbNCDecoder.poqDataOut, nSizeOutQueue := SIZEOF(aSmoothMergeBuffer), pbyBufferOutQueue := ADR(aSmoothMergeBuffer), piMaxDifference := PI_MAX_DIFFERENCE, usiMaxDegree := 5, wFeatureFlag := 1, wAdditionalParamNumber := 0, dMinimumCurvatureRadius := D_MIN_CURVATURE_RADIUS ); // stage 3: smooth corners fbSmoothPath( bExecute := bDecode, bAbort := NOT bDecode, poqDataIn := fbSmoothMerge.poqDataOut, eMode := SMC_SMOOTHPATHMODE.SP_SPLINE5_MIN_CURVATURE, eAddAxMode := SMC_SMOOTHPATHADDAXMODE.SPAA_NONE, nSizeOutQueue := SIZEOF(aSmoothPathBuffer), pbyBufferOutQueue := ADR(aSmoothPathBuffer), dAngleTol := D_ANGLE_TOL, bSymmetricalDistances := TRUE, bImprovedSymmetricCuts := TRUE ); // stage 4: keep acc/dec and velocity within limits fbLimitDynamics( bExecute := bDecode, bAbort := NOT bDecode, poqDataIn := fbSmoothPath.poqDataOut, wAxis := 16#07, nSizeOutQueue := SIZEOF(aLimitDynamicsBuffer), pbyBufferOutQueue := ADR(aLimitDynamicsBuffer), bIncludePathSettings := TRUE, dMaxVel := 2500, dMaxAccDec := 10000 ); // stage 5: check the path speed fbCheckVelocities( bExecute := bDecode, bAbort := NOT bDecode, poqDataIn := fbLimitDynamics.poqDataOut, dAngleTol := D_ANGLE_TOL); pathQueue := fbCheckVelocities.poqDataOut; // repeat until MaxDuration ... Any idea what I'm doing wrong? Is smooth path supposed to work at all when using a demo license? Thanks.
Last updated: 2025-12-17
Post by tobiassantos on History of Alarms
CODESYS Forge
talk
(Post)
I am running tests using the Windows runtime environment. The alarm history is not being logged and displays the error: "Some kind of disk I/O error occurred. Check disk space" in the alarm table. Furthermore, it is not possible to export the alarms. I have already tried to find a configuration field in Alarm storage and Alarm configuration to fix this problem, but I haven't found any related fields.
Last updated: 2026-01-05
Post by tobiassantos on History of Alarms
CODESYS Forge
talk
(Post)
I am running tests using the Windows runtime environment. The alarm history is not being logged and displays the error: "Some kind of disk I/O error occurred. Check disk space" in the alarm table. Furthermore, it is not possible to export the alarms. I have already tried to find a configuration field in Alarm storage and Alarm configuration to fix this problem, but I haven't found any related fields.
Last updated: 2026-01-05
Post by gseidel on Axis directions in CNC editor not using right-hand rule?
CODESYS Forge
talk
(Post)
Hi bertus, the coordinate systems used in SoftMotion CNC are all right-handed. The CNC editor uses isometric projection. This can be confusing, as in your example. The y-axis seems to point into the screen, away from the viewer. However, this is just an optical effect. If you turn on the (experimental) perspective projection (must be added to the CNC tool bar using tools->customize), you can see that the coordinate system is in fact right-handed. Best regards, Georg
Last updated: 2026-01-07
Post by gseidel on Scara3 kinematic robot error
CODESYS Forge
talk
(Post)
Hi aniket-b, the maximum cycle time of the EtherCAT_Task is very high, ca. 35 ms. Could you please check if this is just the first cycle after starting the application or if it happens during motion? (You can reset the times in the task configuration by right-clicking in the "monitoring" tab.) Another thing to try: put the SoftMotion_Planning task on a different core. Best regards, Georg
Last updated: 2026-01-07
Post by timvh on KeyPad Function in Visualization to fill a table
CODESYS Forge
talk
(Post)
Create an array of STRING and 1 INT variable, e.g.: asMyString : ARRAY[0..9] OF STRING; iIndex : INT; Then place a "Table" object in the visualization: - link this to the string array variable. - Check the option "Use Template" - Then in the Input Configuration - add the "Write Variable" command Somewhere else add a "Combobox, array" - link this to the same array. - And link the index to the INT variable. In the Combobox, you can then select one of the strings from the array. The index variable will indicate which selection has been made.
Last updated: 2026-01-08
Post by gseidel on Mismatch between coordinate monitor and actual motion using SMC_GroupJog2, MC_MoveLinearAbsolute (6DOF)
CODESYS Forge
talk
(Post)
Dear darwin03, my first guess is that the axis scaling of the last axis (joint 6) is not correct. It should be confiugured so that one technical unit equals one angular degree. From the video, it rather looks like 1 technical unit is a full revolution of the joint. (This holds for all rotary axes used with SoftMotion Robotics: they must be scaled so that one technical unit equals one angular degree.) Best regards, Georg
Last updated: 2026-04-07
Post by dgross on Alarm Manager History Message Missing
CODESYS Forge
talk
(Post)
Hi All, I'm using a webvisu on a control Win V3 SoftPLC. My issue is with the Alarm Managers Alarm history. It does create entry's and does also show the latch data. But it only shows the message of the active alarms. In the history the message is empty (also in the .csv Export file). The archiving in the alarm group is checked and the Alarm storage is activated. I'm using the Version V3.5 SP22 Patch 1. Do you have any idea where that comes from?
Last updated: 6 days ago
Post by mohi on Connect to Azure IoT Hub
CODESYS Forge
talk
(Post)
Hello, I try to connect a Controller to Azure IoT Hub using a Root Certificate put on the controller in /etc/ssl/certs und SAS Token for IoT Hub instead of X.509 certificates. The TLS Handshake is successful when I test in terminal using openssl. It seems that the Controller doesn't start this process. I use the Azure IoT Hub library and the Net Base Services. Is there something left or something you can recommend? Best regards Mo
Last updated: 2 days ago
Post by mohi on Connect to Azure IoT Hub
CODESYS Forge
talk
(Post)
Hello, I try to connect a Controller to Azure IoT Hub using a Root Certificate put on the controller in /etc/ssl/certs und SAS Token for IoT Hub instead of X.509 certificates. The TLS Handshake is successful when I test in terminal using openssl. It seems that the Controller doesn't start this process. I use the Azure IoT Hub library and the Net Base Services. Is there something left or something you can recommend? Best regards Mo
Last updated: 2 days ago
Post by wollvieh on SP19 Runtime Zugriff auf lokales Dateisystem
CODESYS Forge
talk
(Post)
Hallo, hier in diesem Beispiel ist $Download$ ein Platzhalter für den kompletten Pfad /home/pi/Downloads/ auf dem Zielsystem, wo die SoftPlc läuft. In der SoftPlc gibt man dann als Dateipfad und Dateiname wie folgt an : '$$Download$$/Datei.txt' Die Datei Datei.txt wird dann auf dem Zielsystem unter /home/pi/Downloads/ angelegt. Pfade darunter werden auch angelegt, z.Bsp.: '$$Download$$/Ordner1/Datei.txt' Beispiel des Platzhalters: [SysFile] PlaceholderFilePath.2=/home/pi/Downloads/, $Download$
Last updated: 2026-01-22
Post by gseidel on CAM Motion Recover after STO
CODESYS Forge
talk
(Post)
Dear Mr. Kolev, can you please explain a little more: what happens at an STO? I assume the slave axes will be stopped and retain their current position? How, then, do you call MC_CamIn after the STO? Do you restart it with a new rising edge, but on the same master position as before the STO? Which StartMode are you using, is the cam slave absolute or relative, master absolute or relative? Are the slave axes modulo or finite axes? Best regards, Georg Seidel
Last updated: 2026-02-13
To search for an exact phrase, put it in quotes. Example: "getting started docs"
To exclude a word or phrase, put a dash in front of it. Example: docs -help
To search on specific fields, use these field names instead of a general text search. You can group with AND or OR.