Python Scripting: How to detect and handle "Object reference not set to an instance of an object" error
CODESYS Forge
talk
(Thread)
Python Scripting: How to detect and handle "Object reference not set to an instance of an object" error
Last updated: 2023-08-16
Post by bruno-roth on Read "Homed" status from EtherCAT drive
CODESYS Forge
talk
(Post)
Hello, the information if your axis is already homed you could only find out direct from your Slave. In DS402 status there is no Bit defined. But some manufacturer of Drives use some optional bits or status. E.g. if you have Schneider Electric LXM32 Servo you will find this information in Bit 15. You have to check the manual of your used Servo-Drive f this information is provided in any object and then read it out with SDO.
Last updated: 2025-01-08
Post by eschwellinger on PFC200 Update to 4.9.0.0 - No Connection
CODESYS Forge
talk
(Post)
which PFC Firmware is this? -check with wbm
Last updated: 2023-09-28
Post by struccc on Release SP20 - Changes in behaviour?
CODESYS Forge
talk
(Post)
Dear all, I've just started to migrate some of my ancient projects to SP20. There is one strange error (?) I have noticed so far. In a method call, depending on the circumstances I would like to return reference to an object, or an invalid reference: METHOD Add_EVT_OUT : REFERENCE TO FB_MSG VAR END_VAR IF __ISVALIDREF(refMSG_Entry) THEN Add_EVT_OUT REF= MANAGER.AddMsg_EVT_OUT( refMSG_Entry, _Get_EVT_Message(MSG_EVENT.OUT), _Get_EVT_AddCode(MSG_EVENT.OUT) )^; ELSE Add_EVT_OUT := 0; END_IF So far setting a reference variable to 0, did this. But now, the expression Add_EVT_OUT := 0; gives an error: [ERROR] DB_WTP_370: Add_EVT_ACK MSG_TRIGGER_EXT: C0032: Cannot convert type 'BIT' to type 'REFERENCE TO FB_MSG' Naturally... I can write: Add_EVT_OUT := DWORD#0; But is this the correct way? Is there any constant I could use instead, like "NULL"? Or this is totally wrong and to be avoided?
Last updated: 2024-03-24
Post by manuknecht on FileDialog - OnDialogClosed not called anymore
CODESYS Forge
talk
(Post)
I had similar issues with the OnDialogClosed not being called. I realized that this behaviour is resolved, when the according visualization object on which the input configuration is set is moved to the foreground. Somehow, the object has to be one of the lowest elements in the Element List (i.e. in the foreground) for it to work.
Last updated: 2025-04-25
Post by felipemsgarcia on Generic EtherCAT slave
CODESYS Forge
talk
(Post)
Hello Edwin, Thank you foryour answer but, I believe I was not very clear in my question, sorry. What I wanted to know is if there is a generic EtherCAT slave object already in CODESYS that I can use for anything, remote IO, Drives, VFD's and so on, as long as I match PDO's. Is there such an object? Thank you again!
Last updated: 2024-05-16
Post by felipemsgarcia on Generic EtherCAT slave
CODESYS Forge
talk
(Post)
Hello all, I still couldn't find the answer. I wanted to know is if there is a generic EtherCAT slave object already in CODESYS that I can use for anything, remote IO, Drives, VFD's and so on, as long as I match PDO's. Is there such an object? Thank you!
Last updated: 2024-06-20
Post by jtebokkel on Set REFERENCE to 0 (null) when no longer used
CODESYS Forge
talk
(Post)
yes, it works
Last updated: 2024-10-07
Post by rushikeshsonone on Get the list of all languages from TextList or from font settings of visualmanager
CODESYS Forge
talk
(Post)
Hi, I want list of all languages added in text list during runtime. I check with various object call but no luck. Can you help me with that? Note - I can not using Textlistutil, need other solution
Last updated: 2025-03-04
Post by blade on Visualization Object missing from drop-down list...
CODESYS Forge
talk
(Post)
Hi, For some reason, the Visualisation object is missing from the drop-down list (see the attachment). Does anyone know why it''s missing and how I can fix the problem? Thanks in advance
Last updated: 2026-07-01
Post by ara32 on CODESYS 4 Linux:
CODESYS Forge
talk
(Post)
Hello! I managed to correctly launch CODESYS Developer Studio 3.5.17, almost all functionality works. The only issue remaining is that when connecting to a device and obtaining its public key, the NCryptEncrypt function is called, which is not fully implemented in the DLL source code, resulting in the connection not being established. Currently, the code of this function in the Wine repository looks like this: SECURITY_STATUS WINAPI NCryptEncrypt(NCRYPT_KEY_HANDLE key, BYTE *input, DWORD insize, void *padding, BYTE *output, DWORD outsize, DWORD *result, DWORD flags) { struct object *key_object = (struct object *)key; TRACE("(%#Ix, %p, %lu, %p, %p, %lu, %p, %#lx)\n", key, input, insize, padding, output, outsize, result, flags); if (flags & ~(NCRYPT_NO_PADDING_FLAG | NCRYPT_PAD_OAEP_FLAG | NCRYPT_PAD_PKCS1_FLAG | NCRYPT_SILENT_FLAG)) { FIXME("Flags %lx not supported\n", flags); return NTE_BAD_FLAGS; } if (flags & NCRYPT_NO_PADDING_FLAG || flags & NCRYPT_PAD_OAEP_FLAG) { FIXME("No padding and oaep padding not supported\n"); return NTE_NOT_SUPPORTED; } if (key_object->type != KEY) return NTE_INVALID_HANDLE; return map_ntstatus(BCryptEncrypt(key_object->key.bcrypt_key, input, insize, padding, NULL, 0, output, outsize, result, flags)); } The program crashes due to the NCRYPT_PAD_OAEP_FLAG flag. I'm not proficient in C++, but I attempted to add handling myself, and here's the result: SECURITY_STATUS WINAPI NCryptEncrypt(NCRYPT_KEY_HANDLE key, BYTE *input, DWORD insize, void *padding, BYTE *output, DWORD outsize, DWORD *result, DWORD flags) { struct object *key_object = (struct object *)key; TRACE("(%#Ix, %p, %lu, %p, %p, %lu, %p, %#lx)\n", key, input, insize, padding, output, outsize, result, flags); if (flags & ~(NCRYPT_NO_PADDING_FLAG | NCRYPT_PAD_OAEP_FLAG | NCRYPT_PAD_PKCS1_FLAG | NCRYPT_SILENT_FLAG)) { FIXME("Flags %lx not supported\n", flags); return NTE_BAD_FLAGS; } if (flags & NCRYPT_NO_PADDING_FLAG) { FIXME("No padding not supported\n"); return NTE_NOT_SUPPORTED; } BCRYPT_OAEP_PADDING_INFO oaepInfo = { 0 }; oaepInfo.pszAlgId = BCRYPT_SHA1_ALGORITHM; NTSTATUS status = BCryptEncrypt(key_object->key.bcrypt_key, input, insize, &oaepInfo, NULL, 0, output, outsize, result, flags); if (key_object->type != KEY) return NTE_INVALID_HANDLE; return map_ntstatus(BCryptEncrypt(key_object->key.bcrypt_key, input, insize, padding, NULL, 0, output, outsize, result, flags)); } Now, when calling the connection, it crashes with the error "bcrypt:BCryptEncrypt flags 0x4 not implemented." Can anyone help with enhancing this functionality or at least point me in the right direction?
Last updated: 2024-03-22
Post by eschwellinger on Official MQTT-Client: MAX_RECEIVE_BUFFER_SIZE_EXCEEDED
CODESYS Forge
talk
(Post)
check...taskinfo online check plcshell - plcload
Last updated: 2023-09-27
How to check package and licence availability
CODESYS Forge
talk
(Thread)
How to check package and licence availability
Last updated: 2018-01-22
How to check if any alarms haven't been acknowledged?
CODESYS Forge
talk
(Thread)
How to check if any alarms haven't been acknowledged?
Last updated: 2019-12-18
CmpCodeMeter check for MC License doesn't work
CODESYS Forge
talk
(Thread)
CmpCodeMeter check for MC License doesn't work
Last updated: 2019-05-02
Check I/O module connected by code
CODESYS Forge
talk
(Thread)
Check I/O module connected by code
Last updated: 2021-05-18
Scan failed. Check of the gateway run
CODESYS Forge
talk
(Thread)
Scan failed. Check of the gateway run
Last updated: 2021-05-20
How to check available RETAIN PERSISTENT in e!Cockpit
CODESYS Forge
talk
(Thread)
How to check available RETAIN PERSISTENT in e!Cockpit
Last updated: 2021-04-22
How to check if library produces compile errors
CODESYS Forge
talk
(Thread)
How to check if library produces compile errors
Last updated: 2017-02-10
Geräteliste aus Wago I/O Check einlesen
CODESYS Forge
talk
(Thread)
Geräteliste aus Wago I/O Check einlesen
Last updated: 2017-03-23
where can I find "check unused variables" in V3?
CODESYS Forge
talk
(Thread)
where can I find "check unused variables" in V3?
Last updated: 2016-05-09
CAA File, how to check whether file exists or not
CODESYS Forge
talk
(Thread)
CAA File, how to check whether file exists or not
Last updated: 2024-05-16
Post by eschwellinger on Stepper motor control with (SM_Drive_RaspStepper_direct)
CODESYS Forge
talk
(Post)
..the missing part is which Softmotion version is installed. Check it in the CODESYS Installer and update it to latest version.
Last updated: 2025-11-10
Post by hhermsen on Codesys v3.5.22.10 - Internal error:System.AggregateException...Value cannot be null...Parameter name: expLValue
CODESYS Forge
talk
(Post)
Internal compiler error in SP22.x (expLValue null) — SP21 unaffected — need help isolating root cause I'm hitting the same internal compiler crash reported here. Same exact stack trace (AssignmentStatementReplacer → CreateAssignmentExpression → ArgumentNullException: Value cannot be null. Parameter name: expLValue), but in my case triggered by a self-written library, not a Visualization object — so this looks like a general SP22.x codegen regression rather than something tied to one specific language feature. What I've confirmed: Reverting to SP21 — no issue, builds clean SP22.x — internal compiler crash during Build > Application, code generation phase, with zero useful location info (no POU, no line number) check_for_errors/precompile-only passes cleanly; the crash only happens on a real full build, meaning static analysis never sees it coming What I've tried to isolate the cause (without success): Removed a suspected pattern involving a VAR_IN_OUT parameter used directly as a FOR-loop control variable, combined with early RETURN inside the loop — crash persisted identically afterward Confirmed no Visualization Manager or similar object in the project (ruling out the trigger in the linked report) Used an AI coding assistant (Claude Code) to search for other suspicious patterns — no luck pinpointing the exact statement Question @codesys-com Since the compiler gives no location info at all, is there any way to get more diagnostic output from the SP22.x codegen phase (verbose/debug build flags, log level settings, etc.)? Without that, isolating this in a large library means blind bisection — cutting the codebase in half repeatedly until the crash disappears, which is slow and error-prone without official tooling support. Happy to share the affected project or a minimal repro if that helps CODESYS engineering track it down.
Last updated: 2026-07-11
Post by eschwellinger on Connection to device closed
CODESYS Forge
talk
(Post)
is there a way to check the plclog on Opus A3 by using cmd line under Linux? This log is what you need to check for the disconnection problem
Last updated: 2023-08-24
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.