Building the first Electro-Mechanical Pedal Steel Guitar

Hi all. I am new to this forum, and this is the crazy idea I’m trying to prototype… well, not THAT crazy, but nobody’s quite exactly done it yet.

A traditional Pedal Steel Guitar, or PSG, uses a completely mechanical system of pedals moving rods and levers to change the pitch of a particular string. This allows for different chords. Then a metal bar held in the left hand is used to pitch these chords to the correct key.

Virtually all PSGs have a particular variation on a pedal setup designed over the past 50 years for the singular purpose of playing country music. Changing what these pedals do requires cutting and threading rod, mounting all kinds of hardware, and maybe even welding! So PSG players very rarely stray from a few classic variations on the basic setup. However, the capability of sliding one chord to another different chord in another key is something that can’t be accomplished by any other instrument ever designed! So the potential of the instrument is serously under-utilized. If causing a particular pedal to change a string pitch a particular amount was easier to do, musicians (to start with, just myself, I guess) could experiment a lot more with the options, and develop some new approaches to this very cool, modern, and uniquely American instrument.

I’m not starting from nowhere. There’s been some experimentation. The most complete example is this one, using servos to change the pitch of the strings on an electric guitar:

And here’s a little test bed of using a stepper motor to do the same thing:

Here’s a quick mockup I did of the idea. It shows pitch changing levers driven by small linear actuators (which, depending on the gearing, are either too slow or too low on torque, and also larger than I think they need to be.)

The actuators move the bottom of the lever. The end of the string is attached to a pin or screw on the top of the lever. As the lever moves, the string changes pitch. A spring is used to balance the tension of the string, so less torque is required to move the lever.

The deflection required for a particular string to achieve the largest practical pitch change is on the order of 3mm. The lever for each string can bring that up to around 10-20 mm, depending on the geometry.

What’s needed for each string is a means of moving its lever over about 2 cm of distance under microprocessor control. It needs to respond very quickly to changes in the input, something on the order of <100 ms over the whole range. 30 ms would be nice. I don’t think I can move my foot much faster than that, although I haven’t measured… The precision needs to be on the order of 10 bits. The maximum pitch range would be about 4 or 5 semitones, and with a 1/2-cent precision (which I think is sufficient) that’s a total of 800-1000. Most pitch-changes would only use a portion of that range, 1 or 2 semitones. I think the analog inputs on arduinos are 10 bit, right? 9 bits, or 1 cent precision would probably be okay. I don’t think 8 bits will cut it, but it might barely, if that made things simpler.

The solutions above use rotary servos and stepper motors, which have built-in position sensing, but particularly because of what I’ve heard about ‘missing steps’, I’m wondering about using something like this to move the levers:

<<NEW USER CAN ONLY POST 2 LINKS, SORRY>>
Amazon: DC 6/12V N20 Metal Speed Reduction Motor Micro Electric Motor With Long Output Shaft M4 x 100mm(12V 600RPM)

Although I don’t know how much precision one could get over such a small distance. And there are questions of power, size and rpm that I’m not at all sure about. I guess I should get the fastest motor that provides enough torque. And it’s challenging to guess how much torque I’ll need.

But most importantly, this approach requires a means of detecting the position of the tuning lever, so it can be moved to the correct position to tension the string to the desired pitch. This precision needs to be similar, around 10 bits, or .2 mm. Pretty precise. But I guess that’s about where I set the layer thickness on my 3d printer…

For position sensing there are so many options, and I’m not clear how precise they might be over this distance. I’ve looked at:

rotary encoding, via either optical or hall sensing tech. This allows you to know how many rotations the motor has moved, but doesn’t give an absolute position. I’d prefer absolute position sensing if it’s practical. But given a precision of 1-2 tenths of a mm, that may not be… certainly with a high-speed motor geared down substantially, you could get a lot of precision by rotary encoding the motor.

For absolute sensing, there are hall effect, inductive, optical, LVDT, and who knows what else. Unfortunately, it’s hard to know what ranges these sensors work well at, and what accuracy they can provide.

