ColorCNC Colorlight 5A-75E/5A-75B as FPGA controller board
- Lisov_R
- Offline
- New Member
-
Less
More
- Posts: 13
- Thank you received: 5
07 Feb 2025 01:37 - 07 Feb 2025 01:42 #320870
by Lisov_R
Replied by Lisov_R on topic ColorCNC Colorlight 5A-75E/5A-75B as FPGA controller board
I used FT232RL firmware interface converter
The jumper for selecting the output supply voltage has been removed, they are powered from contact J33,34
The firmware method is taken from here
openFPGALoader [options] -cft23XXX --pins=TDI:TDO:TCK:TMS /path/to/bitstream.ext
value | ID | JTAG
TXD | 0 | J27 TCK
RXD | 1 | J32 TDI
RTS | 2 |
CTS | 3 | J31 TMS
DTR | 4 | J30 TDO
DSR | 5 |
DCD | 6 |
RI | 7 |
Vcc | | J33 (3.3в)
GND | | J34 (GND)
We use the command
To compile the firmware, it is better to use the command with the -a parameter
We will additionally receive the alias.hal file which, when used in LinuxCNC, will give us aliases for the module elements and when changing the firmware, there will be no need to change the hal files.
To use aliases in the ini file, you must first specify the hal file with the litexcnc driver connection, then alias.hal and then the hal file with module processing. Only in this case will everything work!!!
The jumper for selecting the output supply voltage has been removed, they are powered from contact J33,34
The firmware method is taken from here
openFPGALoader [options] -cft23XXX --pins=TDI:TDO:TCK:TMS /path/to/bitstream.ext
value | ID | JTAG
TXD | 0 | J27 TCK
RXD | 1 | J32 TDI
RTS | 2 |
CTS | 3 | J31 TMS
DTR | 4 | J30 TDO
DSR | 5 |
DCD | 6 |
RI | 7 |
Vcc | | J33 (3.3в)
GND | | J34 (GND)
We use the command
openFPGALoader --unprotect-flash --cable ft232RL --pins=RXD:DTR:TXD:CTS -f FoXCNC_5a-75e_v8.2_v1.3/gateware/colorlight_5a_75e.bitTo compile the firmware, it is better to use the command with the -a parameter
litexcnc build_firmware FoXCNC_5a-75e_v8.2_v1.3.json --build -aWe will additionally receive the alias.hal file which, when used in LinuxCNC, will give us aliases for the module elements and when changing the firmware, there will be no need to change the hal files.
To use aliases in the ini file, you must first specify the hal file with the litexcnc driver connection, then alias.hal and then the hal file with module processing. Only in this case will everything work!!!
Attachments:
Last edit: 07 Feb 2025 01:42 by Lisov_R.
The following user(s) said Thank You: nubsaybot
Please Log in or Create an account to join the conversation.
- Lisov_R
- Offline
- New Member
-
Less
More
- Posts: 13
- Thank you received: 5
07 Feb 2025 01:44 #320871
by Lisov_R
Replied by Lisov_R on topic ColorCNC Colorlight 5A-75E/5A-75B as FPGA controller board
I am attaching all the files of my 5-axis machine with the ability to work only with stepper motors, motors and an ecoder and in ClosedLoop mode. Spindle control via RS485 with a frequency converter. Additionally, the xhc-hb04 remote control is connected.
Attachments:
The following user(s) said Thank You: nubsaybot
Please Log in or Create an account to join the conversation.
- Lisov_R
- Offline
- New Member
-
Less
More
- Posts: 13
- Thank you received: 5
07 Feb 2025 01:48 #320872
by Lisov_R
Replied by Lisov_R on topic ColorCNC Colorlight 5A-75E/5A-75B as FPGA controller board
For fun, I did a test, I knew the result in advance.
LinuxCNC 2.9.4
Litex-CNC 1.3.4
The same file was used for the machine operation.
Debian 10 (Buster)
Debian 12 (Bookworm)
In Debian 12, the jitter is several times higher and this is very noticeable in the operation of the engines in ClosedLoop mode
LinuxCNC 2.9.4
Litex-CNC 1.3.4
The same file was used for the machine operation.
Debian 10 (Buster)
Debian 12 (Bookworm)
In Debian 12, the jitter is several times higher and this is very noticeable in the operation of the engines in ClosedLoop mode
Attachments:
The following user(s) said Thank You: tommylight, nubsaybot
Please Log in or Create an account to join the conversation.
- matthias
- Offline
- New Member
-
Less
More
- Posts: 2
- Thank you received: 0
18 Jul 2025 20:58 #332001
by matthias
Replied by matthias on topic ColorCNC Colorlight 5A-75E/5A-75B as FPGA controller board
Hello,
Recently I bought a 5A-75E v8.2 board, but I can't get the JTAG programming to work.
I have used the configuration file for v6.0 to build the firmware.
openFPGALoader detects the FPGA correctly, but when I attempt to flash it, it throws the following error.
I have checked my connections multiple times, they are correct. What is the issue here? Is it maybe because of dirtyJtag?
Recently I bought a 5A-75E v8.2 board, but I can't get the JTAG programming to work.
I have used the configuration file for v6.0 to build the firmware.
openFPGALoader detects the FPGA correctly, but when I attempt to flash it, it throws the following error.
linuxcnc@linuxcnc:~$ sudo /opt/oss-cad-suite/bin/openFPGALoader --cable dirtyJtag --detect
empty
Jtag frequency : requested 6000000Hz -> real 6000000Hz
index 0:
idcode 0x41111043
manufacturer lattice
family ECP5
model LFE5U-25
irlength 8
linuxcnc@linuxcnc:~$ sudo /opt/oss-cad-suite/bin/openFPGALoader --cable dirtyJtag -r -f 5a-75e_v8.2_i48o56/gateware/colorlight_5a_75e.bit --detect
empty
write to flash
Jtag frequency : requested 6000000Hz -> real 6000000Hz
Open file DONE
Parse file b3bdffff
DONE
mismatch between target's idcode and bitstream idcode
bitstream has 0x41111043 hardware requires 0xfffffffe
Error: Failed to program FPGA: std::exceptionI have checked my connections multiple times, they are correct. What is the issue here? Is it maybe because of dirtyJtag?
Please Log in or Create an account to join the conversation.
- matthias
- Offline
- New Member
-
Less
More
- Posts: 2
- Thank you received: 0
31 Jul 2025 10:57 #332590
by matthias
Replied by matthias on topic ColorCNC Colorlight 5A-75E/5A-75B as FPGA controller board
Nevermind, I have changed the JTAG programmer to USB Blaster and everything went fine.
My board responds to pings, but seems to drop 50% of the packets, is this normal?
My board responds to pings, but seems to drop 50% of the packets, is this normal?
Please Log in or Create an account to join the conversation.
- benn686
- Offline
- New Member
-
Less
More
- Posts: 2
- Thank you received: 0
23 Aug 2025 23:24 #333829
by benn686
Replied by benn686 on topic ColorCNC Colorlight 5A-75E/5A-75B as FPGA controller board
Anyone have a Lattice Diamond project for the Colorlight v8 board?
I bought the board and a HW-USBN-2A jtag programmer.. however, the litex .bit file generated doesn't seem to do anything.. no led activity, no button response, no serial output etc.
So just want to take a step back, and see if I a simple blink-led project, synthesized in Diamond works.
I bought the board and a HW-USBN-2A jtag programmer.. however, the litex .bit file generated doesn't seem to do anything.. no led activity, no button response, no serial output etc.
So just want to take a step back, and see if I a simple blink-led project, synthesized in Diamond works.
Please Log in or Create an account to join the conversation.
- meister
- Offline
- Platinum Member
-
Less
More
- Posts: 749
- Thank you received: 474
24 Aug 2025 11:31 #333845
by meister
Replied by meister on topic ColorCNC Colorlight 5A-75E/5A-75B as FPGA controller board
minimal fpga project, just edit the pins file to match your pinout:
github.com/multigcs/FPGA-blinky/tree/main/Colorlight5A-75E
i can't remember but i think it was already for the v8.2 board
if it works, you can take a look here:
github.com/multigcs/riocore/tree/dev/rio...olorlight5A-75B-v8.0
github.com/multigcs/FPGA-blinky/tree/main/Colorlight5A-75E
i can't remember but i think it was already for the v8.2 board
if it works, you can take a look here:
github.com/multigcs/riocore/tree/dev/rio...olorlight5A-75B-v8.0
Please Log in or Create an account to join the conversation.
- benn686
- Offline
- New Member
-
Less
More
- Posts: 2
- Thank you received: 0
30 Aug 2025 15:57 #334148
by benn686
Replied by benn686 on topic ColorCNC Colorlight 5A-75E/5A-75B as FPGA controller board
I found a few lpf files.. like the one litex generates, and the one here:
github.com/ZeroMips/Colorlight-5A-75B-gp.../master/gpiotest.lpf
However, when I program the bitstream, it doesn't seem to be doing anything. Even a simple led blink.
Opening the lpf in Lattice Diamond, I notice that these lpf files show errors in the spreadsheet view.. so I think Lattice is ignoring the pin assignments all together?
github.com/ZeroMips/Colorlight-5A-75B-gp.../master/gpiotest.lpf
However, when I program the bitstream, it doesn't seem to be doing anything. Even a simple led blink.
Opening the lpf in Lattice Diamond, I notice that these lpf files show errors in the spreadsheet view.. so I think Lattice is ignoring the pin assignments all together?
Please Log in or Create an account to join the conversation.
- jaae
- Offline
- New Member
-
Less
More
- Posts: 1
- Thank you received: 0
23 Mar 2026 14:46 #344638
by jaae
Replied by jaae on topic ColorCNC Colorlight 5A-75E/5A-75B as FPGA controller board
A Week of Python Purgatory: My Colorlight 5A-75B Still Thinks It's a Paperweight!
The Config (JSON files): I’ve attached my current JSON setup (j1.jpg and j2.jpg). I’ve spent a week tweaking these pins for my 6-axis setup, but I’m not 100% sure if LiteXCNC likes how I’ve named things or if my GPIO mapping is actually valid for the v8.2 board.
The Environment: My pip list shows I’m in a clean venv with LiteX-2025.12.
Questions for the Pros:
JSON Review: Can someone look at my modules and instances in the attached JSON? Does the way I defined axis_x through axis_c look correct for a 6-axis machine?
Watchdog: Is my timeout: 10000000 in the JSON too high, or is it okay for a standard setup?
Buffer Chips (v8.2): Based on my GPIO pin choices in the JSON, will I run into trouble with the buffer chips on this v8.2 board when connecting to 5V drivers?
The Current Setup:
OS: Debian 12 (Bookworm) with a Python Virtual Environment. (Debian is no longer silently judging me, but my Mini PC is).
Board: Colorlight 5A-75B v8.2.
Toolchain: Yosys and Nextpnr-ecp5 are installed.
Goal: A 6-axis CNC beast, controlled by Ethernet.
I have my pip list showing the full LiteX-2025.12 venv. Can someone please review my synthesis log to see why I am not generating a bitstream, even with yosys and nextpnr installed?
I’ve attached the evidence: my pip list, terminal outputs (json_1.png and json_2.png for the JSON files), and my which python3 output (proving I’m not crazy). Any advice from someone who’s survived a week in "Python Purgatory" would be amazing!
Thanks,
Jaae
The Config (JSON files): I’ve attached my current JSON setup (j1.jpg and j2.jpg). I’ve spent a week tweaking these pins for my 6-axis setup, but I’m not 100% sure if LiteXCNC likes how I’ve named things or if my GPIO mapping is actually valid for the v8.2 board.
The Environment: My pip list shows I’m in a clean venv with LiteX-2025.12.
Questions for the Pros:
JSON Review: Can someone look at my modules and instances in the attached JSON? Does the way I defined axis_x through axis_c look correct for a 6-axis machine?
Watchdog: Is my timeout: 10000000 in the JSON too high, or is it okay for a standard setup?
Buffer Chips (v8.2): Based on my GPIO pin choices in the JSON, will I run into trouble with the buffer chips on this v8.2 board when connecting to 5V drivers?
The Current Setup:
OS: Debian 12 (Bookworm) with a Python Virtual Environment. (Debian is no longer silently judging me, but my Mini PC is).
Board: Colorlight 5A-75B v8.2.
Toolchain: Yosys and Nextpnr-ecp5 are installed.
Goal: A 6-axis CNC beast, controlled by Ethernet.
I have my pip list showing the full LiteX-2025.12 venv. Can someone please review my synthesis log to see why I am not generating a bitstream, even with yosys and nextpnr installed?
I’ve attached the evidence: my pip list, terminal outputs (json_1.png and json_2.png for the JSON files), and my which python3 output (proving I’m not crazy). Any advice from someone who’s survived a week in "Python Purgatory" would be amazing!
Thanks,
Jaae
Please Log in or Create an account to join the conversation.
- d12k6
- Offline
- New Member
-
Less
More
- Posts: 6
- Thank you received: 1
20 Jul 2026 21:35 - 20 Jul 2026 21:45 #347892
by d12k6
Replied by d12k6 on topic ColorCNC Colorlight 5A-75E/5A-75B as FPGA controller board
Hello all,
I’ve been struggling for about two weeks to flash a bitstream onto my Colorlight board (V8.2) using an external Adafruit FT232H USB-to-GPIO/SPI/I2C board, but I keep running into JTAG initialization and IDCODE errors.
I'm hoping someone here might spot what I am missing in my setup. Here are the details of my configuration and what I've observed so far:
Commands:
Questions:
Has anyone successfully used an Adafruit FT232H to flash a Colorlight V8.2 board via JTAG?
To completely rule out any issues with my current .bit file (or potential synthesis/mapping mismatches), does anyone happen to have a known-working, minimal test bitstream (e.g., a simple blinky for the ECP5 LFE5U-25F / Colorlight 5A-75B) that I could use just to verify that the flash programming and execution works?Any advice or working command configurations would be greatly appreciated!
Thanks
I'm hoping someone here might spot what I am missing in my setup. Here are the details of my configuration and what I've observed so far:
- FT232H D0(TCK) - Colorlight TCK J27
- FT232H D1(TDI) - Colorlight TDI J32
- FT232H D2(TDO) - Colorlight TDO J30
- FT232H D3(TMS) - Colorlight TMS J31
- GND - Colorlight J34 (3V3 is not connected)
Commands:
sudo /opt/oss-cad-suite/bin/openFPGALoader -c ft232 --fpga-part LFE5U-25F --freq 100000 --write-flash /home/cnc/Desktop/LiteCNC/colorlight_pins/gateware/colorlight_5a_75b.bit
write to flash
Can't read iSerialNumber field from FTDI: considered as empty string
Jtag frequency : requested 100.00KHz -> real 100.00KHz
Open file DONE
Parse file b3bdffff DONE
mismatch between target's idcode and bitstream idcode bitstream has 0x41111043 hardware requires 0xf819bfff
Error: Failed to program FPGA: std::exceptionQuestions:
Has anyone successfully used an Adafruit FT232H to flash a Colorlight V8.2 board via JTAG?
To completely rule out any issues with my current .bit file (or potential synthesis/mapping mismatches), does anyone happen to have a known-working, minimal test bitstream (e.g., a simple blinky for the ECP5 LFE5U-25F / Colorlight 5A-75B) that I could use just to verify that the flash programming and execution works?Any advice or working command configurations would be greatly appreciated!
Thanks
Last edit: 20 Jul 2026 21:45 by d12k6.
Please Log in or Create an account to join the conversation.
Moderators: PCW, jmelson
Time to create page: 0.254 seconds