LinuxCNC-RIO - RealtimeIO for LinuxCNC based on FPGA (ICE40 / ECP5)

More
2 years 2 months ago #307061 by meister
unfortunately i don't know much about litex and i don't know if it is supported.

but for the tangprimer20k on the dock ext-board there is already a plugin in RIO:

github.com/multigcs/riocore/tree/dev/riocore/plugins/rmii

but not much tested

Please Log in or Create an account to join the conversation.

More
2 years 2 months ago #307062 by meister
i tried to generate a simple udp core and the interface looks very simple:
Code:
module liteeth_core (     input  wire          rgmii_clocks_rx,     output wire          rgmii_clocks_tx,     input  wire          rgmii_int_n,     output wire          rgmii_mdc,     input  wire          rgmii_mdio,     output wire          rgmii_rst_n,     input  wire          rgmii_rx_ctl,     input  wire    [3:0] rgmii_rx_data,     output wire          rgmii_tx_ctl,     output wire    [3:0] rgmii_tx_data,     input  wire          sys_clock,     input  wire          sys_reset,     input  wire   [31:0] udp0_sink_data,     input  wire          udp0_sink_last,     output wire          udp0_sink_ready,     input  wire          udp0_sink_valid,     output wire   [31:0] udp0_source_data,     output wire          udp0_source_error,     output wire          udp0_source_last,     input  wire          udp0_source_ready,     output wire          udp0_source_valid );
rgmi_* and sys_* are the FPGA-Pins
udp0_sink and udp0_source the data interface for RX and TX

it looks feasible to connect the whole thing to rio :)
 

Please Log in or Create an account to join the conversation.

More
2 years 2 months ago #307111 by Mecanix

it always depends on the application,
 
True. Let's hope that badboy will be fit for a 4ax mill, 2ax lathe and ofc a 3ax co2 retrofit (<- my first project). Nice connector link up btw, I use the same although in a 2.54mm pitch. 

Too kind, as always. Thanks for sharing your expertise. I've removed the uart interface, will add a ws2812b status led, and added an automotive 2A input supply from MPS (supporting 9~60vdc). That should work with my 24v and 48v PSUs. For the remaining bits you've advised, I'm eager to simply add bidirection translation for the 50 gpios and send that out "as-is" rather. Reason for this is; I want to test ALL gpios on that unknown-to-me fpga before sending out a final board version. Would that be a fair approach? 

Tiny motion control board, although likely to pack an incredible power (thanks to the Rio Cult!!). Still plenty real-estate for the translation and other upcoming gizmos. 

The following user(s) said Thank You: meister

Please Log in or Create an account to join the conversation.

More
2 years 2 months ago #307112 by Mecanix
Schematic for the wizzy part. In case someone needs that. Never know...

The following user(s) said Thank You: meister

Please Log in or Create an account to join the conversation.

More
2 years 2 months ago - 2 years 2 months ago #307135 by Mecanix
Reference routing (inspiration) for the above wiz part schematic. I doubt all that analog/digital isolation insanity is mandatory, but some does claim those motion control being noisy [rolleyes], and so best practice always just add them in if you are routing this. All what's left to do is the 3V3~5V translation and hooking up 50 gpios. Tomorrow. Maybe. 

My Riocore Kit looks forward its own faraday cage (EMP warfare protection [rolleyes x2[). Let's get in touch, Olivier - I'll send you one (or two!). 




Last edit: 2 years 2 months ago by Mecanix.
The following user(s) said Thank You: meister, samueldutradasilva

Please Log in or Create an account to join the conversation.

More
2 years 2 months ago #307143 by meister
wow, that looks really professional, you can tell it's not the first time you've done it.

I wouldn't know what to say about it either, you're doing really well!

Please Log in or Create an account to join the conversation.

Time to create page: 4.740 seconds
Powered by Kunena Forum