I’m looking to create a 1-string test bed, as in the video above. Some things I think need to change from that version:

  1. The stepper motor seems needlessly large and cumbersome. By using a stronger return spring, you should be able to manage with a much smaller motor. (I’ll probably wire a string up before I even figure out what kind of motor to use, in order to see exactly how precise the location will need to be, and how accurately I can counter-balance the string tension with an adjustable spring.)
  2. There needs to be continuous control from position A->B with a continuous input, which the video above does not do. A simple pot would be fine for testing. Eventually that would be mounted in a foot pedal. In the imgur link above, the maker used a hall effect sensor. Seems like it worked well for him.
  3. My mechanism will pivot on a knife edge, which should eliminate the mechanical imprecision issue of the test setup in the video, which keeps the string from returning to pitch properly. If the mechanics are correct, returning the lever to the same position will always result in the same pitch, as long as the string is tuned correctly to begin with.
  4. Finally, if I’m going to scale this up to 8 or 10 strings, the parts need to be relatively inexpensive.

What do you think? Looking forward to any thoughts… I think my main questions boil down to:
What are the control issues around using an electric motor instead of a stepper, beyond needing to figure out position somehow?
Is there a good inexpensive way to measure position over a 2 cm range to a precision on the order of 1/5 mm?

Then later come the questions of what kind of processor to use (I have a bit of experience with the arduino platform) and how to rig up a small touchscreen or screen/encoder combo (which maybe requires another class of processor?) with an interface for controlling the levers, storing their positions, and assigning them to pedals–which is a whole other phase of the process!

Thanks in advance!
=eric

Welcome to Maker Forums!

A major reason to use steppers is that they allow you to do open loop systems where you don’t need position feedback.

I think that you aren’t going to find the combination of torque, speed, size, and weight you need from using stepper motors, at least if you are trying to fit them into the body of the PSG. I think you will need a servo motor, which means you need a closed loop system, which leads to needing position feedback. Rotary enoding on servo motors is fine; the computer can count pulses fast enough that it won’t lose track of rotation.

I think the idea of using a counter-spring to reduce the needed force is smart.

With the mechanism you show, you could perhaps use a hall effect angle sensor near the pivot. They are available relatively inexpensively with 14-bit precision — though that’s over the entire 360° of rotation. Not sure whether that would be enough.

You have lots of room to work with underneath the guitar. What would you think of using servo motors connected to pulleys, belts, and wires in the space normally used by the pedal rods to change the pitch?

Are you doing a from-scratch build of the whole guitar around this idea, or would this be a retrofit to an existing body?

The first thing I thought of was a motor and cam set up. You could vary the design of the cam for speed and tension. Also a linear actuator such as a ball screw style would have high torque and speed.

there are lots of small geared DC motors with encoders on the back of them. I posted about using a pair of them being controlled like stepper motors with Step and Direction signaling. The geared motors are also more likely to hold position under strain.

1 Like

Another approach is to use a DC solenoid combined with a lever to provide a mechanical advantage.

Solenoids may provide a smaller footprint than motors. Assuming you need a fast & high torque but not a huge displacement solenoids may be ideal.

I did not do the math so this is only conceptual.


I have built high-performance (pull torque and speed) actuators by overdriving them.

  • Conceptually, you overdrive the solenoid with a large overvoltage (48V) but for a short period of time (Pull In) and then drop to the normal operating voltage (50% DF PWM) during the holding period.
  • You can vary the pull-in, hold and release profiles by changing the PWM % over the cycle.
  • The pull-in period cannot exceed the solenoids power rating.

Advantages:

  • Size

Disadvantages:

  • The peak current required can be quite high depending on the solenoids pull-in current. Switching DC supplies are reasonably cheap.
  • I do not know how precisely you need to or can control the string tension with this method. I haven’t tried to characterize this technique as a continuous pull device. i.e. is pull tension predictable for a given PWM value. I have only used this technique to create high levels of pull forces shortening actuation times. i.e ONHARD-OFF.

It would be interesting to set up an experiment to see if the string tension could be predictable and repeatable via PWM control of a solenoid.

To be completely outrageous :crazy_face::
Could you set up a tuner that allows a microprocessor to monitor the frequency while the solenoid is being activated thereby closing the control loop. i.e. you call for a certain frequency and the processor adjusts the tension to get it??? A FFT of the sound?

