Frequently Asked Questions
Using a CCS Programmer in Linux
For more detailed and in-depth instructions on how to use CCS programmers with CCSLoad in Linux, download the readme.
Current Limitations
The current version of the CCSLoad Programmer Control Software for Linux expects the programmer to by connected as a "ttyS0" through "ttyS7" device only. If the programmer is connected as a "ttyS8" device or higher, or is connected as a "ttyUSB*" device, it will not be visible to the software. Due to this limitation, it will be necessary to create a symbolic link between the programmer and a COM Port. Depending on whether the system uses a static device directory or a dynamic device directory using udev, the instructions below will outline the connection and mapping process.
Select the type of device directory being used:
Static Devices
- Connect the USB programmer to the PC.
- Enter the following command in a terminal window:
- Before creating a symbolic link to map the USB Port to a COM Port, use the following commands in a terminal window to list and remove any unused "ttyS*" files:
- The * in the remove command should be replaced with the number of the "ttyS" file to be removed. The list command can be entered with the * to display all currently available COM Ports.
- In order to create a symbolic link to map the USB programmer to a COM Port, enter the following command in a terminal window:
- The * in "ttyUSB*" should be replaced with the number of the file associated with the connected programmer. The * in "ttyS*" should be replaced with the number of the first available COM Port.
- This command will need to be done every time the PC is restarted in order to remap the USB programmer to a COM Port.
dmesg
If Linux recognizes the connected programmer, it will be assigned a "ttyUSB*" file and will appear in the following list generated by the above command:
ftdi_sio 7-1:1.0: device disconnected usb 7-1: new full speed USB device using uhci_hcd and address 4 usb 7-1: configuration #1 chosen from 1 choice ftdi_sio 7-1:1.0: FTDI USB Serial Device converter detected usb 7-1: Detected FT232BM usb 7-1: Number of endpoints 2 usb 7-1: Endpoint 1 MaxPacketSize 64 usb 7-1: Endpoint 2 MaxPacketSize 64 usb 7-1: Setting MaxPacketSize 64 usb 7-1: FTDI USB Serial Device converter now attached to ttyUSB0
ls -al /dev/ttyS* rm /dev/ttyS*
*** NOTE ***
ln -s /dev/ttyUSB* /dev/ttyS*
*** NOTE ***
Dynamic Devices (udev)
- Connect the USB programmer to the PC.
- Enter the following command in a terminal window:
- The X in the ID field for a connected FTDI device changes depending on which programmer is connected to the PC. Here is a list of the programmers and their corresponding FTDI device IDs:
lsusb
If Linux recognizes the connected programmer, the following line will appear in the list of connected devices:
ID 0403:F9DX Future Technology Devices International, Ltd
*** NOTE ***
CCS Progammer FTDI IDs | |
---|---|
FTDI ID | CCS Programmer |
0403:F9D0 | ICD-U20 |
0403:F9D1 | ICD-U40 |
0403:F9D2 | Mach X |
0403:F9D3 | Load-n-Go |
0403:F9D4 | ICD-U64 |
0403:F9D5 | Prime8 |
- In a terminal window, navigate to the installation directory and move the included rules file to the "/etc/udev/rules.d" directory:
- If the 99-CCS-USB.rules file is missing, it can be download here.
- Restart the PC in order to have Linux use the new rules for the udev system.
mv 99-CCS-USB.rules /etc/udev/rules.d/
*** NOTE ***
For more information or additional help about using CCS programmers in Linux, contact CCS Technical Support.