@@MetalheadAndNerd TH-cam only allows it's own links usually... That being said I remember searching some motors on Aliexpress and finding one with I think 100W of "VIOLENCE!"
@@MetalheadAndNerd Found them, damn I've seen those tiny "beasts" in PS1 counterfeit controller vibration but to think they would have self destruction and even household blender capabilities is impressive! I don't know if even more crazy stuff popped out when translating to Portuguese, but it's really funny to search for suction cups in BR-Aliexpress, they get translated from "sucker" to the cuss word meaning, a moron, instead of a suction cup. Also crimping dies that it understands as death
You don't have to remove the original potentiometer of these buck converters. You just need to "inject" some extra voltage to the shorted pins (pin 2 and 3) of the onboard potentiometer through a resistor and by this you can trick the buck controller chip and control it perfectly. I did this already quite some time ago using a MCP4725 12-bit DAC and an SZBK07 buck converter. This DAC has higher resolution than those digital potmeters, so you can control the voltage on a really fine scale.
Yeah, just check the voltage range on each potentiometer pin, set potentiometer to highest resistance and solder onto the appropriate pin without removing the potentiometer.
@@DavidMishchenko Yes, that is what I did. I knew the maximum voltage because of the maximum output voltage of the SZBK07 buck converter. Then I also knew my maximum controlling voltage and based on this I picked a resistor which through I fed the potentiometer.
This was the video I was looking for! Thanks for doing all the research. I always wanted to control the brightness of a led with an arduino but never was able to, because I didn't knew how to use a digital potentiometer. Now I can finish my project🎉
Dude, I spent like four MONTHS trying to find some way of doing this a while back.... And there is just a nice little IC... I mean, of COURSE there is... Sigh... Thank you!!!
Did he just prevent some university students from spending time building a custom microcontroller compatible buck-boost converter and showed a simple hack to convert any buck/boost converter that can be controlled by an Arduino?!?! YES, HE DID!!! Great video as always!! During your video of an Arduino based FM radio, you used one. But didn't understand how it actually works and I am ready to change my power supply on by Automatic Light System.
I already did a much smarter control with a MCP4725 12-bit DAC a year ago... You don't even need to remove/replace the original potentiometer. I even built an automatic digital thermostat which can maintain a Peltier cooler's temperature within a really tight range.
Scott mentions in the video that these digital potentiometers can be used to control the volume of audio circuits. However, it is not really recommended to use an ordinary digital pot for such a task, as these usually make a "zipper like" sound with audio signals when you move the wiper up or down. For this kind of application you should use a specialised audio digital potentiometer with built-in zero crossing detection, like Dallas Semiconductor's DS1801 or DS1802. With these you can save some headache for yourself.
Another perfectly timed video. Been working on driving a panel using ESP, but I couldn't find a good digipot that wouldn't go open-circuit between switching resistances! I blew up a boost board already by using a potentiometer that had a gap or internal problem! Thanks great Scott!
A few years ago i took apart a radio that had an electronically controlled volume potentiometer (if i'm not mistaken, i think it was volume). This was a radio from the 90's. Their solution to this problem? The potentiometer had a dc motor stuck to its back, if the radio deemed the volume too low, it just turned its own knob with the motor to crank the volume. Beautifully simple and complex at the same time.
This control scheme is still in place for some audio products because digipots can have audible clicking as they internally switch between resistors if they're in the signal path.
Just a circuit idea I had recently: I think its possible to do the same thing (µC Control of such a DC/DC convertors output voltage) without the "exotic" part just by altering the feedback path a bit. Use a simple DAC (PWM pin is fine), Filter & Buffer that voltage using an opamp (a "rail-to-rail" one might be necessary), select the components around the opamp such that the resulting µC controllable voltage ranges from 0V up to the regulation point voltage specific to the DC/DC converter (= the voltage at the wiper of the DC adjustment pot which is kept constant by the DC/DC's own control IC) to get the maximum resolution in the end. Now adjust the voltage pot of the unmodified DC/DC to the maximum output voltage you want to be able to get out of the system. Then just keep this voltage pot in the circuit - but replace the "GND" point of the feedback circuit's resistive divider with the µC controlled DAC Voltage described above. Now you should have linear (!) control of the DC/DC's output voltage by setting the DAC - note however that the control will be reversed, a high DAC voltage results in a low DC/DC output and vice versa. Disclaimer: I have not tried this yet, but I think this should work and if so it's quite an elegant hack I think.
Ok. Nice video. But I didn’t understand it. I’m building a variable speed controller for a 4.25 hp, 130 VDC treadmill motor. I’m using a SCR, bridge rectifier, DC choke to drive the motor. I have a potentiometer on my SCR. I turned it slowly until the motor started turning. Then I measured the resistance (301 k). So I broke that down by using a 275k and 30k pots. One for rough rpm adjustment and one for fine. Would it be better to use a digital pot on this? If so, what kind do I get and how to hook it up. Your help is appreciated. Thanks, Paul
Great summary! In regards to code, I write a library with example for the i2c version (MCP45HVX1) a few years back, it should turn up (never thought it would be relvant...).
I remember reading it's not that easy to use a digital pot for audio applications, at least not as a direct replacement for a mechanical pot. The reason is you get pops on the audio every time you adjust it up/down and it requires some complications to the circuit so it only adjusts at zero-crossing....would be great to see a project like this though :)
Yours channel is very informative, always learn something new. The best thing is, its not overly complicated, any useful topics only, and not too much kidy like simple arduino code to control PWM, it goes down to the basic electronics concepts, without focusing too much on online code.
05:10 - Resolution could be increased by a factor of 100 by utilizing 3 potentiometers. The third would be connected between both wipers of P1 and P2. The total resolution could be calculated with a simple formula. Total Resolution = init.resolution power 2.
Nice video, as always. One interesting application I used a digital pot for was to control an analog filter before an ADC. In this way it is possible to change the low pass frequency depending on the sampling rate.
i love these things. i built a personal project that controls my minidsp and my speaker amp, as well as turns on my pc. the minidsp supports i2c control, buti decided to simply use a digital pot and use the arduino to control it. i was going to do the same for the amp, but unfortunately, the pot actually had audio channels going through it, so i ended up using a servo to physically control it with the arduino. so far, it has worked well and only once did it lock up, but a reset solved the problem
Perfect.. this is what I was looking for. I will use this digital potentiometer with regular buck converter boards to make my own low-cost Arduino-controlled smart MPPT solar charge controller. Thank you for the video.
Really a good video that I have ever seen great Scott you are the best youtuber I ever I watch your video almost 3 year . Really you are a good engineer . And I always appreciate to make this type of videos projects and other thing as. And and this pwm digital are best for degitily controling features
This is soo cool. I'm definitely trying this. Since the first time i learned about digital potentiometers i haven't given much thought to it till now. Cool video ideas loading.
I had the same challenge to solve some time ago = controlling remotely CV CC modules. I solved it using an LDR (most have R.dark > 1MΩ) and adjusting the trimpot for Max desired Voltage or Current. Using an LED and sealing it a black shrink tube with the LDR and some epoxi glue it can use a simple PWM on the LED, enabling ~ 1000 steps if choosing an appropriate LED current for a strong LDR Excitation, allowing a wider dynamic span. And measuring the actual voltage with the Arduino, makes a closed loop and corrects the optical set point. There are also TWO useful characteristic of the LDR in parallel with the trimpot: [1] The Voltage/Current never passes the Maximum limit adjusted by the trimpot. [2] The “Attack” time (go to light) is shorter than the “Decay” to dark time = this means the voltage (or current) could be decreased faster (protecting quickly) than when one resumes the LDR as dark, than can take hundreds of ms. But it was nice to know more about Digital Potentiometers and see it being a solution - nowadays still more expensive and complicated, but already much faster than a LDR for sure. Thanks for sharing.
If somebody needs ever higher voltages, look up motor-driven potentiometers. They are also used in some audio equipment as a very fun way to control sound volume.
I hadn't really thought about digital potentiometers, so this was a good topic for me! Now add a mechanical potentiometer to your microcontroller's ADC, then use that value to set the resistance value on the digital potentiometer, so you still have the feel of the rotary switch! 😛😛
I have to LOL at this. I literally bought a X9C103S for this exact purpose of replacing the POT on a boost converter. Except I have been too lazy to get it done. Have the POT working with an Arduino but thats about it. My idea was more to use it on the CC pot of a CC/CV converter to make a DIY MPPT solar converter to charge a 29V (7S) lithium system. From testing it seems the voltage on the CC POT is not very high so V would not be an issue as it was on the CV POT. Anyway great video as always!
I have been looking at these components for a while as I could use them, but I'm amazed at the amount of money they dare to ask for such a simple part: An X9C103 sells for about €5. At those prices, I'd rather use an old fashioned transistor as variable resistor and say "bye bye". It's not ideal: Because transistors are designed to amplify (i.e. low resistance) and you want to create resistance, you are forced to send very tiny currents through them to get reasonable resistances and you need to calibrate the microcontroller to compensate against manufacturing tolerances of your transistor, but it works. Transistor, two resistors and a ceramic cap cost about €0.05, that's 100 times cheaper and worth the slight annoyance.
They are quite complex compared to other components. imagine a poti, but instead of a wiper you have 100 or more small transistors, tapping certain points on it. You also need memory and stuff to store the position. That's why they are nearly never used in consumer electronics.
A mosfet makes a much better variable resistor, but it has to be calibrated individually if there's no way to get feedback. The convenience of these chips is that they have internal non-volatile memory, which means that you can store a value and it will return to the same value the next time it is powered on.
@@RexxSchneider I have experimented with MOSFETs. My findings were that in order to get reasonable restance (I was looking at a range of 500-1000 ohm), the voltage at the gate had to be within in a really narrow range. As my microcontroller was generating that voltage with PWM + RC filter, there is always some voltage instability and this gave me unstable resistance. I had less trouble to get the required restistances with a traditional resistor, I used a BC547 and a 56kOhm resistor in front of the base did allow me to get resistances in the required range.
@@danielmantione I'm amazed that the BC547 gave useable resistances in the 500-1000 ohm range. That sort of resistance is only available at the "knee" of the Vce - Ic curves, so you're stuck with a Vce typically less than 1V if your base current is around 50 microamps as you suggest, and it's highly dependant on the Hfe which can be anywhere between 100 and 800 for a BC547. Getting the required resistance with a mosfet is also tricky because of the variability of the gate threshold voltage, but the source-drain resistance in the linear region doesn't change with Vds for a mosfet, unlike a bipolar junction transistor.
Adding these to my audio amplifiers , i have 4 amps 320w RMS each , they are way better than any manual potentiometer, eliminates the pots going bad due to dust and would not wear and tear
Thanks for the great video, this was exactly what I was looking for. I still have some questions according the wiring, because my digital potentiometer started to burn, maybe the chip was badly soldered. Wiring would be: Pin 14: external Power Supply (20V) (GND to Arduino) Pin 13: connected to the place of the analog Potentiometer from Boost Converter 1st Pin 12: connected to the place of the analog Potentiometer from Boost Converter (wiper) 2nd Pin 11: connected to the place of the analog Potentiometer from Boost Converter 3rd Pin 10: connected to GND of the Arduino Pin 09: connected to GND of the Arduino Pin 08. connected to GND of the Arduino Thanks for your help!
I also saw some variations of potentiometers which are mechanical and also digital, the position of the contact is controlled by magnets, and are super simple to work with and don't have any resolution problem. But you have to change the contacts once in a year.
I'm wondering why they would put 100 resistors in a chip, when I would assume one could easily work with power-of-two increasing resistors, and enabling them in parallel to efficiently create the desired resistance. With only 10 resistors you could have 1024 steps.
Because of the tolerance available on the resistors. If the the biggest resistor is 512 times as big as the smallest, then it would need much better than 0.1% accuracy to maintain linearity when it is switched in and out. It's much easier to make 100 identical resistors with a fairly close tolerance, which would ensure that each step increases by nearly the same amount.
@@fryode Reading the datasheet, I'm fairly sure those are writes to persistant memory, and are not required if you program the chip on power-up with a few commands. The spec sheets says you can do unlimited adjustments.
Like Rex said, there are those topologies available indeed, also R 2R approaches, but meanwhile practical for low resolution and precision, it starts to get insanely hard to make up the hill. I've made myself an ADC for a PIC16F628A which doesn't have an internal ADC. Made a 6 bit R 2R one, chose one of the ports and made that one control the resistors in successive approximation (Output most significant bit, compare, store, next most significant, repeat). Worked like a charm, had pretty decent resistors at hand, and hand measured them all to make the pairs and individuals match perfectly. Still not like I would trust it to any high precision application, and that's just 64 levels. On ICs they're usually laser trimmed on the die.
I knew I had to watch this the moment I saw a QSKJ boost converter board in the thumbnail. I adapted one to take the 18VDC nominal from my Ryobi battery packs and boost it to 20V to run my Thinkpad. Since I was able to order two for like a dollar more than one would have cost me, I have a spare and I've been thinking of all the different stuff I can do with it. Doing things digitally is a lot more interesting than analog, I have to admit.
Thats funny, i buyed a 10k DigiPoti 3 Days ago to replace a Power Supply Poti... and now Great Scott made a video about it... 😅 i would say, perfect timing... 😎👌
If you put a comparator (opamp) between the feedback voltage and the PWM chip, then you can work with 5V or so. Then put the Digital Potentiometer with another 10k resistor to form voltage divider, and add that to the other opamp input. So the Boost Convertor's 0-25V becomes 0-5V, and you can adjust the other voltage divider it's being compared against. As the PWM FB pin expects something like 1.2V before it triggers, you need a 3rd voltage divider on the Opamp output.
If you can low pass filter and don’t mind the minimum resistance of 1% you can use a resistor in series with a mosfet. Drive the mosfet with a 1 to 100 PWM and you have a variable resistor. Not quite a potentiometer but able to handle more power. And it uses only 1 pin, this is a PWM to resistance converter circuit. Of course if you need a variable voltage for your circuit and are using a pot, then just use a PWM voltage directly, most power supply circuits will need this.
there are two solutions I thought before as alternative. I use a servo motor to drive a pot. the next one is drive a optocoupler with pwm and a filter capacitor. the output side of optocoupler can be act like a resistor, but down side is not linear.
I used a dual digital pot to replace the joystick input on a wheelchair controller. Was a great way to get a digital interface, while keeping the wheelchair's insanely good control systems.
Debating whether it's worth modifying a brushed motor controller to take a direct PWM signal from my arduino, or just replace the potentiometer with a digital one like this. This video was very well timed. I might actually go with a digital potentiometer seeing as all I'd have to do is attach a JST connector to the output wires of the digital potentiometer and replace the mechanical one.
Project: Modify a buck converter so it will keep the input voltage at or above 17V (solarpanel mpp point) and the output at or below 13.8V. Do this with a standard "adjustable volt and amp" converter by using the "amp limiter" opamp in inverted mode for input volts while leaving the output as is.
I do not know if I am too early or if the algorithm has given up on eductaional videos or if the view counter is broken. Since the view count is lower than usual. Great Video As Always!
Holy hell. Finally the missing piece to make my voltage booster to battery voltage trailer work. I have to boost a 21700 to hold 4.2v till 4v then trail them down together to get the full 5000mha capacity of my battery with working battery gauge. The reason for such a weird use is because I'm making a custom battery for my drone and have to use the oem BMS so I can get battery level and not crash my $4000 drone. The way it's built, the battery is only at 50% to be considered dead. Lots of capacity missing
Thanks for the great content. Always enjoy your stuff. Sorry I can't support you on Patreon but I'm a minimum wage worker and can barely afford the rent as it is. Best I can do is like and sub.
I am currently using your constant current load design to build a constant current discharge battery tester with a digital potentiometer and a rotatary encoder instead of the original potentiometer so the arduino can keep the current as precise as possible (with the normal potentiometer I have the problem that for idk reasons the current slightly changes from time to time, leading to unclean results)
"Destroyed itself" makes it sound like the chip was turning up its own voltage. :-)
Great(Scott!) coverage of the topic.
They do this around me ;-)
GreatScott to the pot: Stop hitting yourself, why are you hitting yourself
@@MetalheadAndNerd TH-cam only allows it's own links usually...
That being said I remember searching some motors on Aliexpress and finding one with I think 100W of "VIOLENCE!"
@@MetalheadAndNerd Found them, damn I've seen those tiny "beasts" in PS1 counterfeit controller vibration but to think they would have self destruction and even household blender capabilities is impressive!
I don't know if even more crazy stuff popped out when translating to Portuguese, but it's really funny to search for suction cups in BR-Aliexpress, they get translated from "sucker" to the cuss word meaning, a moron, instead of a suction cup.
Also crimping dies that it understands as death
Your introduction to the IC chips are getting better day by day. I really loved this introduction!
Glad to hear it!
@@greatscottlab also i learnt Li ion pack making from you so thanks a lot from India!
How about shooting a vlog inside a lithium ion cell factory!
You don't have to remove the original potentiometer of these buck converters. You just need to "inject" some extra voltage to the shorted pins (pin 2 and 3) of the onboard potentiometer through a resistor and by this you can trick the buck controller chip and control it perfectly. I did this already quite some time ago using a MCP4725 12-bit DAC and an SZBK07 buck converter. This DAC has higher resolution than those digital potmeters, so you can control the voltage on a really fine scale.
Yeah, just check the voltage range on each potentiometer pin, set potentiometer to highest resistance and solder onto the appropriate pin without removing the potentiometer.
@@DavidMishchenko Yes, that is what I did. I knew the maximum voltage because of the maximum output voltage of the SZBK07 buck converter. Then I also knew my maximum controlling voltage and based on this I picked a resistor which through I fed the potentiometer.
Do you guys have links to resources for this
@@Fleurlean4 Yeah, visit my channel and website.
@@Rothammel1 I am happy to help!
Please never stop making your videos. They are the best.
One great thing about (re)watching older videos... hearing the classic theme music!!
I have been thinking about doing this with a boost converter for a while, thanks for doing all the research for me!
Happy to help!
"let's get started" has been ripped off by many other diy channels on yt... You're still the original 🍻
Thanks ;-)
This was the video I was looking for! Thanks for doing all the research. I always wanted to control the brightness of a led with an arduino but never was able to, because I didn't knew how to use a digital potentiometer. Now I can finish my project🎉
Dude, I spent like four MONTHS trying to find some way of doing this a while back.... And there is just a nice little IC... I mean, of COURSE there is... Sigh...
Thank you!!!
This is excellent man! Definitely an awesome ic to consider using 👊🏻
Thanks👍 Definitely✌
Did he just prevent some university students from spending time building a custom microcontroller compatible buck-boost converter and showed a simple hack to convert any buck/boost converter that can be controlled by an Arduino?!?!
YES, HE DID!!!
Great video as always!!
During your video of an Arduino based FM radio, you used one. But didn't understand how it actually works and I am ready to change my power supply on by Automatic Light System.
I already did a much smarter control with a MCP4725 12-bit DAC a year ago... You don't even need to remove/replace the original potentiometer. I even built an automatic digital thermostat which can maintain a Peltier cooler's temperature within a really tight range.
@@CuriousScientist Sound very interesting! Could you share how you did it?
@@lennard7123 Just check my channel and look for the SZBK07 playlist. I shared everything: wiring schematics, Arduino source code...etc.
@@CuriousScientist Thank you very much! I will definitely check it out :)
Scott mentions in the video that these digital potentiometers can be used to control the volume of audio circuits. However, it is not really recommended to use an ordinary digital pot for such a task, as these usually make a "zipper like" sound with audio signals when you move the wiper up or down. For this kind of application you should use a specialised audio digital potentiometer with built-in zero crossing detection, like Dallas Semiconductor's DS1801 or DS1802. With these you can save some headache for yourself.
There's programmable gain amplifiers like the PGA4311 specifically made for that task. Also, some DACs and amplifiers have volume adjustment built in.
I could really have used this video 3-4 years ago for a project. I will keep it in mind for the next project, thanks.
Another perfectly timed video. Been working on driving a panel using ESP, but I couldn't find a good digipot that wouldn't go open-circuit between switching resistances! I blew up a boost board already by using a potentiometer that had a gap or internal problem!
Thanks great Scott!
A few years ago i took apart a radio that had an electronically controlled volume potentiometer (if i'm not mistaken, i think it was volume). This was a radio from the 90's. Their solution to this problem? The potentiometer had a dc motor stuck to its back, if the radio deemed the volume too low, it just turned its own knob with the motor to crank the volume. Beautifully simple and complex at the same time.
This control scheme is still in place for some audio products because digipots can have audible clicking as they internally switch between resistors if they're in the signal path.
Just a circuit idea I had recently: I think its possible to do the same thing (µC Control of such a DC/DC convertors output voltage) without the "exotic" part just by altering the feedback path a bit.
Use a simple DAC (PWM pin is fine), Filter & Buffer that voltage using an opamp (a "rail-to-rail" one might be necessary), select the components around the opamp such that the resulting µC controllable voltage ranges from 0V up to the regulation point voltage specific to the DC/DC converter (= the voltage at the wiper of the DC adjustment pot which is kept constant by the DC/DC's own control IC) to get the maximum resolution in the end.
Now adjust the voltage pot of the unmodified DC/DC to the maximum output voltage you want to be able to get out of the system. Then just keep this voltage pot in the circuit - but replace the "GND" point of the feedback circuit's resistive divider with the µC controlled DAC Voltage described above. Now you should have linear (!) control of the DC/DC's output voltage by setting the DAC - note however that the control will be reversed, a high DAC voltage results in a low DC/DC output and vice versa.
Disclaimer: I have not tried this yet, but I think this should work and if so it's quite an elegant hack I think.
Ok. Nice video. But I didn’t understand it.
I’m building a variable speed controller for a 4.25 hp, 130 VDC treadmill motor. I’m using a SCR, bridge rectifier, DC choke to drive the motor.
I have a potentiometer on my SCR. I turned it slowly until the motor started turning. Then I measured the resistance (301 k). So I broke that down by using a 275k and 30k pots. One for rough rpm adjustment and one for fine.
Would it be better to use a digital pot on this? If so, what kind do I get and how to hook it up.
Your help is appreciated.
Thanks,
Paul
Great summary! In regards to code, I write a library with example for the i2c version (MCP45HVX1) a few years back, it should turn up (never thought it would be relvant...).
I was eagerly waiting for this
Previous Sunday also I was waiting for notification
But this sunday it has come
Awesome video
Thanks for watching :-)
I remember reading it's not that easy to use a digital pot for audio applications, at least not as a direct replacement for a mechanical pot. The reason is you get pops on the audio every time you adjust it up/down and it requires some complications to the circuit so it only adjusts at zero-crossing....would be great to see a project like this though :)
Yours channel is very informative, always learn something new. The best thing is, its not overly complicated, any useful topics only, and not too much kidy like simple arduino code to control PWM, it goes down to the basic electronics concepts, without focusing too much on online code.
Your voice is crystal clear and beautiful ❤❤❤
05:10 - Resolution could be increased by a factor of 100 by utilizing 3 potentiometers. The third would be connected between both wipers of P1 and P2. The total resolution could be calculated with a simple formula. Total Resolution = init.resolution power 2.
Can you read my mind? I was looking for something like this not even two days ago. You really save me alot of trouble here :D
Nice video, as always. One interesting application I used a digital pot for was to control an analog filter before an ADC. In this way it is possible to change the low pass frequency depending on the sampling rate.
i love these things. i built a personal project that controls my minidsp and my speaker amp, as well as turns on my pc. the minidsp supports i2c control, buti decided to simply use a digital pot and use the arduino to control it. i was going to do the same for the amp, but unfortunately, the pot actually had audio channels going through it, so i ended up using a servo to physically control it with the arduino.
so far, it has worked well and only once did it lock up, but a reset solved the problem
Motorized potentiometors are an elegant solution if you want to keep some of the properties of having a pot
Thanks!
Thanks for the support :-)
Pretty impressive little IC, dude! 😃
It can be useful in so many cases! Fantastic!
Thanks for the video!!!
Stay safe and creative there! 🖖😊
Thanks for watching!
Perfect.. this is what I was looking for. I will use this digital potentiometer with regular buck converter boards to make my own low-cost Arduino-controlled smart MPPT solar charge controller. Thank you for the video.
It's such a great way to control the led driver, especially if you want to directly control it using a controller or wirelessly
i was looking for this thing only danke!
Awesome video as always!!!
Thanks for the visit
Good timing as I just bought a few to use in a project!
Coupled with the TTP223 touch control chip you have a very flash volume control indeed !.....cheers.
Sweet! Luckly i stayed up to 0:00a.m. just to watch your video~~~
Hope it was worth it :-)
This video probably just saved me three weeks of circuit development.
Really a good video that I have ever seen great Scott you are the best youtuber I ever I watch your video almost 3 year . Really you are a good engineer . And I always appreciate to make this type of videos projects and other thing as.
And and this pwm digital are best for degitily controling features
OMG. I didnt know digital potentiometer existed. That is awsome!
Very nice video also GreatScott! I have to wake till this time (now it's 23h16m in my country) to just watch you!
I hope it was worth it :-)
Very handy device! Thank you for bringing us such cool devices.
The High Voltage version MCP41HV51 is available at different large electronics suppliers (i.e. Digikey, Farnell, Reichelt) for a much cheaper price.
That is only the ic tho
Good video bro ❤️👍 I am from Kerala India 🇮🇳
Thanks from Texas Scott.
This is soo cool. I'm definitely trying this.
Since the first time i learned about digital potentiometers i haven't given much thought to it till now. Cool video ideas loading.
I had the same challenge to solve some time ago = controlling remotely CV CC modules.
I solved it using an LDR (most have R.dark > 1MΩ) and adjusting the trimpot for Max desired Voltage or Current. Using an LED and sealing it a black shrink tube with the LDR and some epoxi glue it can use a simple PWM on the LED, enabling ~ 1000 steps if choosing an appropriate LED current for a strong LDR Excitation, allowing a wider dynamic span. And measuring the actual voltage with the Arduino, makes a closed loop and corrects the optical set point.
There are also TWO useful characteristic of the LDR in parallel with the trimpot: [1] The Voltage/Current never passes the Maximum limit adjusted by the trimpot. [2] The “Attack” time (go to light) is shorter than the “Decay” to dark time = this means the voltage (or current) could be decreased faster (protecting quickly) than when one resumes the LDR as dark, than can take hundreds of ms.
But it was nice to know more about Digital Potentiometers and see it being a solution - nowadays still more expensive and complicated, but already much faster than a LDR for sure.
Thanks for sharing.
I was just looking for this for some of my projects a few days ago, thanks!
If somebody needs ever higher voltages, look up motor-driven potentiometers. They are also used in some audio equipment as a very fun way to control sound volume.
Excellent work and a great project... (from Great Scott ! I know I mentioned that before, but I couldn't resist... ;-) )
Very cool! This immediately brings to mind a scene from Star Trek - "...computer decrease illumination by 50%"
This was just what I was looking for. Thanks!
Thanks for the great video, Great Scott! I didn’t even know these things existed… I already came up with a few ideas!
Love your videos! Keep em coming!
I hadn't really thought about digital potentiometers, so this was a good topic for me!
Now add a mechanical potentiometer to your microcontroller's ADC, then use that value to set the resistance value on the digital potentiometer, so you still have the feel of the rotary switch! 😛😛
This man is just awesome
Oh stop it ;-)
Excellent video as always.
I like the fact it was so useful to know this information
Great :-)
I love your vids❤
Very good content 👍
Thanks :-)
I waited a long time for this video :D
I hope the wait was worth it :-)
Great Scott is what got me interested in electronics and I'm glad he still does great videos ❤️
Very Good & Relevant video that we can put to proper use. Thank you!
woooow.amazing video and nice explanation
I have to LOL at this. I literally bought a X9C103S for this exact purpose of replacing the POT on a boost converter. Except I have been too lazy to get it done. Have the POT working with an Arduino but thats about it. My idea was more to use it on the CC pot of a CC/CV converter to make a DIY MPPT solar converter to charge a 29V (7S) lithium system. From testing it seems the voltage on the CC POT is not very high so V would not be an issue as it was on the CV POT. Anyway great video as always!
I have been looking at these components for a while as I could use them, but I'm amazed at the amount of money they dare to ask for such a simple part: An X9C103 sells for about €5. At those prices, I'd rather use an old fashioned transistor as variable resistor and say "bye bye". It's not ideal: Because transistors are designed to amplify (i.e. low resistance) and you want to create resistance, you are forced to send very tiny currents through them to get reasonable resistances and you need to calibrate the microcontroller to compensate against manufacturing tolerances of your transistor, but it works. Transistor, two resistors and a ceramic cap cost about €0.05, that's 100 times cheaper and worth the slight annoyance.
They are quite complex compared to other components. imagine a poti, but instead of a wiper you have 100 or more small transistors, tapping certain points on it. You also need memory and stuff to store the position. That's why they are nearly never used in consumer electronics.
A mosfet makes a much better variable resistor, but it has to be calibrated individually if there's no way to get feedback. The convenience of these chips is that they have internal non-volatile memory, which means that you can store a value and it will return to the same value the next time it is powered on.
@@RexxSchneider I have experimented with MOSFETs. My findings were that in order to get reasonable restance (I was looking at a range of 500-1000 ohm), the voltage at the gate had to be within in a really narrow range. As my microcontroller was generating that voltage with PWM + RC filter, there is always some voltage instability and this gave me unstable resistance. I had less trouble to get the required restistances with a traditional resistor, I used a BC547 and a 56kOhm resistor in front of the base did allow me to get resistances in the required range.
@@danielmantione I'm amazed that the BC547 gave useable resistances in the 500-1000 ohm range. That sort of resistance is only available at the "knee" of the Vce - Ic curves, so you're stuck with a Vce typically less than 1V if your base current is around 50 microamps as you suggest, and it's highly dependant on the Hfe which can be anywhere between 100 and 800 for a BC547. Getting the required resistance with a mosfet is also tricky because of the variability of the gate threshold voltage, but the source-drain resistance in the linear region doesn't change with Vds for a mosfet, unlike a bipolar junction transistor.
Adding these to my audio amplifiers , i have 4 amps 320w RMS each , they are way better than any manual potentiometer, eliminates the pots going bad due to dust and would not wear and tear
Love your videos Happy Thanksgiving
Thanks for the great video, this was exactly what I was looking for. I still have some questions according the wiring, because my digital potentiometer started to burn, maybe the chip was badly soldered.
Wiring would be:
Pin 14: external Power Supply (20V) (GND to Arduino)
Pin 13: connected to the place of the analog Potentiometer from Boost Converter 1st
Pin 12: connected to the place of the analog Potentiometer from Boost Converter (wiper) 2nd
Pin 11: connected to the place of the analog Potentiometer from Boost Converter 3rd
Pin 10: connected to GND of the Arduino
Pin 09: connected to GND of the Arduino
Pin 08. connected to GND of the Arduino
Thanks for your help!
Great video as always, thank you
Haash after a long time found this interesting..🔥
Just what I needed thank you
I also saw some variations of potentiometers which are mechanical and also digital, the position of the contact is controlled by magnets, and are super simple to work with and don't have any resolution problem. But you have to change the contacts once in a year.
I'm wondering why they would put 100 resistors in a chip, when I would assume one could easily work with power-of-two increasing resistors, and enabling them in parallel to efficiently create the desired resistance. With only 10 resistors you could have 1024 steps.
Because of the tolerance available on the resistors. If the the biggest resistor is 512 times as big as the smallest, then it would need much better than 0.1% accuracy to maintain linearity when it is switched in and out. It's much easier to make 100 identical resistors with a fairly close tolerance, which would ensure that each step increases by nearly the same amount.
They are it comes down to design and purpose look up AD5292
@@joefuentes2977 Only 20-time programmable? Damn.
@@fryode Reading the datasheet, I'm fairly sure those are writes to persistant memory, and are not required if you program the chip on power-up with a few commands. The spec sheets says you can do unlimited adjustments.
Like Rex said, there are those topologies available indeed, also R 2R approaches, but meanwhile practical for low resolution and precision, it starts to get insanely hard to make up the hill. I've made myself an ADC for a PIC16F628A which doesn't have an internal ADC. Made a 6 bit R 2R one, chose one of the ports and made that one control the resistors in successive approximation (Output most significant bit, compare, store, next most significant, repeat). Worked like a charm, had pretty decent resistors at hand, and hand measured them all to make the pairs and individuals match perfectly. Still not like I would trust it to any high precision application, and that's just 64 levels. On ICs they're usually laser trimmed on the die.
Dude! This helps me so much! I understand it much beter, cause of you! Thx alot :D
I knew I had to watch this the moment I saw a QSKJ boost converter board in the thumbnail. I adapted one to take the 18VDC nominal from my Ryobi battery packs and boost it to 20V to run my Thinkpad. Since I was able to order two for like a dollar more than one would have cost me, I have a spare and I've been thinking of all the different stuff I can do with it. Doing things digitally is a lot more interesting than analog, I have to admit.
Thats funny, i buyed a 10k DigiPoti 3 Days ago to replace a Power Supply Poti... and now Great Scott made a video about it... 😅 i would say, perfect timing... 😎👌
If you put a comparator (opamp) between the feedback voltage and the PWM chip, then you can work with 5V or so.
Then put the Digital Potentiometer with another 10k resistor to form voltage divider, and add that to the other opamp input.
So the Boost Convertor's 0-25V becomes 0-5V, and you can adjust the other voltage divider it's being compared against.
As the PWM FB pin expects something like 1.2V before it triggers, you need a 3rd voltage divider on the Opamp output.
GreatScott is becoming much much better and informative than Electronoob
I actually was wanting for something like this to exist, but never knew it actually did (:
Now you know ;-)
If you can low pass filter and don’t mind the minimum resistance of 1% you can use a resistor in series with a mosfet. Drive the mosfet with a 1 to 100 PWM and you have a variable resistor. Not quite a potentiometer but able to handle more power. And it uses only 1 pin, this is a PWM to resistance converter circuit.
Of course if you need a variable voltage for your circuit and are using a pot, then just use a PWM voltage directly, most power supply circuits will need this.
Thanks for this great tutorial! Very helpfull!
there are two solutions I thought before as alternative. I use a servo motor to drive a pot. the next one is drive a optocoupler with pwm and a filter capacitor. the output side of optocoupler can be act like a resistor, but down side is not linear.
Nice video man 😌
Even if comes late, it's worth the wait
Appreciate it!
I was waiting for it 😁❤️
Hope you enjoyed it :-)
Amazing Video as Always! I will have to try them out!
Please do!
I used a dual digital pot to replace the joystick input on a wheelchair controller. Was a great way to get a digital interface, while keeping the wheelchair's insanely good control systems.
Big thumb up for you and your videos!!!
Debating whether it's worth modifying a brushed motor controller to take a direct PWM signal from my arduino, or just replace the potentiometer with a digital one like this. This video was very well timed. I might actually go with a digital potentiometer seeing as all I'd have to do is attach a JST connector to the output wires of the digital potentiometer and replace the mechanical one.
Will the digipot be able to provide enough current to your motor, or is the existing pot attached to a control circuit?
@@Enigma758 the pot is part of a control circuit
I did not know about the HV variants of the MCP41xx chips, which is precisely what I need. Thanks.
Exactly this is what I made weeks ago :D
It can be a pretty decent digitally adjustable portable power supply with current module for tiny projects.
Great ❤️🔥I think you used a digital pot in your FM radio project.
No. I have not used a digital potentiometer so far
@@greatscottlab you did
Oh boy....it seems like it. 5 years is quite a long time.
@@greatscottlab Yupp It is😄. Thank you for all of your great memorable videos of Electronics! 🔥🔥🔥
Project:
Modify a buck converter so it will keep the input voltage at or above 17V (solarpanel mpp point) and the output at or below 13.8V.
Do this with a standard "adjustable volt and amp" converter by using the "amp limiter" opamp in inverted mode for input volts while leaving the output as is.
is it a coincidence! that i just received my order of the x9c103 and 104 and your video came out.
Amazing Video
Thanks!
Nice scoot Salam from Indonesia
I do not know if I am too early or if the algorithm has given up on eductaional videos or if the view counter is broken. Since the view count is lower than usual. Great Video As Always!
I was looking for this for so long! I am planning to use this replace the knobs on my power supply since they seem to drift a lot.
Great Great 👍👍👍 Scott !!! absolutely interesting video
Glad you enjoyed it
Holy hell. Finally the missing piece to make my voltage booster to battery voltage trailer work. I have to boost a 21700 to hold 4.2v till 4v then trail them down together to get the full 5000mha capacity of my battery with working battery gauge. The reason for such a weird use is because I'm making a custom battery for my drone and have to use the oem BMS so I can get battery level and not crash my $4000 drone. The way it's built, the battery is only at 50% to be considered dead. Lots of capacity missing
Thanks for the great content. Always enjoy your stuff. Sorry I can't support you on Patreon but I'm a minimum wage worker and can barely afford the rent as it is. Best I can do is like and sub.
Using the voltage divider and mosfets can be a great solution for a 2 or 3 steps using discrete components.
I love your videos!
I am currently using your constant current load design to build a constant current discharge battery tester with a digital potentiometer and a rotatary encoder instead of the original potentiometer so the arduino can keep the current as precise as possible (with the normal potentiometer I have the problem that for idk reasons the current slightly changes from time to time, leading to unclean results)