The drawing below outlines the concept for a single string.


1 Like

Woww, okay, pretty active forum here :wink: I am at the right place, I think!

Some more background:

I am a keyboardist first and foremost, that’s my ‘day job’. But for the past 10 years or so I’ve been playing a lot of lap steel, and a bit of pedal steel on an old Multi-kord, which does allow changing setups fairly easily, but is otherwise a pretty poor-quality instrument. It does have a very compact changer though, and the instrument is only a couple of inches thick.

Part of the motivation of trying an electronic solution is that then I could move pedals and knee levers around. Eventually, I would ideally have a setup where the steel could sit on top of the keyboard, and I could freely switch from one to the other during a song. That means keeping it as thin as possible. So I’m thinking of putting the electronics outboard, to the right of the bridge, rather than under the strings, as on a typical steel. This is basically how the multi-kord works as well. So I have high hopes for a compact solution for the tuning mechanism, something like 6" long by 5"deep x 3" high. That may be a pipe dream. But yes, mcdanlj: I’m thinking not of a retrofit, but a new instrument… I have a 50 year old piece of walnut, and I intend to stiffen it with carbon fiber, but that discussion belongs in a different sub-forum!

HalfNormal: I thought about ball screws, but I was concerned about pressure on the nut moving the motor, so braking is required. Since most strings, most of the time, will not be resting at either endstop, having a solid ability to stay at a given position in the middle seems really important. It looks like this is something the imgur guitarist above didn’t have to worry about with his servo setup. Braking sounds like a pain, but maybe it isn’t?

[To clarify: if one pedal lowers the pitch of a string, and another pedal raises it, that lever is going to be resting at some particular spot in the middle most of the time… only if all pedals lower (or all pedals raise) a particular string, can it live against one endstop or the other.]

donkjr: I think this is why a solenoid would not work either. Maybe if there is a way to keep a solenoid in a specific spot, but it sounds like it takes energy if it’s not at one endstop or the other. There has been discussion on the steel forums about the idea of measuring string tension, but as a player, I’m nervous about making the computer constantly adjust for my playing. For instance, when I pluck the string, the tension goes up briefly. I really don’t want the computer trying to compensate for that! I just want it to move the lever to a position, and have it stay there until I hit a pedal again. Similarly, I don’t need the computer’s help with actual tuning, although there are systems that do that. I’m happy to tune the instrument by hand.

DougL: A small geared motor with both encoder and lead screw sounds really good. I haven’t seen the motors you described. I did try (but not too hard yet) to get my head around what was going on with the vertical CNC wall painter, as it sounded vaguely relevant. I will go study some more.

Someone on the steel forum suggested the following: (which I am starting to think I almost understand)

'If you create a dust/dirt free, light-screened and el-noise free environment below the bridge, you can detect and convert exact angle of the vertical arm of the pulled/pushed “semi-rotating” bridge for each string, simply by using one LED, two LDRs, and a reflecting surface on the arm, into a DCVoltage output. ’

If anyone here can clarify this, it would be welcome. Is that the kind of tech used here?

Creating this environment again sounds like a pain, but possible, I guess. I have a 3d printer, so I could box the mechanism up pretty well, I suppose.

I also read about inductive position sensors. Searching for these turns up lots of expensive screw in tubes, and a few dirt-cheap chips, which seem to need to be paired with a pcb, but I can’t find any pcbs for sale, so it’s a bit murky. But according to this page:

https://cambridgeic.com/landing-page/linear-inductive-position-sensors

they are much more reliable than hall effect sensors, which apparently vary a lot with temperature, and can be confused by stray magnetic fields. Since I’ll have 8-10 fingers less than 3/8" apart, I could see that the stray fields could be a problem. I get the sense these are simple and cheap to make, but only available as custom designs… they all say ‘talk to one of our engineers’! Haven’t tracked down a DIY page on these yet.

Similarly with LVDTs. Here’s a diy page, at least:
http://www.mikesflightdeck.com/lvdts/lvdts.html

