Please enable JavaScript to view this site.

winIDEA Help

Version: 9.21.200


This chapter describes how to troubleshoot general issues with iSYSTEM tools on Linux.



Alternative winIDEA installation method


Use this installation procedure only when specified by iSYSTEM support.



Install Wine.

If you want to use USB for communitacion with BluBox instead of TCP/IP, you have to install Wine from WineHQ repositories. If Wine from official Ubuntu repositories is used, winIDEA crashes in the middle of download via USB.

You can find instructions on the Wine official site.



Create folder <winIDEA-install-dir>, where winIDEA will be installed.

It is recommended to install it under ~/bin.

Do not unpack it into WINEPREFIX directory, because SDKs expect absolute directories, not Wine relative directories.


mkdir -p <winIDEA-install-dir>
cd <winIDEA-install-dir>



mkdir -p ~/bin/winIDEA_ver  &&  cd ~/bin/winIDEA_ver



Download and run winIDEA installation script.

wget  &&  chmod +x


This script downloads the latest verified build of winIDEA. To download some other version, edit it and change version in variable WINIDEA_DISTRO.



Run installer.

sudo ./  


The script will ask you some questions to get information needed to customize installation.



Run winIDEA.

If you've created link during installation in /usr/local/bin folder, type:







By default, proportional font is selected in winIDEA Editor. Right click in winIDEA Editor, select Options /  General / Select Font... Choose monospace font (e.g. Ubuntu Mono). Use Ctrl + mouse wheel to change font size on the fly.



Communication with BlueBox via USB

1. Folder with winIDEA executable (winIDEA.exe) must be in environment variable WINEDLLPATH (this variable is normally set in script which is created during installation). Example of manual run:

cd <winIDEA-install-dir>
export WINEDLLPATH=\`pwd\` # Use backquotes!


2. Udev rules must be set to have access to iSYSTEM USB devices. Make sure the installation script generated file /etc/udev/rules.d/isystem-itag.rules with contents:

ACTION=="add", SUBSYSTEM=="usb", ATTR{idVendor}=="06f9", OWNER="<yourUserName>"


Then detach/attach iSYSTEM device, so that the rule gets applied. If it still does not work, try to restart copmuter.


3. If you run winIDEA as:

cd <winIDEA-install-dir>


and the message Permission denied appears in console, something in the previous step was wrong (do not forget to write the right user name).


4. Enable logging by defining env. var. ISYSTEM_LIBUSB_LOGGING:



In the folder where winIDEA was started you'll find file usb.log. Please send it to iSYSTEM support.


5. If there is no Communication page in the Hardware dialog, then was not found. Please check presence of the library in winIDEA folder and setting of WINEDLLPATH (see above for details).


6. In winIDEA menu open Hardware / Hardware / Communication and select your iSYSTEM device in USB combo box. If iSYSTEM device is turned on and attached to your computer, but it does not show up in drop-down list, them most likely udev rules are not set properly. First make sure that the device is recognized by the system:



If you can see the device in this output, but not in winIDEA, check udev rules as described above, and read on.


Notes on device ownership management
Dynamic device management is done by udev.

In a nutshell: Create a file "/etc/udev/rules.d/isystem-usb.rules". The name is arbitrary, because nothing will override this setting), but the extension 'rules' is mandatory. File contents:

ACTION=="add", SUBSYSTEM=="usb", ATTR{idVendor}=="06f9", OWNER="<userName>"



All items must be on a single line. '==' means that attribute sent by the kernel to udev must match the value, '=' means the key is set to a value. In our case, when device is 'add'-ed to the subsystem 'usb' and vendor and id match the given values, owner of the device is set to the given user name. If we need a node in the /dev folder, we can also specify a name:

ACTION=="add", SUBSYSTEM=="usb", ATTR{idVendor}=="06f9", ATTR{idProduct}=="d001", OWNER="<userName>", NAME="iTagSTM32"


However, the owner of the original node in /dev/bus/usb is not changed. The device must be unplugged/plugged into system for the rule to get applied - no system restart is needed.



Starting winIDEA with isystem.connect

1. For communication bewteen isystem.connect application and winIDEA, TCP/IP is used on Linux. Make sure that isystem.connect over TCP/IP is enabled in winIDEA, menu Tools/Options/isystem.connect.


2. Some functions in isystem.connect (for example ConnectionMgr::connectMRU() ) start winIDEA if no running instance is found. To locate most recently run winIDEA location, it reads winIDEAVersion.log, which is located in Wine user's home




By default this location is /home/<username>/.wine/drive_c/users/<userName>/Application Data, but it may be changed by WINEPREFIX or Wine configuration. While isystem.connect tries to do its best to find this location, it may not

succeed in all cases.



If there are problems starting winIDEA, try do define environment variable ISYSTEM_APPDATA, to point to Wine's Application Data directory, for example:

ISYSTEM_APPDATA=/home/myusername/.wine/drive_c/users/myusername/Application\ Data



Starting winIDEA with specific workspace file


This section does not apply to starting winIDEA from isystem.connect. Linux paths work there.


winIDEA can be started by specifying workspace in command line, for example:

$ winidea SampleSTM32.xjrf



If the specified workspace is not opened, check the following:

older versions (before 9.17.17, Nov. 2017) have bug in The line which starts winIDEA should contain "$@", for example:

wine <path to winIDEA exe>/winIDEA.exe "$@"


Relative workspace path should work as expected. However, absolute workspace paths must be given in Windows path format, for example:

$ winidea Z:/home/me/proj/Sample.xjrf


Workspace specified with Linux absolute path will not be found:

$ winidea /home/me/proj/Sample.xjrf   # WILL NOT WORK!


Copyright© TASKING Germany GmbH