Troubleshooting for TRNSYS/Type 169
20th Jun 2022
A new component for Python, Type 3157 (Calling Python from TRNSYS with CFFI), has been released and is more functional and stable than Type 169. I strongly recommend using Type 3157.
The following is a list of things to check if Type169 does not work properly.
The version of Python you have installed
First of all, please make sure that your Python environment is suitable for running Type169.
- Python 3.6, or equivalent Anaconda version.
To use Type169 with other Python versions, you will need to build Type169 for that version.
Since the TRNSYS18.04.0000 release, the TRNSYS18\Exe\DLLS folder contains the pre-built DLLs. Unzip the compressed file corresponding to the Python version you are using and overwrite it in the C:\TRNSYS18\UserLib\ReleaseDLLs folder.
Type169 built for Python 3.8 is available at the following link.
Note: Type169 is built for the 64bit version of TRNSYS and Python. It does not work with the 32-bit version of TRNSYS and Python.
Errors and solutions
”TRNSYS Message 105 : A TYPE was called in the TRNSYS input file…”
*** Fatal Error at time : 0.000000
Generated by Unit : Not applicable or not available
Generated by Type : 169
TRNSYS Message 105 : A TYPE was called in the TRNSYS input file but was either not linked into trndll.dll or was not found in an external dll. A dummy subroutine was called in its place. Please link the TYPE or remove it from the input file
Reported information : Type169 could not be located in either the TRNdll64.dll or in an external dll. Please relink theTRNDll64.dll including this Type or make sure that an external DLL in the \UserLib\DebugDLLs and \UserLib\ReleaseDLLs folders contain the Type.
If the appropriate version of Python is already installed, Type169 is unable to reference the Python path.
As a workaround, add the Python path to the environment variable, PATH, so that Type 169 can refer to the Python library.
The following is an example of specifying the Anaconda path.
Note: The path should match the Anaconda installation directory.
An empty error manager dialog is displayed.
When the calculation is executed, an error manager dialog is displayed immediately afterwards, but no error message is shown on the dialog.
This can occur if the environment variable PYTHONPATH is not defined.
Please define PYTHONPATH in the environment variable as shown in the image. The picture is an example of definition for Anaconda3.8.
If the above does not solve the problem, it is probably something in your Python environment. As a workaround, try the following steps.
- Download the Python embeddable version from the official Python website.
Download the “Windows x86-64 embeddable zip file” for the version corresponding to Type 169.
For example, to download the embeddable version of Python 3.8.3, click on the link in the red box in the picture below.
- Once the file has been downloaded, unzip the zip file.
- Copy all the unzipped files to the TRNSYS folder (C:\TRNSYS18\Exe).
Note: I haven’t tried this, but it might work around the error “TRNSYS Message 105 : A TYPE was called in the TRNSYS input file…”. error may also be avoided with this.
Floating point division by zero.
When you run the calculation, you will get an error message as shown in the picture.
If you click on the “OK” button, you will get a further error message as shown in the picture.
This error occurs if you are importing a non-standard library in a Python script. For example, if you are importing Numpy, you will get this error.
The cause of the error is under investigation.
It has been confirmed that the software works in the following environments.
Windows10 Pro(64bit, 20H2)