Making 10 of these seems pretty labor intensive. Anybody found cheap ones from China? Anything on ebay is crazy expensive. All designed for aerospace?

I guess I’ll take a breath here, and let y’all weigh in.

Thanks as always!!!
-eric

Anybody familiar with this?
https://www.dfrobot.com/product-2367.html

About the right stroke, a little slow, but if I use less leverage, might be about fast enough. Much more powerful than the actuators I was looking at… Is this really an actuator? Can you send it to a specific position? It’s hard to tell from the description.

it has no positional feedback since it’s just controlled by the 2 DC motor power wires. You’d have to add your own linear POT and a micro controller to drive an HBridge for something like a custom servo control.
They do sell small linear actuators with PWM control but they are usually much more costly.

A bunch of random, mostly unrelated thoughts…

If you are using position feedback (closed loop system) and your mechanism can be back-driven, plucking the string will result in the feedback moving the mechanism to compensate and wow could that sound weird. I would expect this effect to be much more pronounced with a servo than with a ball screw; a ball screw will back drive, but not nearly as much as a servo which is constantly adjusting position.

A high gear ratio might damp this enough to not matter, but something based on a worm gear or fine-pitch screw is probably better than a high gear ratio. If you use a ball screw, you might want to use a stepper of sufficient torque. Then you wouldn’t worry about a brake. Note that you might have to consider intertia with a ball screw to need need acceleration planning with both acceleration and jerk (1st and 2nd derivatives) to avoid skipping steps; even if you drive the ball screw with a servo motor you would want to do the same planning to avoid overshoot and correction which might be audible.

This concern would apply to anything that is constantly measuring the angle of the lever to compensate, rather than adjusting the angle of the lever during a change and then locking it.


Apparently you can find sub-miniature ball screws with lead as small as 0.5mm, but I’m guessing they are pricey. For this project you have no need for rolled ground lead screw; ground rolled would be fine. You don’t really care at all about backlash.

You might find that acme screw in delrin nut has low enough friction for this. Single-start 5mm diameter 2mm lead acme screw is I think reasonably inexpensively available.


For the linear inductive position sensors, if you just want to mount a custom circuit board below the levers holding inductive position sensors, that’s easier these days than it used to be. KiCAD has everything you need from schematic design to sending out design files; some board houses now accept KiCAD projects directly for manufacturing, instead of having to render gerber files for the various board layers. It’s mind-bendingly cheap these days to have custom boards made. They are cheaper than dirt in tens or dozens shipped from China; they are inexpensive even for very high quality ENIG made in the US at Oshpark (one of the houses that accepts KiCAD projects).

I don’t see the CambridgeIC parts at digikey or mouser but you could ask each of them whether they carry them. Maybe I didn’t search right, I didn’t try to hard.

People have hacked the guts out of cheap calipers to make linear position sensors. There are libraries for talking their weird protocols. And you can basically chop them up a lot and still work, including cutting them down to the length you need.


For giving more flexibility for locating the mechanical parts, I’m wondering whether you could use a bowden cable (think like brakes on a bicycle) to pull on the levers. That would let you move the mechanism with substantial freedom. This could include spreading it out to let you use somewhat bulkier but cheaper actuators.


Is the reason for the knife edge fulcrum instead of bearings acoustic coupling? Bearings would be quite precise and wouldn’t blunt into a rolled edge with time. And they’ve become extremely cheap.


If you can 3D print a mock-up in plastic, you can validate mechanical fit and have pieces either 3D printed in metal by a service or CNC machined, depending on the geometry of the part. If you do that, consider using PETG for your test prints because it is the most dimensionally-stable common filament. If you use PLA, you might need to measure them to see whether critical dimensions are close enough.


There are definitely libraries for use on small microprocessors for MIDI, and if you used MIDI to control the meanings of the pedals and levers then you’d be able to hook up any MIDI control device you like, I’d think. I think if I were doing this I would use sysex messages to assign voices to pedal tuning, and then any MIDI controller ought to give you easy access to voice changes that would change what your pedals meant.

@mcdanlj Thank you for the in-depth explanation of how ball screws work and their limitations. Also thank you for the comparison to lead screws.

