Converting T41 Breakout Board to support spindle sync #289
Replies: 11 comments 14 replies
-
I'll create and upload a new map file for T41U5XBB with spindle sync definitions tomorrow. There is no plug-in to add, the spindle sync code is part of driver.c and is enabled via #define symbols. |
Beta Was this translation helpful? Give feedback.
-
This is perfect timing... I've just got my T41U5XBB running my Emco Compact 5 PC nicely and was about to ask how to activate spindle sync :-) Neil |
Beta Was this translation helpful? Give feedback.
-
That’s fine, as expected.
Thanks for the prompt response guys - I’ll get the soldering iron out (was already deployed as I was boxing-up the controller 😊
I’m only driving 2 axes up to 24mm/s at the moment so nothing is being stressed….
It might be worth considering that many of the target audience are focussing on 2-3 axes mechanical lathe/mills and not using 5 axis flood-cooled behemoths?
Neil
From: Terje Io ***@***.***>
Sent: 15 April 2021 20:43
To: terjeio/grblHAL ***@***.***>
Cc: NeilMarley ***@***.***>; Comment ***@***.***>
Subject: Re: [terjeio/grblHAL] Converting T41 Breakout Board to support spindle sync (#289)
is it not possible just to remap e.g. some of the unused limit-switch inputs and use those or do we need specific pins to feed the interrupt timers for spindle-sync?
It might be possible but will require a deep dive into the datasheet and possibly swapping timers around. I am not too keen to do that now as it is likely to complicate the driver code now that the Pro board is completed.
—
You are receiving this because you commented.
Reply to this email directly, <#289 (reply in thread)> view it on GitHub, or <https://github.com/notifications/unsubscribe-auth/ATKWZADYGIQ7J6A56EZ5GPLTI46VHANCNFSM42366H5Q> unsubscribe. <https://github.com/notifications/beacon/ATKWZABXKVAORXOCHBTNFFTTI46VHA5CNFSM42366H52YY3PNVWWK3TUL52HS4DFWFCGS43DOVZXG2LPNZBW63LNMVXHJKTDN5WW2ZLOORPWSZGOAAEWXRQ.gif>
|
Beta Was this translation helpful? Give feedback.
-
I made the modification as described, I only have a normal encoder (6000 impulse pm) for testing, but it only counts to 365 rpm and then the display goto zero. The encoder was connected to ST3 only, it have no index which is connected to ST2. My lathe is a MX180D, this one have a photosensor to display the actual RPM. I try this one with the board (with 22 impulse per round) without success, RPM was shown as zero? What I miss most in this instruction is an few examples what encoders could be used and the notice that the enconder send a Z Signal for threathing. Any help is most appreciated, I need the threading option, this was the main reason to convert the lathe into CNC. Merry X_mas btw :-) |
Beta Was this translation helpful? Give feedback.
-
$38 is set, I also have played around with the value. The conversion is running perfectly with the steppers, so I think it's something software-sided. Yesterday I tried external another photosensor, the $38 was set to 1 and I passed a piece of paper for interrrupting, the RPM rises to 5-7 for about 2 secs then stopped and show zero.
Fully understood that, after a while ;-) Maibe you find some time and insert this in the conversion manual, maibe it help others and they don't mess like me buying an useless encoder :-) |
Beta Was this translation helpful? Give feedback.
-
Thinking about it, I am not sure if a such a high resolution encoder is really needed...
I have a few of them here, you are right, it's way easier to generate the index signal with those sensors. |
Beta Was this translation helpful? Give feedback.
-
This did it, after removing C5 with hot air, now the 6000 PPR encoder seems to work, NeilMarley pointed into the right direction :-)
This explains everything! I did not dig so deep into the code. Ok, I'll keep working and report back to you as soon as possible. |
Beta Was this translation helpful? Give feedback.
-
Absolutely, there is no need for such a high resolution. |
Beta Was this translation helpful? Give feedback.
-
Just tested the built in photosensor, the wheel have 16 holes, so PPR is 16, I changed $38 value to this.
I raised the RPM but still the IOSender wrote zero. I found this remark in drive.c, but I am not sure if
Are tics_per_irq = 4 the mentioned spindle pulses in the remark? For now it seems that any encoder signal with is <64 PPR will not work as intended. |
Beta Was this translation helpful? Give feedback.
-
Hi @terjeio @phil-barrett ! |
Beta Was this translation helpful? Give feedback.
-
I bought another encoder with 200 PPM and Z-index, this works perfect. Somehow too perfect, my RPM raise and fall about 5-7 RPM, I suppose this is normal? |
Beta Was this translation helpful? Give feedback.
-
Overview
The Teensy 4.1 Breakout boards need a modification to support the recently developed spindle sync support in grblHAL. Here are the instructions for modifying V2.07 and V2.09. This covers most of the boards out there. If you have a different version and wish to make a change, let me know. Note that the Pro version (T41ProBB) does not need modification.
These instructions expect that you have skill in soldering, surface mount technology and working precisely with microelectronics. I assume no liability for any damage that ensues from the use or misuse of these instructions. Not also that it will not be possible to undo these changes if you desire to revert to the original configuration of the board.
There are 3 general steps:
Materials and Tools
You will need
1) ST3 to Pin 14
Start on the top of the breakout board. You will need to cut one trace and add a bodge wire. This requires care - there is little margin for error. Cut the trace indicated in the photo for your version. Be careful make sure you can cut through completely and there are no stray copper bits. Also take care not to cut or damage adjacent wires or components. Verify that you have no connectivity between pin 35 of the Teensy (labeled on the Teensy) and the bottom left pin of the IC as shown in the photo. If you still have continuity, your cut was not successful, revisit it.
Now, measure a length of small wire (26 ga solid is ideal) for bodge 1. Strip a short length of insulation off one end and a bit longer off the other. Do not use uninsulated wire. Tin the short end with solder. Carefully solder it to the bottom left pin of IC14 as shown in the photo. (Using needle nose pliers, hold the tinned end to the pin and place the soldering iron tip on it. When it melts remove the iron but hold the wire in place until the solder hardens.) Then solder the other end to the leftmost pin (labeled Hlt) on the 6 pin I2C header as indicated in the photo. Take care that no bare wire can contact any other pins, vias or solder pads. Test continuity between the IC pin you soldered the wire to and pin 14 of the Teensy (labeled on the Teensy). If you do not have continuity, recheck your soldering. Also verify again that you do not have continuity between the IC14 pin and pin 35 of the Teensy. Secure the bodge wire with some hot glue.
V2.07
V2.09
Halt to Pin 35
Turn the breakout board over and locate the area in the photos below. Cut the trace indicated in the photo. There should be no continuity between the pin directly above Cut 2 and the via where Bodge 2 starts. Make up a bodge wire as in the first step including stripping and tinning. Solder one end to the via and the other end to pin 35 of the Teensy (third pin from the left as indicated in the photo. Take care that no bare wire can contact other vias, pins or solder pads. Secure the bodge wire with hot glue.
V2.07
V2.09
Modify map file, rebuild
Now, modify the T41U5XBB_map.h map file to tell grblHAL the new pin numbers. Starting at about line 109 you will find
Swap 14u and 35u
Rebuild and reload your new firmware. You are ready to test. [edit] what are the specific steps to add the plug-in to grblHAL, I am a little unclear on that[/edit]
Beta Was this translation helpful? Give feedback.
All reactions