This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

DRV101: Solenoid driver advice needed

Part Number: DRV101


I am in great need of some help and advice with a solenoid project I am working on.  I am using some 6V 300mA solenoids (Ref No: JF-0530B) to operate the keys on a saxophone that would normally be operated by the right hand (I can no longer use my right arm and am trying to adapt my saxophone to be played one handed).

The solenoids can depress the keys with about 6V, and hold them in place with 1.5 - 3V depending on the key being pressed.

I'm using a 9.6V battery to power them as this gives a much better reaction time and does not appear to have any effect on the solenoids so long as I drop the voltage to the holding voltage once they have activated.

I have tried using a basic circuit I found on the internet which can drive the initial higher voltage, then drop to the holding voltage (a capacitor in parallel to a suitable resistor), but this is not up to the job; the resistor gets too hot and the capacitor takes too long to discharge if I need to activate/deactivate the solenoid repeatedly (as I would need to do while playing the instrument).

I am a complete novice when it comes to electronics, but am very willing to learn what is required to solve this problem.

The DRV10x drivers look like they are what I need, but I am unsure if they can meet my requirements:

  • Repeated activation without lag
  • Output the activation and holding voltages I require - I assume from the documentation that this can be configured, but unsure if they can go as low as 1.5V

If anyone offer any advice / recommendations on suitable drivers I will be very grateful.

In addition, I also noticed in the spec for DRV102 that multiple solenoids can be operated using a single DRV102 in conjunction with an Octal power switch (Figure 17 in the data sheet); At the moment, I have 5 solenoids set up on my sax, but will l eventually need to operate 8, would the example shown in the data sheet be able to activate/deactivate 2 or more solenoids independently of each other? 

Again, any advice that can be given will be a great help to me.

Thank you in advance.


  • Hi Simon,

    Welcome to E2E! Thank you for the very detailed explanation! 

    The DRV101 and DRV102 are good choices for solenoid drivers. However, for this application, I think these devices wouldn't be necessary. The operating voltage/current ranges are far greater than your intended application, and it looks like you're trying to drive multiple solenoids at the same time depending on the notes you're playing. Furthermore, since the solenoid acts as an inductive load, you would have to add an external diode to your circuit which adds more components to your design. 

    Figure 17 on the DRV102 datasheet would work as a potential solution, but again it would add more and more components to your design. 

    For this application, I recommend taking a look at the ULN2003A or the TPL7407LA. These devices perform like Figure 17 in a fully integrated package and also offer 7 channels in one device. They also have an integrated flyback diode for inductive loads. These devices can activate quickly without lag. 

    The only potential problem is the solenoid voltage. Can the solenoids be held in place with 6V instead of being stepped down to 1.5-3V? 

    Let me know if you have any more questions!


    Arthur Huang

  • Hi Arthur,

    thanks so much for the reply and advice; very much appreciated.

    I already have the flyback diode in my circuit, but forgot to mention it in my post.

    I will take a look at the 2 items you suggested and see where I can go from there.  As my solenoids are rated at 6v, holding them at this voltage makes them very hot very fast, this is what lead me to start looking at the correct way to operate a solenoid (it's been quite a learning experience so far).

    There is a 12v version of the same solenoid (same part number too strangely), so it may be an option to change to these and have a 6v holding voltage.

    The little circuit I have at the moment actually works, but there is too much lag, both activating the solenoid and discharging the capacitor after releasing the solenoid.

    If increasing my solenoid working voltage is the answer, then I can look into the options of alternative solenoids and alter my design to suit.  At the moment, I have fabricated a mounting panel out of stainless steel that positions each solenoid over its relative key on the sax; so drilling new mounting holes in the panel shouldn't be too big an issue.  Maybe I should have started with a softer metal until I got the design right.

    Thanks again Arthur.

  • Hi Simon, 

    Another thought! You could try using the DRV103, which has an adjustable duty cycle.  After the initial closure of your solenoids, the D/A converter will control your duty cycle and reduce the power/heat that you're generating. You'll also reduce the lag from the RC circuit with the Delay Adjust pin. 

    Page 8 of the datasheet contains more information about switching between DC output to PWM mode to save power. 

    Let me know if you have any questions. Good luck with the design!



  • Hi Arthur,

    once again, thank you.

    I am slowly getting to terms with the jargon of things like duty cycle.  As I tend to learn more through experimentation, I have ordered a DRV101 and a few DRV103's so that I can do some actual testing.

    The DRV103 looks less complex than the DRV101 (fewer connections to solder is a good thing for me!).

    It is my understanding that manipulating the voltage into the relevant connection on the driver will alter the duty cycle accordingly.  As I have some potentiometers in my box of random parts, I had the idea that I could use one of these to fine tune this input voltage....... is this wise?  I ask because I applied the same logic to my current circuit (resistor in parallel to a capacitor) and well, there was a bit of smoke and the smell of burning........ I did say I was not electronics savvy.

    As each key has a different spring resistance, there is quite a range in the activation and holding voltages required to press them, so I'm thinking it would be best to isolate them with their own driver.  I'm quite happy to do 1 key, 1 driver circuit (keeping it simple to understand for myself)......... I'm sure I can find a way to affix it all to the right hand side of the sax.

    You've been a great help Arthur, I can't thank you enough!

    I'll update when I get the drivers and do some experimenting.


  • Hi, 

    Just thought I'd give an update on my progress with this.

    The DRV103's that I ordered were far too small for me to integrate into my breadboard, so I tried attaching them to some PCB converter boards.  Needless to say, I made quite a mess of it; the boards will take a lot of cleaning to remove all the flux and I'm quite sure I've cooked the drivers in my poor attempt to solder them.  I'll put it down to being a good soldering practice exercise.

    Anyway, rather than face the task of cleaning them up and then finding out I've killed them, I had a play with the DRV101, which I can quite easily fix to my breadboard.  After some playing about with various capacitors and resistors that I have to hand, I got it working.  Using a 9.6v input, it has enough umph to press each of the 5 keys that I'm setting up at this stage and can hold them when the driver drops the power to 0.9v, which is excellent!

    I was able to get the holding voltage down from the 2v area by moving the solenoids further back from each keys fully closed position to ensure the solenoid is pretty much at full stroke when the key is closed.  I'm very happy with this progress, so have ordered a handful of DRV102's as it seems they have a wider operating temperature range than DRV101 - I'll pop some heat sinks on them for good measure.

    However, I noticed two strange things:

    • The solenoids now make a buzzing noise while in the hold position
    • I could not get the driver to activate/deactivate by manipulating a voltage at pin 1.  However, turning the voltage on and off at the supply pin (pin 5) seems to work perfectly, so I'll work with that - I don't understand it, but it works and that's all I need.

    I suspect the buzzing is just due to the low holding voltage; It might not be a noticeable problem when I start playing.

    I'd like to thank you again for the help and advice.