@woodslanding You mentioned an adjustable bridge or being able to follow the adjustable bridge. That got me thinking about a bridge that is a cam and then being able to adjust the height that way.

HalfNormal: Hmmm, I don’t know what you’re thinking of with the adjustable bridge. I plan to use a roller bridge, which will not be adjustable. But for my test string, I will probably forgoe a bridge entirely and just drill a hole in the lever for the end of the string.

mcd: Well your thoughts are certainly a nail in the coffin for ball screws.

I have a question about lead screw nuts: I know that lead screws are trapezoidally threaded. Is the threading on the nut just normal thread? I think a cubical piece of delrin drilled and threaded would be a good solution to moving the levers. Is a thicker nut less prone to back-driving? The delrin could provide a nice flat surface to mount the circuit for the inductive position sensor. I’ll look into the links you posted on those, that’s encouraging. CambridgeIC was just the first site I found with an explanation of the process. I don’t know anything about them.

So far the worm gear motors I’ve seen have been quite expensive.

On a geared motor, it seems like for a quick response, I’d need a pretty high rpm on the motor, which means less gearing down. Still, the gearing would be minimum 6:1…

Doing some math: If I get to be a total badass on the steel, and want to play Donna Lee at 300 bpm, the 8th note triplets will be 900 bpm. Some of the ornaments are 2 semitones, and my total throw will be around 5 semitones. Assuming a 1 cm throw, I need to be able to move 4mm in .001 minutes. That’s 60 ms. (or 30ms. per semitone.) With a 2mm pitch on the lead screw, that’s two rotations. wow, about 1 rotation per semitone, that’s easy. So I need a 900 rpm geardown. So yeah, about 7:1 for a 6000 rpm motor. That means my rotation sensing needs to be accurate to a couple of degrees at the screw, or about 15 degrees at the motor shaft. Provided I didn’t screw up anywhere on the math, that is…

I’ll look into ground vs. rolled lead screw. I’m not familiar with the terms.

I replaced cables with rods on my multi-kord, and it improved the feel a great deal. So I guess I’d prefer to avoid cable in the system. It might be a non-issue, but I’d prefer to figure something out with screws. I could stagger the motors as far out as 4 rows, with successively longer lead screws, if needed. I guess my thought would be to try a smaller motor on my test setup, and graduate if needed. But I can set it up a string without a motor, and take some measurements of force and throw, to get a better sense of what will be needed. I plan to do that shortly after the new year.

I actually am about to start printing in PLA for the first time! I’m planning to put together a low-rider CNC, and they recommend PLA over PETG for the parts as it’s stiffer, so I went out and bought some. But otherwise, I’m a PETG man all the way…

I like the idea of MIDI. I’m very comfortable working with those messages. Indeed I could maybe skip the sysex and use pitch bend messages, which are 14-bit. Plenty for this purpose. My experience with arduino is making MIDI interfaces out of teensies, so that part of the process is already familiar. I have not done much with outputs yet, though. Just inputs, so I suppose there will be a learning curve there.

As for bearings… yes, if I use a roller bridge, I do not need acoustic coupling. In many steels, the changer is the bridge, but I can see where that is not optimal in this situation–since I definitely don’t want acoustic coupling with the motors!

I’m not familiar with the options for bearings, I’ll look into that. they’d need to be pretty small, I guess. My string spacing is 11/32, so that’s the thickness I could afford. I suppose they are probably available in 5/16 thickness, and I could mount them all on the same axle, with1/32 nylon washers. I’m not sure rounding of the knife edge is really a problem, though…

Lots to chew on here. I will follow these links and get my one-string tester wired up.

Happy Holidays!!
-eric

1 Like

@woodslanding

This is what I was replying to:

Nope, they have a matching trapezoidal thread form. I have a T8*2 tap specifically to make single-start 8mm lead screw nuts (in my case from Delrin), and I’d expect you could get a T5 tap as well. Machining them in oil-bearing sintered bronze would give almost unlimited lifetime and low friction, I’d bet.

Also, I was wrong. T5*2 is apparently two-start. T5*1 is single-start. That would be 1mm lead 1mm pitch. Both T5*2 and T5*1 are available relatively inexpensively at least on aliexpress… They are often shipped with brass nuts. I am having trouble finding T5 taps though, and the nuts are too big for your string spacing so at minimum would need to be modified.

