Post by tehthoams on Find Function: Object reference not set to an instance of an object.
CODESYS Forge
talk
(Post)
Hey, Sorry this isn't super helpful, but i had this problem once and was able to resolve it. I can't recall how I solved it and whether it was a problem with my codesys installation or the project itself. If it is the codesys installation, make sure all your required libraries and plugins are installed and available. compare with a colleagues installation if possible. I vaguely recall saving a copy of my project and deleting things one by one until the error went away...
Last updated: 2023-10-30
Post by vsgn on Passing properties as VAR_IN_OUT variables.
CODESYS Forge
talk
(Post)
Hi, in my experience, the best options for such a case could be: 1. Pass a FunctionBlock via VAR_IN_OUT, containing all variables, mehods and properties needed for the logic of this graphic element (be aware of implementing correcly both get and set accessor for properties) 2. Pass an Interface via VAR_INPUT, of which you can use obviously only Properties and Methods. This is much more elegant for me. Here, you can just pass directly the instance of a FunctionBlock implementing such Interface as input. Hope you'll find this suggestions useful.
Last updated: 2025-05-13
Post by pernockham on Engineering IDE from linux?
CODESYS Forge
talk
(Post)
An update note. Still using linux/Qemu. Still happy, but sometimes some things are harder. I lost the "bridge" connection to my VM (meaning for instance I couldnt "scan network" and find local units. Have spent tons of hours to find out why. Finally it seems the traffic got blocked by the firewall/iptables so needed to set rules for that. So friendly note that rules must allow forward traffic to/from you configured host bridge device.
Last updated: 2025-09-22
Post by yannick on Raspberry PI 5 not working
CODESYS Forge
talk
(Post)
Hello I'm using Codesys V3.5 SP19 Patch 6 and a Raspberry PI 5 4GB Bookworm 32bit with the Runtime 4.11.0.0 SL. I can install the runtime and download the software completly but after a few seconds the connection disconnects with the message no connection to device. Please scan network again. And the object reference was not set to an object instance. See screenshot. Can somebody help me with that? Thanks
Last updated: 2024-04-28
Post by installwhat on C0077 on one machine but not another
CODESYS Forge
talk
(Post)
https://forge.codesys.com/forge/talk/Engineering/thread/92c913bf7c/ Solved by changing the ethercat master version after reading the thread linked above. I think I need to read up on why this happened. I understand that placeholders should point to a particular version for obvious reasons however what has occurred in this instance is different. The example project was released as a "project archive" but it seems to load differently based on what I've got installed in my repositories. I'm going to dig into that tomorrow but any advice is welcome.
Last updated: 2024-06-11
Post by kenth1973 on MC_Phasing state explenation
CODESYS Forge
talk
(Post)
My MC_Phasing FB was stuck in iPhasingState=1 and error output HIGH on one axis. I could manually overwrite the state to 0 in the instance data. During normal run I see the state change from 0 to 10 to 100 back to 0 (maybe more states that I couldnt catch with the naked eye) But - what are the states numbers and their different explenations? This is not explained in the FB guide on codesys. (the pictures show state = 0 after I reset)
Last updated: 2025-11-22
Post by psychoengineer on Cannot Save CSV File on Windows Computer Using CODESYS and Control Win
CODESYS Forge
talk
(Post)
I am currently working on a project using CODESYS and Control Win on a Windows computer. I've encountered an issue where I am unable to save a CSV file. I have followed the standard procedures and used the appropriate file handling functions, but the file is not being created or saved as expected. IF xStartTest THEN sFileName := '\logs.txt'; sFileName := CONCAT(gvl.g_sMainDirectory, sFileName); sFileNameCopy := '\CAAFileCopy.txt'; sFileNameCopy := CONCAT(gvl.g_sMainDirectory, sFileNameCopy); //eWriteState := FILE_OPEN_TRIGGER; xTestDone := FALSE; xError := FALSE; xStartTest := FALSE; END_IF VAR_GLOBAL g_sMainDirectory : STRING := 'C:\LogFiles'; // file path for CSV file END_VAR Despite this, the file does not appear in the specified directory, and no error messages are being generated. I've checked the directory permissions and ensured that the path is correct. Has anyone else experienced a similar issue or have any suggestions on how to resolve this? Any help would be greatly appreciated. Thank you!
Last updated: 2024-07-04
Post by pernockham on Engineering IDE from linux?
CODESYS Forge
talk
(Post)
I have done the switch (linux mint, virtual windows through QEMU/KVM) now and is generally pleased. Have had problems in two areas initially. To bridge IP to the Virtual unit (solved), I overthought things initially. Solution. Configure manually a bridge in the mint-"network connections". Use that bridge in the Qemu settings as "Bridge device", "Device name": "name of the configured bridge" Figure out where to store the projects. I started out have the data in linux world (sort of) and linking it the windows with "virtio-fs". That had some serious impact though on git-handling. It seems that virtio-fs interpreted any file-path as lowercase only even if there were uppercase, resulting in git not able to sync files between its repository and the source code (it created a new file-path for me with only lowercase). Then I switch to samba-share instead and this works much better, though (git-actions) is a part that still has low performance with lots of waiting for file-actions. What should be the best way of handling the source/git? Edit to answer myself: Save the project "locally" in windows, then a lot of slow performance is avoided. Then a git-remote sync for backup.
Last updated: 2025-05-08
Post by charly29160 on CmpCharDevice blocks gpiochip access on Raspberry Pi 5 since update from SP18 to SP21
CODESYS Forge
talk
(Post)
Hi, after updating CODESYS Control for Raspberry Pi SL from patch level 18 to 21 (currently 4.21.0.0), the IoDrvGPIO driver ("GPIOs B+/Pi2") can no longer open any GPIO chip on a Raspberry Pi 5. Log output on login: Could not open GPIOChip0. Access to path /dev/gpiochip0 not allowed. Add /dev/gpiochip0 to permitted paths in configuration file if required Could not open GPIOChip4. Trying to open GPIOChip0 Access to path /dev/gpiochip4 not allowed. Add /dev/gpiochip4 to permitted paths in configuration file if required Could not open any GPIOChip. System details: Raspberry Pi 5, 32-bit Raspberry Pi OS (armv7l), kernel 6.12.47+rpt-rpi gpiodetect correctly shows gpiochip0 [pinctrl-rp1] (54 lines) as the RP1 GPIO controller Runtime: CODESYS Control for Raspberry Pi SL 4.21.0.0, Runtime Toolkit SP21+ This worked without issues before the update to SP21. I've tried adding the following to CODESYSControl_User.cfg without success: ini[CmpCharDevice] Linux.DevicePath.1=/dev/gpiochip0 Linux.DevicePath.2=/dev/gpiochip4 Could you tell me the correct section/key to whitelist /dev/gpiochip0 (and /dev/gpiochip4) for CmpCharDevice? I suspect this is part of the general security hardening introduced around SP21 (similar to ForceIecFilePath for SysFile, or the new Gateway "accept local clients only" default), but I couldn't find it documented anywhere. Thanks in advance!
Last updated: 2026-07-19
Post by micik on Python scripting - print whole project tree
CODESYS Forge
talk
(Post)
Hello, I have found a script for printing device tree in Codesys project. This script is available as code snippet as an exmaple for using Python in Codesys. However I feel main documentation is lacking. For example, where can I find that object has "is_device" attribute? Code examples are given here: https://content.helpme-codesys.com/en/CODESYS%20Scripting/_cds_access_cds_func_in_python_scripts.html However, I have a question how to print the whole Project tree and not just devices? Of course I need to remove check: if treeobj.is_device: But simply removing this test condition will not produce what I want. I need to print PLC Logic, Application, ad other nodes in the Project tree. Where to find this documentation?
Last updated: 2024-08-12
Post by timvh on Current Visu name without Current Visu Variable
CODESYS Forge
talk
(Post)
To get the current visu for all your individual web clients, you could iterate over them, using the same library 1) Create a new function block which implements VU.IVisualizationClientIteration 2) Create an instance of this function block + add an instance of the "iterate" function block fbIterateCallBack : FB_IterateOverClients; // this implements VU.IVisualizationClientIteration fbVuIterate : VU.FbIterateClients; // this FB iterates over all clients 3) Call the fbVuIterate and set the reference to the call back FB. Then it will automatically call the method "HandleClient" of this function block. fbVuIterate( xExecute:= NOT fbVuIterate.xDone, xDone=> , xBusy=> , xError=> , itfClientFilter:= VU.Globals.OnlyWebVisu, eError=> , itfIterationCallback:= fbIterateCallBack); In the HandleClients method you can use the property of the interface of your webclient to which page it is currently on: sCurrentVisuOfClient := itfClient.CurrentVisuName; 4) Optionally from here you could also set the visu for the webclient, but this might be obsolete, because the other function block is now available... xQueryOK : BOOL; xChangePage : BOOL; itfVisuClientRawData : VU.IVisualizationClientRaw; xQueryOK := __QUERYINTERFACE(itfClient, itfVisuClientRawData); IF xQueryOK AND xChangePage THEN VisuElems.g_VisuManager.SetMainVisu(pClientData := itfVisuClientRawData.ClientDataPointer, stVisu := 'Visu2'); xChangePage := FALSE; END_IF
Last updated: 2025-08-13
Post by denizerm on Deploy Control SL cant find Podman
CODESYS Forge
talk
(Post)
Hello, CODESYS seems to have problems finding the container engine. In the "Deploy Control SL" window, after connecting via ssh, it simply says: [INFORMATION] Connected successfully! [INFORMATION] Successfully connected to target (192.168.4.199) [WARNING] Error detecting container architecture running podman info yields normal results. My podman info output is as follows: home/Admin$ podman info host: arch: amd64 buildahVersion: 1.35.3 cgroupControllers: - cpu - memory - pids cgroupManager: systemd cgroupVersion: v2 conmon: package: Unknown path: /usr/bin/conmon version: 'conmon version 2.1.10, commit: affab49967eb62f75d2a47398344ab053326289f' cpuUtilization: idlePercent: 99.36 systemPercent: 0.3 userPercent: 0.34 cpus: 4 databaseBackend: sqlite distribution: codename: scarthgap distribution: redagv version: 1.0.0 eventLogger: journald freeLocks: 2040 hostname: secure-automation-os idMappings: gidmap: - container_id: 0 host_id: 1000 size: 1 - container_id: 1 host_id: 100000 size: 65536 uidmap: - container_id: 0 host_id: 1100 size: 1 - container_id: 1 host_id: 100000 size: 65536 kernel: 6.6.65-intel-pk-standard linkmode: dynamic logDriver: journald memFree: 6115598336 memTotal: 8086278144 networkBackend: cni networkBackendInfo: backend: cni dns: {} ociRuntime: name: crun package: Unknown path: /usr/bin/crun version: |- crun version 1.14.3.0.0.0.8-89d44-dirty commit: 89d44467e3b410b73f2065756a12789be45b855b rundir: /run/user/1100/crun spec: 1.0.0 +SYSTEMD +SELINUX +APPARMOR +CAP +SECCOMP +EBPF +YAJL os: linux pasta: executable: /usr/bin/pasta package: Unknown version: "" remoteSocket: exists: true path: /run/podman-shared/podman.sock security: apparmorEnabled: false capabilities: CAP_CHOWN,CAP_DAC_OVERRIDE,CAP_FOWNER,CAP_FSETID,CAP_KILL,CAP_NET_BIND_SERVICE,CAP_SETFCAP,CAP_SETGID,CAP_SETPCAP,CAP_SETUID,CAP_SYS_CHROOT rootless: true seccompEnabled: true seccompProfilePath: "" selinuxEnabled: false serviceIsRemote: true slirp4netns: executable: /usr/bin/slirp4netns package: Unknown version: |- slirp4netns version 1.2.0-beta.0+dev commit: unknown libslirp: 4.7.0 SLIRP_CONFIG_VERSION_MAX: 4 libseccomp: 2.5.5 swapFree: 0 swapTotal: 0 uptime: 1h 36m 10.00s (Approximately 0.04 days) variant: "" plugins: authorization: null log: - k8s-file - none - passthrough - journald network: - bridge - macvlan - ipvlan volume: - local registries: localhost:5000: Blocked: false Insecure: true Location: localhost:5000 MirrorByDigestOnly: false Mirrors: null Prefix: localhost:5000 PullFromMirror: "" search: - localhost store: configFile: /home/serviceuser/.config/containers/storage.conf containerStore: number: 2 paused: 0 running: 2 stopped: 0 graphDriverName: overlay graphOptions: {} graphRoot: /data/containerfiles graphRootAllocated: 119952025600 graphRootUsed: 13801246720 graphStatus: Backing Filesystem: extfs Native Overlay Diff: "true" Supports d_type: "true" Supports shifting: "false" Supports volatile: "true" Using metacopy: "false" imageCopyTmpDir: /var/tmp imageStore: number: 4 runRoot: /run/user/1100/containers transientStore: false volumePath: /data/containerfiles/volumes version: APIVersion: 5.0.2-dev Built: 1711987427 BuiltTime: Mon Apr 1 16:03:47 2024 GitCommit: bb81e85a430fa95d23a15b77c717fd68bf06ebf2 GoVersion: go1.22.12 Os: linux
Last updated: 2025-10-22
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 felipemsgarcia on Edge Gateway online, but PLC is not online
CODESYS Forge
talk
(Post)
Hello, Up until yesterday (2023/11/20) I was able to connect to the PLC remotely with no issues through Edge Gateway. However, today I can see the Edge Gateway online but I can find the PLC even if I do a network scan. Following the same path as janber0206 @ https://forge.codesys.com/forge/talk/automation_server/thread/e78b11d7e9/, I looked into certificates and found that one of the Trusted publisher certificates has expired earlier today (2023/11/21). Please see image. Questions are: Does it affect the connection to the PLC through Edge Gateway? How do I fix it? Thank you very much in advance!
Last updated: 2023-11-21
Post by gatto on CAA File open Problems
CODESYS Forge
talk
(Post)
Ciao, here same question https://forge.codesys.com/forge/talk/Engineering/thread/2538729618/ in this post https://forge.codesys.com/forge/talk/Engineering/thread/4586a90290/?limit=25#d531 i find : keep in mind that all files which are generated / or read should be exist in the iecfilepath this means: for Windows (Control Win as example) c:\ProgramData\CODESYS\CODESYSControlWinV3x64\268E8ADF\PlcLogic for Linux /var/opt/codesys/PlcLogic I never use codesys on windows but im sure on linux we can manipulate file only inside /var/opt/codesys/Plc Logic. Or you need to modify the file codesyscontrol.cfg for change path permission, but this is another history Buone feste !
Last updated: 2024-12-21
Post by jzhvymetal77 on VarAccGetAddress does not return the correct address for TYPE_ARRAY or TYPE_USERDEF.
CODESYS Forge
talk
(Post)
VarAccGetAddress does not return the correct address for TYPE_ARRAY or TYPE_USERDEF. When you use VarAccGetNode, it returns a proper IBaseTreeNode if you provide the full path of an array element or structure element, and it even provides the correct data type. The problem is that with TYPE_ARRAY, it returns the start address of the array rather than the indexed element. With TYPE_USERDEF, it only returns the offset of the element instead of the actual address. This causes many issues with nested structures or arrays of structures, since it requires manually calculating the address based on the parent IBaseTreeNode. See attached image and example.
Last updated: 2025-08-28
Post by gseidel on SMC_Interpolator / CNC Abort – ControlAxisByPos Sometimes Remains Busy and Axis Continues Moving
CODESYS Forge
talk
(Post)
Hi kishan, I would recommend to first execute a stop (input bSlowStop or bQuickStop of the interpolator). Only when the interpolator has stopped you should abort the interpolator and preprocessing FBs. BTW., a new rising edge of the execute input should suffice. In case preprocessing is done in a different task: take care to write the abort signal to a local variable in the path and interpolation task and use this local copy. (Otherwise, some preprocessing FBs might see an abort and others not, in the same cycle of the task.) Best regards, Georg
Last updated: 2026-10-27
Post by vstrom on Codesys v3.5.22.10 - Fail to create a project Archive
CODESYS Forge
talk
(Post)
Hi to all, I've created a project using the File->New Project-> Standard Project command. Then I've add the object "Visualization Manager" and then tried to create a project archive (File->Project Archive->Save Archive), but it fails with the error "Access to the path 'C:\Program Files\CODESYS 3.5.22.10\CODESYS\Common\3hxi4iod.put' is denied". The idicated file don't exist. First time of use of the new Codesys versionù, I've reinstalled the developement software but nothing change. If I don't add the Visualization part, the archive is created, it's seems to be a problem with the HMI part. Any ideas? Thanks
Last updated: 2026-04-22
Post by alexgooi on Network variable stops sending
CODESYS Forge
talk
(Post)
Hi Reinier, What usually works for me is settings it up in the following way: In the sender block make sure that the list identifier is unique for the whole installation (this is only relevant when you have multiple senders in 1 network). When you are linking the NVL to a file make sure that the path to this file doesn't change. In my experience the NVL stops working when you change the working directory and afterwards open the NVL in de Codesys IDE. If this doesn’t apply to you application, you could also try to change the port number, maybe there is an other process making use of port 1202. Kind regards Alex
Last updated: 2026-04-22
Post by gseidel on Limit Axis CNC Jerk using SMC_Polynomial_AbsMaxLocs
CODESYS Forge
talk
(Post)
Dear josepmariarams, this (internal) function has been removed with SoftMotion 4.17.0.0. We do not have public functions to compute the extrema of a polynomial. On which polynomials exactly did you call SMC_Polynomial_AbsMaxLocs? (Maybe if I understand better how you limit the jerk I can come up with an alternative.) There is no functionality to limit the jerk of individual axes in the CNC. With SMC_LimitDynamics, you can limit the velocity and acceleration of cartesian (X/Y/Z) and additional (P/Q/U/V/W/A/B/C) axes, but not the jerk. And with a quadratic ramp type you can limit the jerk on the path. Best regards, Georg
Last updated: 2026-06-10
Post by struccc on Backtick identifiers
CODESYS Forge
talk
(Post)
Important: ` - Backtick - ASCII 96 ' - Apostrophe or Single Quote - ASCII 39 In the online help for some reason it renders ’ ... The only issue I don't get, why identifiers are still case-insensitive, even within `backtricks`? `mPa` and `MPa` for milli-, mega Pascal are the same identifiers, unfortunately... Is this a bug or a feature? Otherwise can do pretty nasty things with it: // A practical (?) ASCII table served as crazy strict enumeration // Just for hangover Monday mornings {attribute 'qualified_only'} {attribute 'strict'} TYPE ASCII : ( NULL := 16#00, START_OF_HEADING := 16#01, START_OF_TEXT := 16#02, END_OF_TEXT := 16#03, END_OF_TRANSMISSION := 16#04, ENQUIRY := 16#05, BELL := 16#06, ACKNOWLEDGE := 16#07, BACKSPACE := 16#08, HORIZONTAL_TAB := 16#09, LINE_FEED := 16#0A, VERTICAL_TAB := 16#0B, FORM_FEED := 16#0C, CARRIAGE_RETURN := 16#0D, SHIFT_OUT := 16#0E, SHIFT_IN := 16#0F, DATA_LINK_ESCAPE := 16#10, DEVICE_CONTROL_1 := 16#11, DEVICE_CONTROL_2 := 16#12, DEVICE_CONTROL_3 := 16#13, DEVICE_CONTROL_4 := 16#14, NEGATIVE_ACKNOWLEDGE := 16#15, SYNCHRONOUS_IDLE := 16#16, END_OF_TRANS_BLOCK := 16#17, CANCEL := 16#18, END_OF_MEDIUM := 16#19, SUBSTITUTE := 16#1A, ESCAPE := 16#1B, FILE_SEPARATOR := 16#1C, GROUP_SEPARATOR := 16#1D, RECORD_SEPARATOR := 16#1E, UNIT_SEPARATOR := 16#1F, ` ` := 16#20, `!` := 16#21, `$"` := 16#22, `#` := 16#23, `$$` := 16#24, `%` := 16#25, `&` := 16#26, `$'` := 16#27, `(` := 16#28, `)` := 16#29, `*` := 16#2A, `+` := 16#2B, `,` := 16#2C, `-` := 16#2D, `.` := 16#2E, `/` := 16#2F, `0` := 16#30, `1` := 16#31, `2` := 16#32, `3` := 16#33, `4` := 16#34, `5` := 16#35, `6` := 16#36, `7` := 16#37, `8` := 16#38, `9` := 16#39, `:` := 16#3A, `;` := 16#3B, `<` := 16#3C, `=` := 16#3D, `>` := 16#3E, `?` := 16#3F, `@` := 16#40, A := 16#41, B := 16#42, C := 16#43, D := 16#44, E := 16#45, F := 16#46, G := 16#47, H := 16#48, I := 16#49, J := 16#4A, K := 16#4B, L := 16#4C, M := 16#4D, N := 16#4E, O := 16#4F, P := 16#50, Q := 16#51, `R ` := 16#52, `S ` := 16#53, T := 16#54, U := 16#55, V := 16#56, W := 16#57, X := 16#58, Y := 16#59, Z := 16#5A, `[` := 16#5B, `\` := 16#5C, `]` := 16#5D, `^` := 16#5E, `_` := 16#5F, `agrave`:= 16#60, `a` := 16#61, `b` := 16#62, `c` := 16#63, `d` := 16#64, `e` := 16#65, `f` := 16#66, `g` := 16#67, `h` := 16#68, `i` := 16#69, `j` := 16#6A, `k` := 16#6B, `l` := 16#6C, `m` := 16#6D, `n` := 16#6E, `o` := 16#6F, `p` := 16#70, `q` := 16#71, `r` := 16#72, `s` := 16#73, `t` := 16#74, `u` := 16#75, `v` := 16#76, `w` := 16#77, `x` := 16#78, `y` := 16#79, `z` := 16#7A, `{`{} := 16#7B, `|` := 16#7C, `}` := 16#7D, `~` := 16#7E, DEL := 16#7F ) BYTE; END_TYPE
Last updated: 2025-11-05
Post by sangeetnenwani on Test Driver Availability in CODESYS 64-bit and Test Manager 5.1.0.0
CODESYS Forge
talk
(Post)
I’m operating with CODESYS in a 64-bit configuration and the Test Manager at version 5.1.0.0, where I’m attempting to use project scripts from an earlier version. These scripts call for certain test drivers that are not present in my installation. It’s unclear whether the absence is due to the 64-bit system, an update in the test drivers, or if I need to enable or install additional elements. For instance, the loadproject(Codesys.Base) command is missing, but loadproject(testmanager.project) is available. The FileIO command for CODESYS isn’t accessible, yet the testmanager’s driver for it exists, as does the execuptscript command.
Last updated: 2024-08-06
Post by sangeetnenwani on Test Driver Availability in CODESYS 64-bit and Test Manager 5.1.0.0
CODESYS Forge
talk
(Post)
I’m operating with CODESYS in a 64-bit configuration and the Test Manager at version 5.1.0.0, where I’m attempting to use project scripts from an earlier version. These scripts call for certain test drivers that are not present in my installation. It’s unclear whether the absence is due to the 64-bit system, an update in the test drivers, or if I need to enable or install additional elements. For instance, the loadproject(Codesys.Base) command is missing, but loadproject(testmanager.project) is available. The FileIO command for CODESYS isn’t accessible, yet the testmanager’s driver for it exists, as does the execuptscript command.
Last updated: 2024-08-06
Post by alimans on OPC-UA Server, Symbol Set: Raise an error: Object reference not set to an instance of an object.
CODESYS Forge
talk
(Post)
Hi everyone, I just created a very simple library without any code and, added it to my very simple project. after adding this library, I get an error when I try to open "Symbol Set" in "OPC UA Server" in "Communication Manager". Here is the code of my POU in the library: FUNCTION_BLOCK POU VAR eCommand : (CMD_NONE:=0, CMD_RESET:=-1) INT := CMD_NONE; END_VAR Attached is the error that I get. I also noticed that by removing the enumeration variable above (eCommand), I can open the "Symbol Set" again. Anybody has any idea why this error is raised and how could I use enumeration variables without error in "OPC UA Symbol Set"?
Last updated: 2024-08-08
Post by abner on Open specific Version of Codesys Control Win V3 x64
CODESYS Forge
talk
(Post)
Hi, I have installed different versions of Codesys, 3.5.7 - 3.5.8 - 3.5.16 - 3.5.19. When I create a project in Codesys 3.5.16 and I try to open an instance of Codesys Control Win V3 x64 it always open version 3.5.19, so appear a message windows about versions of devices are different. I have tried to open it from the installation folder and always open the last version 3.5.19 C:\Program Files\CODESYS 3.5.16.0\GatewayPLC C:\Program Files\CODESYS 3.5.19.70\GatewayPLC Does somebody know how to open an specific version of Codesys Control Win V3?
Last updated: 2024-08-21
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.