ColorCNC Colorlight 5A-75E/5A-75B as FPGA controller board

More
28 Feb 2022 23:20 - 01 Mar 2022 01:17 #236072 by ALittleOffTheRails
Are you going to document the changes required to get any form of input ? I can document the way I'm going to implement my procedure if you like.

I have a 5A-75E so I will be willing to help in testing, if you have any a build environment ready, eg any make files, are you going to be using the pluto based stepgen source as per Romanetz ?
ATM I'm waiting for some 74LVC245 buffers to arrive.
Last edit: 01 Mar 2022 01:17 by ALittleOffTheRails.

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

More
01 Mar 2022 10:34 #236086 by TOLP2
If you could document your approach on enabling the inputs on a 5A-75E or 5A-75A, you're more then welcome. For the i5 and the i9 there are no changes required as far as I know.

The build files for the driver are available in the ./driver/build directory of the repo. However, the driver is in debug mode and will not transmit anything yet. I will create a separate debug driver (dumps everything to command line) and tidy up the ethernet driver so you should be able to test.

For building an image for the card, one could use the code below as an guideline (assuming you've installed the LiteX toolchain as described here ):
pip install -r requirements.txt
python -m firmware <path-to-config-file>

This will generate the files which can subsequently be uploaded to the board.
 

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

More
01 Mar 2022 11:47 #236094 by ALittleOffTheRails
The i5 & i9 look good, but by the time you've got hold of the ethernet module & daughter board it's getting close to 7i92 money.

Anyways the gateware built ok, once you have a driver sorted I can start testing.

I did a write up of installing Litex and oss-cad-suite here forum.linuxcnc.org/27-driver-boards/4442...rcnc?start=60#235932

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

More
01 Mar 2022 16:35 #236117 by cncwhacko
I'd be happy to help test things as well. I have a 5a-75E V8 (which has same mapping as V6).

It seems your current version of the driver has nothing to do with step generation, is that correct?

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

More
01 Mar 2022 22:27 #236137 by TOLP2
I created a dedicated debug driver and removed the debug code from the etherbone driver. This means that the driver should work for a 5a-75a or 5a-75e.

It seems your current version of the driver has nothing to do with step generation, is that correct?


At this moment only GPIO out is supported by the firmware. The next step is to add more functions to the board, which include PWM (coming tomorrow) and stepgen. My goal is to mimic the existing functions of LinuxCNC as close as possible (thus exporting the same input pins and parameters), so:
  • PWM will be based on  pwmgen  and will export the same pins and parameters for a single output PWM. At start only type 0 will be supported, with dithering;
  • stepgen will be based on  stepgen . At start I would like to support type 0 (step/dir) as well as type 1 (up/down).
  • encoder will be based on  encoder .
There is a learning curve for me in producing this code. Every few days I try to add a new feature. The components above are listed in increasing demand of insight on programming.
The following user(s) said Thank You: besriworld

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

More
02 Mar 2022 14:16 - 02 Mar 2022 14:17 #236176 by TOLP2
PWM is done (without dithering though), using the same interface af the pwmgen component from LinuxCNC, see repository for the changes:
github.com/Peter-van-Tol/LiteX-CNC

Did not have the time to add the PWM the documenation / README yet, but I think the pins are self-explanatory at this moment.
Last edit: 02 Mar 2022 14:17 by TOLP2.
The following user(s) said Thank You: besriworld

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

More
02 Mar 2022 23:39 #236227 by andypugh
Late to the party :-)

PDM is probably worth considering. I think that suits digital systems with a fixed clock rate rather better than PWM. It's a little easier to implement, and has a (I think) a lower phase lag with changing command inputs.

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

More
03 Mar 2022 01:28 #236237 by ALittleOffTheRails

Late to the party :-)

PDM is probably worth considering. I think that suits digital systems with a fixed clock rate rather better than PWM. It's a little easier to implement, and has a (I think) a lower phase lag with changing command inputs.



A wizard is never late, nor is he early. He arrives precisely when he means to.
The following user(s) said Thank You: tommylight, Pro_El

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

More
03 Mar 2022 11:30 #236254 by tommylight


A wizard is never late, nor is he early. He arrives precisely when he means to.

Gandalf from Lord of the rings ?

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

More
03 Mar 2022 23:22 #236291 by ALittleOffTheRails
Yeah had a foreman say that to me when I was just on time for a job, thought it was kinda funny.
The following user(s) said Thank You: tommylight

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

Moderators: PCWjmelson
Time to create page: 0.136 seconds
Powered by Kunena Forum