900 RPM is easily within range for a stepper motor with no gearing. And you’ll typically have accuracy to a fraction of a degree with a stepper. With your spring balancing you might reduce back pressure enough to use a stepper, too.

For ground vs. rolled, that’s for ball screws. I accidentally said it backwards before: Rolled are stronger and less expensive; ground are more precise (but you don’t need that). I just meant you don’t need the most expensive.

However, it’s not clear to me that you can get nuts small enough and still have the clearance you need, especially inexpensively. Thus trapezoidal lead screws probably win.

For cables vs. rods, if it’s electrically activated where does feel come in? Cables would remove so many constraints. Or are you saying you could feel the difference in the strings while playing?

For MIDI, I hadn’t thought about using pitch bend; you could do pretty arbitrary retuning that way! Assign a voice to each string then?

Oh, that’s almost 9 mm! Lots of room!

683ZZ bearings are 7mm OD, 3mm ID, 3mm thick. $8.99 for 20 pieces:

Last time I dropped one the trouble was finding it again! :relaxed:

From the one-string stepper motor youtube video above, in the comments:

I was able to pause 75 microseconds between each half of the cycle. Below 75 microseconds, the result was unpredictable. There were 485 steps from E to F# with each step taking X time plus the 150 microsecond delay. I don’t have a way to quantify the amount of time (X) that the motor needs to actually do the move but the total time for the move is slightly more than 72,750 microseconds or 72.75 milliseconds. Another way to say it is slightly less than a 10th of a second.

Pretty close, I guess. That was a pretty hefty stepper motor though. Would a smaller one be slower? Or just less powerful? 70 ms. is pretty close to my target. That much latency on a key press would be murder (I know because I used to play organ at hockey games!) but I’m assuming this figure is not exactly comparable to latency…

I’m not entirely clear on how dc motor controllers work. Can you explain from an electrical feedback perspective what difference (if any) there is between a stepper motor and a speed controlled, geared-down DC motor? I feel like the motor is going to be more ‘analog’ in its response, but that may be a mis-perception. In the explanation above, the motor has to move a step, wait, move another step, wait, etc. It has to hit every step between x and y. Would a dc motor controller be able to operate more efficiently? Can it respond more analogly to a rate of change, by simply changing RPM? Or is it more complicated than that?

If I have a 1mm pitch, that’s going to cut my response time in half, right? Requiring the motor to be twice as fast… so probably 2mm is right. If I can’t make my own nuts, I figured I would have to file or cut off the sides of the nuts.

This seems to be the only T5 lead screw available on amazon:

Here’s a tap:

I could probably trim that nut to 8mm, and still keep 2 out of the 3 mounting holes. But I thought if I could make my own threaded holes in delrin, I could keep wear issues down by making the nut very thick, say 15mm or more. And by making the outside square, I could keep it from rotating, another issue I have to address.

Wow, those bearings ARE cheap! And TINY!! How would I install them in a brass changer finger? Just drill a 7mm hole and pound them in? I think I’ll need at least a T5 axle and maybe thicker, to avoid deflection in the center, unless I build a fancy ‘cradle’ for it. I’ll see what’s available a little bigger. Axles on steels are typically 3/8, but some folks seem to get by with 5/16. I guess it depends a lot on what the axle is made of, as well. So yeah, if I have a tough axle, I could use these:

uxcell MR128-2RS Deep Groove Ball Bearings 8mm Inner Dia 12mm OD 3.5mm Bore Double Sealed Chrome Steel Z2 10pcs

(the actual link shows the wrong size…)

Yes, I have over 8mm of width to work with. A lot of steels are 5/16… the multi-kord is 3/8! But my lap steel is in between, and I like the spacing. T5 seems about as large as I could go for a lead screw. Most of the motors I’m looking at have M4. And although they say ‘lead screw’ nobody mentions the pitch, or whether they are trapezoidal. It looks like they have 1mm pitch, to me.

