- Posts: 447
- Thank you received: 0
LinuxCNC-RIO - RealtimeIO for LinuxCNC based on FPGA (ICE40 / ECP5)
2 years 3 months ago #306493
by Mecanix
Replied by Mecanix on topic LinuxCNC-RIO - RealtimeIO for LinuxCNC based on FPGA (ICE40 / ECP5)
I don't know what to say, that was too kind Meister. Thank you so much for taking the time.
I'm working off a GW1N-LV9QN88 part (custom dev board). Schematic and pcb mostly inspired from the infamous TangNano9K and so I have a good feeling this won't be too difficult to port hardware-wise.
Let me set-up, clone, learn your work during the coming days. As soon as I have a successful IDE compile/project I'll share it with you to upload on your repo.
So excited about this already. Thank you again. I'll update progress!
I'm working off a GW1N-LV9QN88 part (custom dev board). Schematic and pcb mostly inspired from the infamous TangNano9K and so I have a good feeling this won't be too difficult to port hardware-wise.
Let me set-up, clone, learn your work during the coming days. As soon as I have a successful IDE compile/project I'll share it with you to upload on your repo.
So excited about this already. Thank you again. I'll update progress!
Please Log in to join the conversation.
2 years 3 months ago #306495
by Mecanix
Replied by Mecanix on topic LinuxCNC-RIO - RealtimeIO for LinuxCNC based on FPGA (ICE40 / ECP5)
Please Log in to join the conversation.
2 years 3 months ago #306497
by meister
Replied by meister on topic LinuxCNC-RIO - RealtimeIO for LinuxCNC based on FPGA (ICE40 / ECP5)
WOW
very nice !!!
I recently tried to build a board with an ICE40UP5K, but I'm somehow too stupid to get it to work
The FPGA chips are just too small for me to solder them by hand.
It would be cool to have a complete rio board without having to use a plug-on devboard .
I just saw that you use Windows, rio unfortunately only runs under linux, vm is also ok, if it works in WSL I can't say unfortunately
I recently tried to build a board with an ICE40UP5K, but I'm somehow too stupid to get it to work
It would be cool to have a complete rio board without having to use a plug-on devboard .
I just saw that you use Windows, rio unfortunately only runs under linux, vm is also ok, if it works in WSL I can't say unfortunately
Please Log in to join the conversation.
2 years 3 months ago #306500
by Mecanix
Replied by Mecanix on topic LinuxCNC-RIO - RealtimeIO for LinuxCNC based on FPGA (ICE40 / ECP5)
The EDA I'm forced to use at work is win11 based. I know I know...
However my entire dev environment aka compilers, IDEs, ect, are all Debian/linux based. No substitute
If you aren't friend with fine pitch then avoid the LV9QN88 part. Not much better than the ICE40UP5K to say the least. I'm with you though, prefer their LQFP pinouts...
However my entire dev environment aka compilers, IDEs, ect, are all Debian/linux based. No substitute
If you aren't friend with fine pitch then avoid the LV9QN88 part. Not much better than the ICE40UP5K to say the least. I'm with you though, prefer their LQFP pinouts...
Please Log in to join the conversation.
2 years 3 months ago #306506
by meister
Replied by meister on topic LinuxCNC-RIO - RealtimeIO for LinuxCNC based on FPGA (ICE40 / ECP5)
I built you a minimal config, could work like this, maybe I mixed up RX/TX, but it's a good start 
Code:
odippel@odippel:/usr/src/riocore$ PYTHONPATH=. bin/rio-generator riocore/configs/TangNano9K/config-mecanix.json
loading: riocore/configs/TangNano9K/config-mecanix.json
loading board setup: TangNano9K
writing gateware to: Output/Mecanix/Gateware
!!! gateware changed: needs to be build and flash |||
loading toolchain gowin
writing linuxcnc files to: Output/Mecanix/LinuxCNC
odippel@odippel:/usr/src/riocore$ ls Output/Mecanix/Gateware/
blink.v hash_new.txt Makefile pwmmod.v rio.sdc stepdir.v uart_baud.v uart_tx.v
debouncer.v impl pins.cst rio.gprj rio.v toggle.v uart_rx.v uart.v
....
PYTHONPATH=. bin/rio-test riocore/configs/TangNano9K/config-mecanix.json /dev/ttyUSB0
Attachment not found
Please Log in to join the conversation.
2 years 2 months ago #306521
by meister
Replied by meister on topic LinuxCNC-RIO - RealtimeIO for LinuxCNC based on FPGA (ICE40 / ECP5)
I'm sorry, I was a bit bored 
riocore/configs/MecanixDev/config-test.json
riocore/boards/MecanixDev/board.json
Attachment not found
riocore/configs/MecanixDev/config-test.json
riocore/boards/MecanixDev/board.json
Please Log in to join the conversation.
2 years 2 months ago #306531
by Mecanix
Replied by Mecanix on topic LinuxCNC-RIO - RealtimeIO for LinuxCNC based on FPGA (ICE40 / ECP5)
O M G. Wait, are you showing us that all what's missing to RIO to be fully functional is a fpga dev board and the toolchain installed? As in "screw Gowin IDE'??? If that's the case then that's a pretty serious game changer.
I have so much to learn about your solution, obviously. Excitement is getting outta control!!
I have so much to learn about your solution, obviously. Excitement is getting outta control!!
Please Log in to join the conversation.
2 years 2 months ago #306545
by meister
Replied by meister on topic LinuxCNC-RIO - RealtimeIO for LinuxCNC based on FPGA (ICE40 / ECP5)
I just wanted to show that it is not that difficult to support new boards.
It is a bit more complicated to create the board with a picture and the correct pin positions for the setup tool, but this is only optional.
If the toolchain is already supported, it is quite easy,
copy a similar one and adjust the values (type/clock-speed and pin).
It is a bit more complicated to create the board with a picture and the correct pin positions for the setup tool, but this is only optional.
If the toolchain is already supported, it is quite easy,
copy a similar one and adjust the values (type/clock-speed and pin).
Please Log in to join the conversation.
2 years 2 months ago #306548
by Mecanix
Let me learn what you've done for yourself and all of us first. This will require time on my side, but will be worth it I have a feeling - "it works" (see visual)!! I'll update on progress and hopefully can contribute what was done at my end. Interim, let me know if you need the sources/gerber/bom/anything for the dev board in use. Better yet, let me know what else could potentially go on it to make it a "RIO-BOARD" (RTL8111H?!) and I'll see what I can do.
Replied by Mecanix on topic LinuxCNC-RIO - RealtimeIO for LinuxCNC based on FPGA (ICE40 / ECP5)
One word, Oliver; EPIC.copy a similar one and adjust the values (type/clock-speed and pin).
Let me learn what you've done for yourself and all of us first. This will require time on my side, but will be worth it I have a feeling - "it works" (see visual)!! I'll update on progress and hopefully can contribute what was done at my end. Interim, let me know if you need the sources/gerber/bom/anything for the dev board in use. Better yet, let me know what else could potentially go on it to make it a "RIO-BOARD" (RTL8111H?!) and I'll see what I can do.
Please Log in to join the conversation.
2 years 2 months ago #306549
by Mecanix
Explains why I couldn't find it locally lol. Let's try that again.
Replied by Mecanix on topic LinuxCNC-RIO - RealtimeIO for LinuxCNC based on FPGA (ICE40 / ECP5)
Stupid me... I could have cloned/checkout the 'dev' branch rather than main and use what you've done already.I'm sorry, I was a bit bored
riocore/configs/MecanixDev/config-test.json
riocore/boards/MecanixDev/board.json
Explains why I couldn't find it locally lol. Let's try that again.
Please Log in to join the conversation.
Time to create page: 0.611 seconds
