Mesa 7C81 Questions
- gene_weber
- Topic Author
- Offline
- Junior Member
Less
More
- Posts: 25
- Thank you received: 6
11 Feb 2023 20:06 - 12 Feb 2023 21:48 #264314
by gene_weber
Mesa 7C81 Questions was created by gene_weber
Hi,
I'm converting my new PM-728VT mill to CNC. I have a background in Integrated Circuits and software, but zero machining knowledge. So Linux and FPGA's make more sense to me than all the machining acronyms. I opted to go with a Raspberry Pi 4B / Mesa 7C81 setup because I've messed with Raspberry Pi's a bit, figured it would let me get away with running the UI on an older laptop, and the 7C81 was one of the few Mesa cards in stock these days (LOL).
The OS has not yet been installed on the Rpi, nor has any bit file been installed on the 7C81. I would like to have all of the electronics figured out, and a complete plan for the software installation before I do anything. I did physically connect the 7C81 and Rpi as shown in this photo.
Kudos to the people who wrote the LinuxCNC 2.8 documentation. It's very good, and if I knew anything about machining I'd probably be off and running. I'd like the LinuxCNC software/hardware setup to support:
- Limit and home switches on all 3 axes.
- CNC spindle speed and direction control to coordinate feed and speed during milling.
- A spindle speed encoder to coordinate low speed spindle operation and Z axis feed for threading operations.
- A fourth axis for "A" rotation (Future addition).
- Automatic flood or mist coolant control (Future addition).
I'm looking at all the pin files for the 7C81 and I have some question regarding the modules:
PLL - I assume a digital phase locked loop. I assume this is used internally in the FPGA for circuit timing and I don't need to concern myself with it.
WatchDog - Timeout circuit. Sounds like this is used to ensure LinuxCNC and the FPGA card haven't lost contact.
IOPort - Is my understanding correct that any pin not defined can be programmed as a general purpose I/O? Are these what I connect the limit and home switches to?
QCount - I looked at the VHDL code an it looks like this is a timer for something.
SSerial - The LinuxCNC documentation says this is for connecting to a MESA smart serial daughter card. So I assume I won't use it.
StepGen - Step and direction generation for the various axes. All of the pin files are showing only step and direction pins. The Mesa HostMot2 Driver Section in LinuxCNC documentation under 13.1 actually lists seven possible pins. I'm using ClearPath-SD servos which have Step, Direction, Enable, and HLFB (High-Level Feedback). Attached is a screenshot of what HLFB can be used for. So I'm going to need to figure out how to access more than just step and direction.
PWM - Pulse Width Modulation. I have a KBSI-240D signal isolation board and understand how to connect that into my spindle control. But I guess I need two additional boards. A PWM DAC that outputs 0-10v. (There seem to be two basic cards from China under many names available in several places.) Also need a relay board. I was thinking about this one .
LED - I guess for LED's but not sure of the specifics. I don't think I need to care.
ENCODER - This is listed in the Mesa HostMot2 Driver Section in LinuxCNC documentation under 15, but is not listed as available in any of the 7C81 pin files. That seems like a problem for me since I would like to connect an encoder to the spindle. I know this is a lot of direct and implied questions, and I really do appreciate any help. I'm trying to understand this in depth so I can proceed logically.
Thanks & Best
Gene
I'm converting my new PM-728VT mill to CNC. I have a background in Integrated Circuits and software, but zero machining knowledge. So Linux and FPGA's make more sense to me than all the machining acronyms. I opted to go with a Raspberry Pi 4B / Mesa 7C81 setup because I've messed with Raspberry Pi's a bit, figured it would let me get away with running the UI on an older laptop, and the 7C81 was one of the few Mesa cards in stock these days (LOL).
The OS has not yet been installed on the Rpi, nor has any bit file been installed on the 7C81. I would like to have all of the electronics figured out, and a complete plan for the software installation before I do anything. I did physically connect the 7C81 and Rpi as shown in this photo.
Kudos to the people who wrote the LinuxCNC 2.8 documentation. It's very good, and if I knew anything about machining I'd probably be off and running. I'd like the LinuxCNC software/hardware setup to support:
- Limit and home switches on all 3 axes.
- CNC spindle speed and direction control to coordinate feed and speed during milling.
- A spindle speed encoder to coordinate low speed spindle operation and Z axis feed for threading operations.
- A fourth axis for "A" rotation (Future addition).
- Automatic flood or mist coolant control (Future addition).
I'm looking at all the pin files for the 7C81 and I have some question regarding the modules:
PLL - I assume a digital phase locked loop. I assume this is used internally in the FPGA for circuit timing and I don't need to concern myself with it.
WatchDog - Timeout circuit. Sounds like this is used to ensure LinuxCNC and the FPGA card haven't lost contact.
IOPort - Is my understanding correct that any pin not defined can be programmed as a general purpose I/O? Are these what I connect the limit and home switches to?
QCount - I looked at the VHDL code an it looks like this is a timer for something.
SSerial - The LinuxCNC documentation says this is for connecting to a MESA smart serial daughter card. So I assume I won't use it.
StepGen - Step and direction generation for the various axes. All of the pin files are showing only step and direction pins. The Mesa HostMot2 Driver Section in LinuxCNC documentation under 13.1 actually lists seven possible pins. I'm using ClearPath-SD servos which have Step, Direction, Enable, and HLFB (High-Level Feedback). Attached is a screenshot of what HLFB can be used for. So I'm going to need to figure out how to access more than just step and direction.
PWM - Pulse Width Modulation. I have a KBSI-240D signal isolation board and understand how to connect that into my spindle control. But I guess I need two additional boards. A PWM DAC that outputs 0-10v. (There seem to be two basic cards from China under many names available in several places.) Also need a relay board. I was thinking about this one .
LED - I guess for LED's but not sure of the specifics. I don't think I need to care.
ENCODER - This is listed in the Mesa HostMot2 Driver Section in LinuxCNC documentation under 15, but is not listed as available in any of the 7C81 pin files. That seems like a problem for me since I would like to connect an encoder to the spindle. I know this is a lot of direct and implied questions, and I really do appreciate any help. I'm trying to understand this in depth so I can proceed logically.
Thanks & Best
Gene
Attachments:
Last edit: 12 Feb 2023 21:48 by gene_weber. Reason: Format, content update
Please Log in or Create an account to join the conversation.
12 Feb 2023 23:18 - 12 Feb 2023 23:22 #264394
by PCW
Replied by PCW on topic Mesa 7C81 Questions
PLL --> This is for retiming of critical sampled values
WatchDog --> yes, for safety all I/O is forced open circuit = high on a watchdog timeout
(normally set for about 5 ms)
IOPort --> Yes, unused special function pins revert to GPIO
QCount --> Quadrature encoder counter (timer is for timestamping edges for velocity estimation)
SSerial --> SmartSerial I/O expansion
StepGen --> The additional pins are outputs for table modes
PWM --> General purpose PWM for D-A use etc
LED --> On card LED access
ENCODER --> See QCount
Note that firmware is always installed in the 7C81 I believe the default is 5abobx2 or 5abobx3
Also the hostmot2 manual page lists all the supported modules
WatchDog --> yes, for safety all I/O is forced open circuit = high on a watchdog timeout
(normally set for about 5 ms)
IOPort --> Yes, unused special function pins revert to GPIO
QCount --> Quadrature encoder counter (timer is for timestamping edges for velocity estimation)
SSerial --> SmartSerial I/O expansion
StepGen --> The additional pins are outputs for table modes
PWM --> General purpose PWM for D-A use etc
LED --> On card LED access
ENCODER --> See QCount
Note that firmware is always installed in the 7C81 I believe the default is 5abobx2 or 5abobx3
Also the hostmot2 manual page lists all the supported modules
Last edit: 12 Feb 2023 23:22 by PCW.
Please Log in or Create an account to join the conversation.
- gene_weber
- Topic Author
- Offline
- Junior Member
Less
More
- Posts: 25
- Thank you received: 6
13 Feb 2023 19:45 - 13 Feb 2023 19:46 #264454
by gene_weber
Replied by gene_weber on topic Mesa 7C81 Questions
Peter, Thanks for the clarifications. I see in the vhdl files that you are the author of all that code. Nice.
What are table modes? (Or please point me to where I can read about what they are)
Do people use any of the items from the High Level Feedback in LinuxCNC for "close looping" the system? Are there any advantages?
Thanks again,
Gene
What are table modes? (Or please point me to where I can read about what they are)
Do people use any of the items from the High Level Feedback in LinuxCNC for "close looping" the system? Are there any advantages?
Thanks again,
Gene
Last edit: 13 Feb 2023 19:46 by gene_weber. Reason: typo
Please Log in or Create an account to join the conversation.
13 Feb 2023 20:46 - 13 Feb 2023 20:56 #264460
by PCW
Replied by PCW on topic Mesa 7C81 Questions
Table modes are used for generating low level step patterns.
Basically you load a user defined table into the step generator
and define the sequence length. Each "step" now either increment
or decrements the table pointer so a new pattern is presented to the outputs.
This is described (as are all supported firmware modules) in the hostmot2 manual page
On step/dir systems it can be of advantage to feedback position from
linear encoders to LinuxCNC if those are present, to increase accuracy.
Basically you load a user defined table into the step generator
and define the sequence length. Each "step" now either increment
or decrements the table pointer so a new pattern is presented to the outputs.
This is described (as are all supported firmware modules) in the hostmot2 manual page
On step/dir systems it can be of advantage to feedback position from
linear encoders to LinuxCNC if those are present, to increase accuracy.
Last edit: 13 Feb 2023 20:56 by PCW.
Please Log in or Create an account to join the conversation.
18 Feb 2023 00:44 #264734
by cakeslob
Replied by cakeslob on topic Mesa 7C81 Questions
common gene, show us the money shot
can you post a pic of the other side? i am curious to see how other people are doing the board to board connection
can you post a pic of the other side? i am curious to see how other people are doing the board to board connection
Please Log in or Create an account to join the conversation.
- gene_weber
- Topic Author
- Offline
- Junior Member
Less
More
- Posts: 25
- Thank you received: 6
22 May 2023 22:56 #271978
by gene_weber
Replied by gene_weber on topic Mesa 7C81 Questions
Attachments:
Please Log in or Create an account to join the conversation.
27 May 2023 17:41 #272274
by cakeslob
Replied by cakeslob on topic Mesa 7C81 Questions
I see, so mesa has a secret cable that fits in between the standoffs
Please Log in or Create an account to join the conversation.
- gene_weber
- Topic Author
- Offline
- Junior Member
Less
More
- Posts: 25
- Thank you received: 6
28 May 2023 22:43 #272371
by gene_weber
Replied by gene_weber on topic Mesa 7C81 Questions
Oh, it's top top secret. You have to be an inner circle member to buy it.
I didn't realize what you were specifically interested in. Yeah, the spacing of the holes in relationship to the header on the Raspberry Pi boards does seem like a design oversight. I mounted the stand-offs on the board and tried to plug the cable in and said "what the $@%!#^?". The Stand-offs I bought are plastic, so i put them in a vice and filed them as close to the center hole as possible. If you look closely at the attached photos you'll see that the sides facing the connector are flat. It just fits. I created the "top hat" that the fans are mounted on in SOLIDWORKS, and 3D printed it. So I needed to flat file four stand-offs. Here are the stand-offs and screws I used.
www.digikey.com/en/products/detail/essen...M025045G008/11637936
www.digikey.com/en/products/detail/w%C3%...ik/971180155/9488784
www.digikey.com/en/products/detail/w%C3%...ik/970170155/9488718
Best,
Gene
I didn't realize what you were specifically interested in. Yeah, the spacing of the holes in relationship to the header on the Raspberry Pi boards does seem like a design oversight. I mounted the stand-offs on the board and tried to plug the cable in and said "what the $@%!#^?". The Stand-offs I bought are plastic, so i put them in a vice and filed them as close to the center hole as possible. If you look closely at the attached photos you'll see that the sides facing the connector are flat. It just fits. I created the "top hat" that the fans are mounted on in SOLIDWORKS, and 3D printed it. So I needed to flat file four stand-offs. Here are the stand-offs and screws I used.
www.digikey.com/en/products/detail/essen...M025045G008/11637936
www.digikey.com/en/products/detail/w%C3%...ik/971180155/9488784
www.digikey.com/en/products/detail/w%C3%...ik/970170155/9488718
Best,
Gene
Attachments:
Please Log in or Create an account to join the conversation.
30 May 2023 16:48 #272506
by Stef
Replied by Stef on topic Mesa 7C81 Questions
Hi Gene,
The 3D printed part looks nice!
I am wondering if you already succeeded in establashing a connection between the RPi and the Mesa 7C81.
As I am having huge difficulties with that for over a month already, I would be very interested to hear how others did this.
Although there are some explanations available on the internet, those all use the "LinuxCNC 2.8.1 Raspberry Pi OS based on Debian 10 Buster" from the LinuxCNC frontpage, but this file is not working for recently manufactured RPi's.
Did you perhaps find installation instructions that are usable for new RPi's?
The 3D printed part looks nice!
I am wondering if you already succeeded in establashing a connection between the RPi and the Mesa 7C81.
As I am having huge difficulties with that for over a month already, I would be very interested to hear how others did this.
Although there are some explanations available on the internet, those all use the "LinuxCNC 2.8.1 Raspberry Pi OS based on Debian 10 Buster" from the LinuxCNC frontpage, but this file is not working for recently manufactured RPi's.
Did you perhaps find installation instructions that are usable for new RPi's?
Please Log in or Create an account to join the conversation.
- gene_weber
- Topic Author
- Offline
- Junior Member
Less
More
- Posts: 25
- Thank you received: 6
31 May 2023 00:31 #272532
by gene_weber
Replied by gene_weber on topic Mesa 7C81 Questions
Hi Stef,
Thanks you.
Powering up the Mesa 7C81 is next. I'm moving at a glacial pace, but life has just been beyond busy lately. My 18 month old grandson gets priority over all. Spent the past weekend working on my car, and it's still not right, but that's another story.
I pretty much followed this thread for the Preempt-RT kernel installation . My setup is only slightly different in that I'm ssh -X ing into the R-Pi from a Linux laptop, so I'm using the laptop for keyboard and display. The Pi's desktop environment is never started. Perhaps if I have some luck I'll get some time to try it this weekend. When I make some progress I'll post it.
Best,
Gene
Thanks you.
Powering up the Mesa 7C81 is next. I'm moving at a glacial pace, but life has just been beyond busy lately. My 18 month old grandson gets priority over all. Spent the past weekend working on my car, and it's still not right, but that's another story.
I pretty much followed this thread for the Preempt-RT kernel installation . My setup is only slightly different in that I'm ssh -X ing into the R-Pi from a Linux laptop, so I'm using the laptop for keyboard and display. The Pi's desktop environment is never started. Perhaps if I have some luck I'll get some time to try it this weekend. When I make some progress I'll post it.
Best,
Gene
Please Log in or Create an account to join the conversation.
Time to create page: 0.206 seconds