I came up with an idea for a layout where the geometry is such that I’m moving the lever up and down, and had some motors facing upwards and others down. That buys me 17mm of width. Enough for 8 of these:

Two up-down racks would give me 34mm, enough for a larger motor, and perhaps with different geometry I could make both racks respond similarly. Still sketchuping on that one… I’ll post something when I get it figured out.

It’s a good point about the cables. Plus they would be very short cables. I’m still worried about stretch or play giving unpredictable results. You wouldn’t want to use them for both pushing and pulling would you? So you wouldn’t want to counter-balance your string TOO accurately. I will say that folks on the steel forum have suggested this is not a real concern, as springs respond differently than strings. So maybe just pulling, with some resistance coming from the lever, is best in that situation. And they will be under far less tension than the ones on the Multi-kord. So yeah, I’ll think on that.

The bridge on many pedal steels consists of a series of changer fingers, one for each string, which have a semi-circular top that the string goes over. As the angle of the changer finger changes, it pulls on the string, changing pitch. But for using a steel bar, it’s crucial that the strings be precisely the same height. That’s why the top is circular about the fulcrum of the motion, so as the pitch changes, the height of the string is unchanged. Hope that’s clear.

In my case, I will probably use a roller bridge I already have, and attach the string to the changer fingers behind it, so that the changer mechanism is not part of the vibrating portion of the string. That will decrease the amount of acoustic motor noise…

1 Like

I admit to not having watched the video, being more of the written word kind of guy (can you tell? :smiley:) but my assumption here has been that your balancing spring can be tuned with a spring to reduce the load on the stepper. To avoid skipped steps you’ll still need to handle acceleration, even with the load balanced. This requires motion planning. Do you know about motion planning for stepper motors? When they talk about a fixed pause between halves of the cycle, that sounds like they aren’t using microstepping and aren’t considering acceleration.

This link explains that difference.

A stepper motor gives lets you control how many steps to take, and reduces or eliminates the need for position feedback. You often still want a “homing” operation where you can sense when the mechanism reaches a limit, but after that as long as you keep power flowing to the motor to hold it in its currently-desired position and it correctly takes every position you command, you don’t need to measure position.

That’s not really how it works. Modern stepper controllers subdivide the steps and give very smooth control through the steps, and can even adjust current many times per step to provide smooth motion. You would want to use these. The Trinamic controllers work this way, and they are what you would want to use for this.

A DC motor controller needs continuous position information, and whenever the mechanism senses that the position is wrong, it drives the motor toward the desired position. Corresponding to the motion planning for the stepper motor, the DC motor controller will have to implement a PID controller algorithm.

Here’s a video on PID controller theory that makes it intuitive based on seeing the impact on physical motion.

A DC motor will have much more torque for its physical size, basically because magnetic fields have inertia and a DC motor doesn’t have to change the magnetic fields as fast as a stepper. Also the DC motor has fewer poles than a stepper.

If you have a dead stepper, disassembling it will be educational! :relaxed:

Good find on the taps, I was searching for t5 instead of tr5, oops!

The thicker the nut, the more bearing surface and the more friction. So it’s a balance.

You would want an undersized drill bit and a 7mm reamer, in a drill press or mill. You can’t really freehand drill with a reamer. Then you use an arbor press to insert them. Alternatively, yeah you can use a 7mm drill and just use some loctite and make sure the loctite doesn’t get into the bearing! I’ve done that (successfully!)

I assumed that the axle would be supported at every finger; 3mm would be fine with less than 8mm unsupported, but certainly not across the whole thing. But yes there are many many more bearing sizes, and you can choose what fits axle and finger.

A standard M4 is 0.7mm pitch. Other pitches are typically expressed with a qualifier, fine thread M4 is M4x0.5, and there are sometimes other custom pitches.

Usually “lead screw” should mean trapezoidal threadform.

You’ll see TR4.76 listed some places, but that is actually 3/16" ACME lead screw expressed in metric as far as I know.

I see NEMA8 (0.8" / 20mm) steppers with integrated TR4.76 lead screws on aliexpress. For example Nema8 20mm Size Linear Stepper Motor Lead Screw Tr4.76 0.635mm Pitch POM Nut|linear stepper|stepper linear - AliExpress with a POM (delrin) nut.

OK wow I just went down the aliexpress rabbit hole. Here’s a linear actuator including a 10mm stepper and a 2mm lead screw:

18° per step; it’s a 10 step per rotation motor. I don’t see I can’t tell whether it’s 0.23, 0.25, or 0.5mm lead, and there are no current or torque specifications, but it’s a start.

Here’s one with better specifications and with a hex nut that would be easy to embed in a block. 0.5mm pitch, 25mm travel, 0.5A current, even has torque specified. Don’t worry about 5V — that says you’ll get 0.5A if you apply 5V, but normally you just limit the current and put a higher voltage across; driving it with 24V and 0.5A current limitation would be fine.

Same motor specs (I think), 3mm x 1.2mm screw 50mm long, round nut:

If I were doing this, I would experiment with one of those in the one-string test bed and see whether it would work… If you could stagger the motors you could meet your 8mm pitch requirement, it seems. I’m sure that your balancing spring idea would be key to using such a small actuator! But it might be the key to success here.

Just want to make sure you know that while sketchup is really easy to work with, it’s also modeling surfaces not solids, and therefore is easy to specify parts that are “non-manifold” and can’t turn into models for printing or CNC. Since you’ve done 3D printing you’ve probably run into this already?

Also every conversion I’ve dealt with coming from sketchup has had imprecise measurements and I’ve had to rebuild it in CAD to have precise and correct measurements.

So yes, wire stretches. Heck, when you tighten a bolt, the bolt stretches! But the force on this cable would be much different than a guitar string; the cable is thicker and the force is orders of magnitude lower. You are not going to exceed the elastic limit for the cable, so it won’t stretch meaningfully, I think. And if the cables don’t have much bend, you’ll have very little friction in them.

No, you don’t want to push. Your mental model here is bike brakes not throttle cable. But it takes extremely little return force; I’m surprised how little force every time I play with a return spring. I just replaced a bowden release wire on a piece of furniture and the return spring felt like it was too small to do the job, but no actually it did the job just fine. I wouldn’t worry at all about that. It will be tremendously less force than what the motor would provide. You’ll just tune your balancing spring (you can tension it with a screw, like on a 3D printer extruder) so that you get good return behavior.

these come in various sizes and RPMs:

That’s a nice motor/encoder.
Useful for my “gotta finish that” automated curtain project.
Not much interface data :thinking:

If referencing the link I posted, I grabbed some off ebay and have used them in my project to control them with stepper motor driver signals( Step/Dir ). Code is on github.

oh absolutely, I use fusion 360 once I get serious about a design. Before that I used openscad. But 360 is murder on a laptop because of the limited options for keycommands for navigation, which seems so ridiculous to me. And at this point sketchup is so FAST for me. I did actually make the CAD cutting plans for my keyboard in sketchup and they converted without issue. You have to directionally constrain every possible line, and type in all length values, and if you miss one, you will have lots of corrections to try to find later. This was done before I got a 3d printer:

If you are super careful, it is possible to make real stuff in sketchup, but yeah, its best for experimenting with ideas, mostly. I find if I get into fusion 360 without a really clear plan, I get nowhere.

So thinking through everything you’ve said… I’m not clear why you are leaning towards a stepper rather than a PID motor. It sounds like the motor would have more torque… but harder to wire up and program? I guess the big deal is that it eliminates the whole position sensing issue… which is non-trivial, especially for a test setup.

Those little steppers from Ali are certainly small and cost-effective. I guess I’ll spring for one and see what they can do. I could fit a 15mm version if I can track one
down that size.

No I do not, sounds like time to read up. Good to know there’s a better way to do it.

Yep, same here.

If I thought you didn’t understand the mechanism, I’d recommend watching about 10 seconds at the 4:30 mark. No need to wade through all 5 minutes in any case.

So, if I get one of these steppers, and hook it up to my changer finger… do you have a link for an instructable on wiring it up and programming it, that might be a good starting point? I know how to program an arduino, and I have wires, breadboards, pots, connectors, ribbon cables and resistors handy. Beyond that, I will be, er, stepping into the unknown…

Thanks as always!!
-e