Transistor Curve Tracer
Transistor Curve Tracer
by Peter Balch
I've always wanted a transistor curve tracer. It's the best way of understanding what a device does.Having built
and used this one, I finally understand the difference between the various flavours of FET.
matching transistors
measuring the gain of bipolar transistors
measuring the threshold of MOSFETs
measuring the cutoff of JFETs
measuring the forward voltage of diodes
measuring the breakdown voltage of Zeners
and so on.
I was very impressed when I bought one of the wonderful LCR-T4 testers by Markus Frejek and others but I
wanted it to tell me more about the components so I started to design my own tester.
I began by using the same screen as the LCR-T4 but it doesn't have a high enough resolution so I changed to a
320x240 2.8" LCD. It happens to be a colour touch-screen which is nice. The curve tracer runs on an Arduino Pro
Mini 5V Atmega328p 16MHz and is powered by 4 AA cells.
When you switch on the curve tracer, the main menu shown at the top of the screen.
screen is displayed.
For a JFET it plots Vds (the voltage between the
Select the kind of device by touching one of "PNP drain and source) versus the current flowing into the
NPN", "MOSFET" or "JFET". You can test diodes in drain. A line is drawn for each different gate voltage -
the "PNP NPN" mode. 0V, 1V, 2V, etc. With depletion JFETs, current flows
when the gate voltage is equal to the source voltage.
Put the Device Under Test (DUT) into the ZIF socket. As the gate voltage is changed to be further from the
The menu screen shows you which pins to use. drain voltage, the JFET turns off. The cut-off
PNPs, p-channel MOSFETS and n-channel JFETS threshold of the FET is shown at the top of the
go in the left side of the socket. NPNs, n-channel screen.
MOSFETS and p-channel JFETS go in the right side
of the socket. Close the ZIF socket. The most interesting part of a MOSFET or JFET
curve is around the turn-on or cut-off voltage plus or
After a second or so, the tester will realise that it has minus a few hundred mV. In the main menu, touch
a component and will start to draw the curves. the Setup button and the Setup screen will be shown.
You can select the minimum and maximum gate
For a PNP or NPN transistor it plots Vce (the voltage voltage: more curves will be drawn in that region.
between the collector and emitter) versus the current
flowing into the collector. A line is drawn for each For a PNP or NPN transistor, the Setup screen
different base current - e.g. 0uA, 50uA, 100uA, etc. allows you to select the minimum and maximum base
The gain of the transistor is shown at the top of the current
screen.
With diodes, you can see the forward voltage and
For a MOSFET it plots Vds (the voltage between the with Zeners, the reverse breakdown voltage. In the
drain and source) versus the current flowing into the image above, I've combined the curves of several
drain. A line is drawn for each different gate voltage - diodes.
0V, 1V, 2V, etc. The turn-on threshold of the FET is
This is repeated for each base current. The base A p-channel depletion JFET is treated similarly but
current is generated by a second 0V-to-12V DAC and the 0-to-12V values are all inverted.
a 27k resistor. The DAC produces 0V, 1.35V (50uA),
2.7V (100uA), 4.05V (150uA), etc. (Actually, the (The curve tracer does not specifically deal with
voltage has to be a little higher because of Vbe - depletion MOSFETs or enhancement JFETs but you
assumed to be 0.7V.) could treat them as depletion JFETs and
enhancement MOSFETs.)
For a PNP transistor, the emitter is connected to 12V
and the collector is connected to a 100ohm load Once it has completed the graph the curve tracer
resistor and then to a voltage that slowly decreases calculates the gain, threshold or cut-off of the
from 12V to 0V. The base current DAC steps down transistor.
from 12V.
For bipolar transistors, the Arduino looks at the
An n-channel enhancement MOSFET is similar to an average spacing of the horizontal lines of the curves.
NPN. The source is connected to 0V, the load As it draws the curve for base current, it notes the
resistor is connected to the drain and to a voltage collector current when Vce is equal to 2V. The
sweeping from 0V to 12V. The DAC that was change in collector current is divided by the change in
controlling the base current now controls the gate base current to give the gain. The gain of a bipolar is
voltage and steps 0V, 1V, 2V, etc. a vague concept. It depends on how you measure it.
No two makes of multimeter will give the same
A p-channel enhancement MOSFET is similar to an answer. Generally, all you're asking is "is the gain
PNP. The source is connected to 12V, the load high?" or "are these two transistors the same?".
resistor is connected to the drain and to a voltage
sweeping from 12V to 0V. The gate voltage steps For MOSFETs, the Arduino measures the turn-on
12V, 11V, 10V, etc. threshold. It sets the load voltage to 6V then gradually
increases Vgs until the current through the load
An n-channel depletion JFET is slightly more difficult. exceeds 5mA.
You would normally imagine the source connected to
0V, the drain connected to a varying positive voltage For JFETs, the Arduino measures the cut-off voltage.
and the gate connected to a varying negative voltage. It sets the load voltage to 6V then gradually increases
A JFET normally conducts and is turned off by a (negative) Vgs until the current through the load is
negative gate voltage. less than 1mA.
Here is a brief description of the circuit. A more complete description is in the attached RTF file.
The circuit must convert make these different voltages from the 4 AA cells.
The Arduino is connected to a 2-channel DAC to produce the various test voltages. (I tried using the Arduino PWM
as a DAC but it was too noisy.)
The DAC produces voltages in the range 0V to 4.096V. These are converted into 0V to 12V by op-amps. I couldn't
find any through-hole rail to rail op-amps that can source/sink 50mA, so I used an LM358. The output of an LM358
op-amp cannot go higher than 1.5V below its supply voltage (i.e. 10.5V). But we need the full range of 0-12V.
The advantage is that this home-made "open-collector op-amp" output can go right up to 12V. Feedback resistors
around the op-amp amplify the 0V to 4V from the DAC to 0V to 12V.
The voltages at the Device-Under-Test (DUT) vary between 0V and 12V. The Arduino ADCs are limited to 0V to
5V. Potential dividers do the conversion.
Between the Arduino and the LCD are potential dividers that drop 5V to 3V. The LCD, the touch screen and the
DAC are controlled by the SPI bus.
The curve tracer is powered from 4 AA cells which give 6.5V when new and can be used down to around 5.3V.
The 6V from the cells is dropped to 5V with a very low dropout regulator - a HT7550 (if you don't have one then a
5V zener and a 22ohm resistor is not too much worse). The current consumption of the 5V supply is around 26mA.
The 6V from the cells is dropped to 3.3V with a low-dropout regulator - the HT7533. The current consumption of
the 3.3V supply is around 42mA. (A standard 78L33 would work but it has a 2V dropout so you'd have to throw
away your AA cells sooner.)
The 6V from the cells is boosted to 12V with a SMPS (Switched Mode Power Supply). I simply bought a module
from eBay. I had real trouble finding a decent converter. The bottom line is, don't use an XL6009 converter, it's an
absolute menace. As the battery goes flat and falls below 4V the XL6009 goes crazy and produces up to 50V
which would fry everything. The good one I used is:
https://www.ebay.co.uk/itm/Boost-Voltage-Regulator-Converter-Step-up-Power-Supply-DC-3-3V-3-7V-5V-6V-to-
12V/272666687043?
hash=item3f7c337643%3Ag%3AwsMAAOSw7GRZE9um&_sacat=0&_nkw=DC+3.3V+3.7V+5V+6V+to+12V+Ste
p-up+Power+Supply+Boost+Voltage+Regulator+Converter&_from=R40&rt=nc&_trksid=m570.l1313
It's tiny and is about 80% efficient. Its input current consumption is around 5mA when waiting for a DUT to be
inserted and momentarily up to 160mA when drawing the curves.
As the AA cells are discharged the voltages vary, the software compensates by using reference voltages. The
Arduino measures the 12V supply. The Arduino ADC uses its "5V" supply as a reference voltage but that "5V" is
calibrated accurately against the Arduino's internal 1.1V reference voltage. The DAC has an accurate internal
reference voltage.
I like the way the LCR-T4 has a button to turn it on and turns itself off automatically with a timeout. Unfortunately,
the circuit introduces a voltage drop which I can't afford when powering from 4 AA cells. Even re-designing the
circuit to use a FET wasn't sufficient. So I'm using a simple on/off switch.
Download
https://www.instructables.com/ORIG/FJA/H3N3/JL6UZT5N/FJAH3N3JL6UZT5N.pdf
…
The Arduino sketch is attached here. Compile and base and load currents off. It then tests once a
upload it to the Pro Mini in the usual way. There are second until the component is unplugged. It knows
lots of descriptions of how to upload programs on the the component is unplugged because the load current
web and in other Instructables. falls to zero.
The sketch starts by drawing the main menu then The ILI9341 LCD is driven by my own library called
waits for you to insert a component or touch one of "SimpleILI9341". The library is attached here. It has a
the buttons (or send a command from the PC). It tests standard set of drawing commands very similar to all
for component insertion once a second. such libraries. Its advantages over other libraries are
that it works (some don't!) and it shares the SPI bus
It knows you have inserted a component because, politely with other devices. Some of the "fast" libraries
with the base/gate voltage set to half way (DAC = you can download use special timing loops and are
128) and the load resistor voltage set to 0V or 12V, a upset when other, maye slower, devices are used on
current of several mA flows through one or other of the same bus. It's written in plain C and so has
the load resistors. It knows when the device is a smaller overheads than some libraries. A Windows
diode because changing the base/gate voltage does program is attached which allows you to make your
not change the load current. own fonts and icons.
Download
https://www.instructables.com/ORIG/F80/OBXC/JJT6TALL/F80OBXCJJT6TALL.zip
…
Download
https://www.instructables.com/ORIG/F5L/SDXK/JL6UXINO/F5LSDXKJL6UXINO.ino
…
Download
https://www.instructables.com/ORIG/FDI/VFB5/JUIND4VQ/FDIVFB5JUIND4VQ.hex
…
The curve tracer can communicate with a PC via a serial link (9600bps, 8-bit, no parity). You will need a suitable
USB-to-serial convertor.
When the curves are traced following one of the commands, the results of the curve are transmitted back to the
PC. The format is:
The values sent to the PC are the raw measured values. The Arduino smooths the values before drawing them by
avreraging; you should do the same.
When the PC sends an "X" command, The ADC values are returned as integers:
"x (p),(q),(r),(s),(t),(u)"
(p) the voltage at the load resistor of the PNP DUT
(q) the voltage at the collector of the PNP DUT
(r) the voltage at the load resistor of the NPN DUT
(s) the voltage at the collector of the NPN DUT
(t) the voltage of the "12V" supply
(u) the voltage of the "5V" supply in mV
The curve tracer only sends data to the PC after it has received a command as sending data slows down the scan.
It also no longer tests for the presence/absence of a component. The only way to turn off the curve tracer is to
send an 'O' command (or to remove the battery).
A Windows program is attached which demonstrates sending commands to the curve tracer.
Download
https://www.instructables.com/ORIG/FCF/0NK7/JJZN5QGI/FCF0NK7JJZN5QGI.zip
…
Here are the major components that you'll probably need to buy:
https://www.ebay.co.uk/itm/2-8-TFT-LCD-Display-Touch-Panel-SPI-Serial-ILI9341-5V-3-3V-STM32/20200418962
8?hash=item2f086351bc:g:5TsAAOSwp1RZfIO5
https://www.ebay.co.uk/itm/DC-3-3V-3-7V-5V-6V-to-12V-Step-up-Power-Supply-Boost-Voltage-Regulator-Convert
er/192271588572?hash=item2cc4479cdc%3Ag%3AJsUAAOSw8IJZinGw&_sacat=0&_nkw=DC-3-3V-3-7V-5V-6
V-to-12V-Step-up-Power-Supply-Boost-Voltage-Regulator-Converter&_from=R40&rt=nc&_trksid=m570.l1313
BC639 (3 off)
100nF (7 off)
10uF (2 off)
1k (2 off)
2k2 (5 off)
You will need the usual electronics tools - soldering iron, cutters, solder, odd pieces of wire, etc. - and a USB-to-
serial convertor to program the Arduino.
The curve tracer is built on stripboard. If you're the sort of person who wants a curve tracer, you will already know
how to lay out stripboard.
The layout I used is shown above. Cyan lines are copper on the back of the stripboard. Red lines are links on the
component side or are the extra-long leads of the component. Curved Red lines are flexible wire. Dark blue circles
are breaks in the stripboard.
I built it on two boards, each 3.7" by 3.4". One board contains the display and the tester circuit; the other board has
the battery holder and the 3.3V, 5V and 12V supplies. I kept the low-voltage ("5V") and high-voltage ("12V") parts
of the tester circuit separate with only high-value resistors crossing the frontier.
The two boards and the display form a triple-decker sandwich held together with M2 screws. I cut lengths of plastic
tube to act as spacers or you could use ballpoin pen tubes, etc.
I only connected the Arduino Mini pins that I needed and only the ones on the sides (not at the top and bottom
ends of the Mini PCB). I used short lengths of wire rather than the usual row of square pins that Arduinos are
supplied with (the pins soldered to the PCB are square in the drawing). I wanted the Arduino to be flush against
the stripboard because there's not a lot of height under the display.
The Arduino ProMini pinout is rather variable. The pins on the long edges of the board are fixed but the pins on the
short edges differ between suppliers. The layout above assumes a board with the 6 programming pins with Gnd
next to the Raw pin and with DTR next to Tx on the long edge. At the other end of the board are a row of 5 pins
with 0V next to D9 and A7 next to D10. None of the short-edge pins are soldered into the stripboard so you can
use loose wires if your ProMini is different.
Use a SIL header socket to hold the display. Or cut a 28-pin IC socket in half and use the pieces to make a socket
for the display. Solder the square pins that are supplied with the display (or came with the Arduino) into the
display. They're too fat to plug into a turned-pin socket - choose a socket that has the "spring clip" kind of pins.
Some "spring clip" kind of IC sockets can only withstand half a dozen insertions/removals of the LCD so try to find
good ones in your component drawer.
The LCD contains a socket for an SD card (which I didn't use). It is connected to 4 pins on the pcb. I used the pins
Transistor Curve Tracer: Page 12
and a piece of SIL header or IC socket to help support the LCD.
Notice that there are some links under the ZIF socket. Solder them in before you fit it.
I added a programming connector with Tx, Rx, Gnd and a reset button. (My USB-to-serial convertor doesn't have a
DTR pin so I have to reset the Arduino manually.) I unsoldered the programming connector when the project was
finished.
Download
https://www.instructables.com/ORIG/FMQ/5RKR/JJT6T88I/FMQ5RKRJJT6T88I.zip
…
Download
https://www.instructables.com/ORIG/FO5/XH22/JL6UZT94/FO5XH22JL6UZT94.pdf
…
It might be nice to produce curves for other Arduino Mini what it sees. (SPI slave sketches are
components but which? It's not clear to me what extra available on the web.) The software of the LCR-T4
infomation the curve of a thyristor or triac would tell tester is available and looks well documented.
me beyod what the LCR-T4 tester does. The LCR-T4 There's nothing inherently difficult there.
tester can even be used with opto-isolators. I've never
used a depletion MOSFET or an enhancement JFET The main Arduino displays the component type and a
or a unijunction transistor and don't own any. I diagram of how to plug the component in to the curve
presume the curve tracer could treat an IGBT as a tracer part of the ZIF socket.
MOSFET.
I've attached a surface-mount layout which can be
It would be nice if the curve tracer could recognise a used with an Arduino ProMini or with a naked
component automatically and say which pin is which. Atmega328p (in EasyPC format). If there is sufficient
Ideally, it would then go on to produce the curves. demand (and orders with money) I could produce a
Unfortunately, the way the DUT pins are driven and batch of SM PCBs Could you buy one from me ready
measured, that would require a lot of extra built? Well yes, of course, but the price would be silly.
components and complexity. The advantage of dealing with China is that so many
nifty electronic modules can be bought so cheaply.
A simpler solution is to copy the existing LCR-T4 The disadvantage is that it's not worth developing
tester circuit (it's open source and very simple) with a anything: if it's a success, it will be cloned. Nice as
second Atmega processor. Extend the ZIF socket to this curve tracer is, I don't see it as a viable business
16-pin to give three extra pins into which the unknown opportunity.
component can be plugged. The new Atmega acts as
a slave on the SPI bus and reports to the main
Download
https://www.instructables.com/ORIG/F8Q/W0DV/JJT6T82Y/F8QW0DVJJT6T82Y.zip
…
hello. I am asking you how much it would cost to make plates for the odcoder and tracker transistor
2 pcs including. part of it would be done by a Chinese company for symbolic $ 5. I can not ask
questions to the author Peter Bonie I know the email address.
https://qetesh.de/?load=ardosc
Hello
I ordered the boards (10 units) to seedstudio:
https://www.seeedstudio.com/
Hi Peter,
Hi ok1rr,
A lot of time I had need for the diodes (include zeners up to 24V).
I have a switchable supply for the TCA0372 from 12.5V (normal) to
about 27V for the zener > 12V and I have to switch/cahnge the 4 voltage dividers on the analog
inputs (from 13V to about 30V).
I realized a negative supply (-12V) for the n-JFET's with an ICL7662. But I need a inverting
Opamp. Therefore I used a separate Dual-Opamp (LT1304) for gain +/-6. For the +24V the DAC
works from 0 ...4.095V, for +/-12V the DAC works from 0 ... 2047V.
The opamp-outputs of the LT1304 can be switched to the base with two photomos-relais.
If You have interest, I can send You the code and the (EAGLE-)l schematic and layouts/boards.
Perhaps - if You have no objection - I can publish it here or on Github.
Kalle
Hello Kalle,
can you send me the schematic, PCB layout and the code? Easiest would be probably email
[email protected]
Greetings,
Martin, Prague, Czech Rep.
Hello Martin,
Hi Martin,
Make the gain of one of the amplifiers in TCA0372 switchable from1 (voltage-follower) to 3 or 6.
with
gain = 1 we can generate with the MCP4822 voltage from 0... 2.047 V or 0...4.095 V
for diodes/zeners with Ud/Uz < 4V
with
gain = 3 we can generate with the MCP4822 voltage between
0 ... 6.0141 V for zeners with Uz < 6V
or 0 ...12.287 V for zeners with Uz < 12V and all other devices (bipolnpn/pnp,MosFet,JFet)
with
gain = 6 we can generate with the MCP4822 voltage between
0 ... 24.570 V for zeners with Uz < 24V
I hope that the steps for diodes with Ud < 4V (shottky, normal pn/npDiodes, LED's) threw this
measure in the trace would be smaller !
The second amplifier from TCA0372 I try to use as voltage follower, but I have to test it.
Hi mausi_mick,
would you publish sometimes a schematic? No AQY212 here but I have the Omron G3VM-61A1
instead. LT1013 arrived, voltages up to +/- 30V can be taken from my power supply so I am very
curious to the Maple Leaf code and a schematic...
Hi ok1rr,
I have now 2 schematics, one with TCA0372, one with the LT1013.
I tried to include the zener-test (...24V) in the normal region (Diodes) with current up to 50mA.
So I have only one test-adapter and less code. But I have to change the dividers on the ADC's
from max ca 14V (100k/33k) to about 30V, make it with parallel-resistors (20k) to the 33k switched
with 4 nMOS - transistors.
The supply-voltage for the TCA0372 is changing testing Diodes from 13.2V to 28V (and -3V
instead of ground).
The separate supply voltage for LT1013 is about 26V, the negative supply (-12V for nJFET) is
generated
by a ICL7662-mini-board on the board.
The schematic of the TCA0372 is tested, the LT1301 is under test, I hope it's finished in the next
days
(the jFET's make some trouble)
I think before we / I publish the code for the maple version, we have to inform Peter, because I
used most of his Icons and a lot of his code - most of them modified.
Oh, seems very interesting. I am very curious, can't wait until first experiments here. Looking now
for LT1013 and MT3608, the photomos relays already ordered.
Merry Christmas & Happy New Year, everyone.
Hi,
now I have made a new layout for the TCA0372 and the 4 switches (in a DIL16 socket), the gain of
the v-opamp can be switched between 1.5
(vout(max) 3V or 6V) , 4: (vout(max) 8V or 16V) or 6: (vout(max) 12V or 24V. The dividers on
analog-inputs must be modified !
...
Merry Christmas !
the motherboard includes the dividers for 6 ADCs , the dual DAC MCP4822 and a separate 3.3V
supply (AMS117) for the ILI9341-display.
The input voltage for the AMS1117 / MapleMini should be about 5.2V. ( I have forgotten some C's
on the supply on input and 3.3V output!)
//www.youtube.com/embed/JkB37qCcXvM
https://www.youtube.com/watch?v=pBAgla5oc8k&feature=youtu.be
Many apologies for not replying to any comments: I've been backpacking in Peru for the last 6
weeks and forgot to take a copy of the password for this forum.
I can't see any questions that need my answer - if there are please re-post.
Thanks
Peter
Hi rz2222,
I had problems for some time with ILI9341-SPI-tft, spi-DAC MCP48x2 and a spi-amplipfier together
on SPI1, therefore I have now only the ILI9341-tft on SPI1, MCP4822 on SPI2 and the touch
without spi. The only small problem is, that the Adafruit_ILi9341_STM has only a few fonts, the first
is a little bit small and the third a little bit to big -- and no second font.
Now I have experimented a little bit, build for the base-DAC (A) a own amplifier (realized with a
TL062 / 072) and with gain +3 (66k/33k) and -3 with an inverting amplifier (100k/33k). The negative
supplyvoltage from about 12V I generate with a ICL7662. I think I get it from here:
I made some test for "normal" nJFET's and for a depletion-Mode MOSFET BSS129:
//www.youtube.com/embed/TTwVvdLdBMk
It's a little bit noise, but between the DUT and the amplifiers are more than 10cm not shielded wire.
A picture from the hardware:
What a GREAT contribution to the electronics community! Now we need some folks to start selling
kits for $20 bucks!
Oh, A1 directly to plus or ground (power) respectively, A3 permanently to power plus... I doubt...
I think that is correct, because + rail must not be stable and if - how I prefer - use electronic
switches with Ron > 0 it gives perhaps sense or exacter results.
Peter, now I have realized the switch with a photorelais (AQY212). I used 4 pieces .They need only
3-5mA/1.2V (the relais has about 70mA/5V). It looks good:
https://www.youtube.com/watch?v=T9dRAWkYmlQ
With the PhotoMosRelais AQY212 the switching is very comfortable and I think good (better: bad)
for the noise:
In the test-equipment I have more than 20cm wires to each ADC, but I can reduce it to 2 or 3 cm
with a new layout.
But the noise at the moment is quite moderate , also by the MOSFET's !
But I think it's difficult to realize it with UNO/NANO ..., because I need two more Pins for driving the
relais separately. Perhaps I can reduce it to one , taking the now free ADC4.
For display two or more devices of the same or complementary kind on the screen I used until now
a separate button (over ISR). But the handling was not so easy.
Now I use one of the Encoders (normally responsible for increment the parameters) to switch to the
next DUT:
turning CW to display the next device with same kind, turning CCW displaying complementary
Transistor Curve Tracer: Page 20
kinds (the AQY212 change than the polarity).
A other problem was that sometimes the DUT's draw big and potential dangerous currents:
Starting for instance a pJFET in the p-MOSFET menu or a pnp_Transistor as npn ... (see pictures).
Therefore I have integrate a current-limit (now fixed at 49mA):
Hi Peter,
I had some weeks holidays ... and time to think about it.
I think Your tracer is cheap, useful to analyze quick a lot of electronic components
and with Your instructions is easy to build.
he is cheap, quick (72MHz), has more than 5 ADCs with 12 bit resolution,
a lot of Ports, 2 spi and last not leased you can develop with the
ARDUINO - IDE (look to STM32duino / RogerClark).
It was not so easy, I had problems with your graphic library and the DAC (MCP48x2). But I could
transfer your nice icons an a lot of the garphic-intrenals (
InitGraph(..., Graph(...
https://www.youtube.com/watch?v=IOI2Duid794&feature=youtu.be
mausi_mick, this is my version of one of your handmade drawings. Now corrected (hopefully) in
accordance to your instructions. It is only a sample of my work, I will be happy to continue. Can't
find your relay version, in this ugly system is even a problem to find the last comment. It would be
nice if we can continue in another system. Also for files, drawings etc. we can use my web
www.ok1rr.com or at least the virtually unlimited space. You can contact me off the list at
[email protected] - this will significantly speed up our work (I will be not forced to crawl thru the
lots of comments). I can provide a drawing within tens of minutes. The time does not dictate me, I
am retired and still (after a cataract surgery) sharp eyed. BTW all the drawings can be used later
for PCB design so don't waste your time, mausi_mick!
Super !
I think it's correct, only on the bottom right the line downstairs isn't needed (it was a mistake on my
sketch -- the paper was on end to draw the ground line). And the unsigned R's on ther right is as
part of the divider on the maplemini "mainboard".
Do you have seen my post with the relais instead of the switch ?
There we need no A4 / ADC4 (but I think so we are more free) to control the switch, because we
set the switch/relais via SW.
Thanks !
Here the sketch from the TCA0372 with the newest design:
You mean the menu pages? Yes, I think that's that's about as fast as an ATMega328 and SPI will
do it.
Of course, it's slow to draw the graphs because the "open collector op-amps" have so much
feedback they're very slow and the s/w waits ages for them to settle.
True.
Yes but when you look at the noise in the signals we're measuring and the resolution of the
display, it's not worth having much more.
> You can see a demo of the Curve-Tracer with MapleMini here:
That looks very good. Not much noise and much faster. Why do the lines drop a little at the end?
Peter
I was on some of the greece islands.
Now I use the TCA0372, I think it's more stable than with the L2722.
He is on 13.2V with step-up LM2xxx from a 3.7V Lio-Bat , but I tested also MT3608.
On the LM2xxx I need a Shottky-Diode and a 100µF C for stability (a problem only for p-MOS).
I have forgotten two things: their is enough place for programming (> 64k) and I have
installed EEProm-Lib for saving the parameters (not real tested).
It was for me a problem witch the DAC, because the normal libraries use SPI1,
but I use SPI1 for the tft and spi2 for the DACs.
Because the CPU runs so quick, I have reduced most delays to 10 µs.
I will next time test the DAC with other intern amplification ( for small voltages and currents),
but at first I have to builtin the second Step-Up for the TCA0372. (The first I use to produce 5.2V
for the Maple-Mini and the display (I took a second 3.3V regulator for the display, because the
https://stm32duino.com/viewtopic.php?f=19&p=50658
I think the curves are o.k. , sometimes there is a breaktrough (only by j-FETs
On the display on the top left corner I have some test-information, because it`s - I think -
not possible on MapleMini to write something over USB/Serial-Write to the PC-Screen.
With Maple-Mini(Clone) you have to do something at first: Loading the bootloader(2.0), but
their is a lot of information in the web. And you have to install STM32duino in the Arduino path.
...
mausi_mick, would you share this project? It seems great! Many thanks in advance!
I think I will send you or Peter the code and some sketches to the TCA0372 and the switch and the
"mainboard" for the MapleMini.
https://www.youtube.com/watch?v=7fxcoC-JRJQ&feature=youtu.be
If you send me the code and the circuit diagram, I'll make a new "Step" for your improvements to
the project. Your description here is OK but would be difficult for a beginner to follow I think.
Yes, I think it's not for beginners, because there are only a few persons on STM32duino and not
millions compared to the Arduino Uno/Nano/.../Micro region. And there are only a few libraries ...
And its a problem with the starting, because you have to install the IDE (easy) and install the
bootloader
(its more complex).
The focus on ST32Duino is the STM32F103 chip and there is good support for the "Blue-Pill" and
the
Transistor Curve Tracer: Page 24
MapleMini clone.
I have more experience with MapleMini and therefore I tried to transfer your SW on it.
But I have to take the Adafruit libraries and a clone from UR-Touch and for the DAC I have to make
my own SW, because there was no DAC-lib with SPI2.
...
I have a made a small "motherboard" (ca 5cmx8cm) for the Maple with the DAC and an itsybitsy
board (ca 4cmx3cm) for the TCA0372 witch the double-switch and the resistors 33/68K and 4x49.9
Ohm.
...
I think you had a previous version which used arduino but a better op-amp, etc.
Great, amazing! Exactly what I need, for my very high dynamic range amplifiers for short wave
active antennas I need transistor matched pairs! So, this little gem can be finally a long awaited
solution! Just ordered TCA0372, possibly will test also TS912 (rail-to-rail) which should be capable
to deliver up to 75 mA output current at 10 V etc. You can contact me off the list at
[email protected]. Being retired tech publicist so I should be able to write an article/instructable
etc.
Hallo Peter,
now I make the switch between "pos" and "neg" DUTs with two toggle relais.
They need only power (5V) for the short measuring-phase. The DUTs only conected to the 12V
supply in this phase. I have splitted the "START" button in the menu in two parts for "pnp" (or
better : p-DUT's ) and "npn".
It's easier to switch over the touch-display than over the dual-Knitter-switch.
I hope , that therefore I can make the connections from TCA0372 and the ADC-inputs to the DUT
shorter (beacause of the noise).
An other possibility are to make it with photo-relais, but the on-resistance is about one Ohm to 3
Ohm and it makes an error from 100-300 mV at 100mA max.
https://www.youtube.com/watch?v=Q7o3SxdtTYw
on the maple mini I use other voltage dividers, the reference voltage is 3.3V.
For the supply I use two MT3608 to generate from 3.0....4.2V 5.2V for the maple-Mini and the
13.2V. On the mainboard I have a separat 3.3V supply
(AMS1117) for the display (the maple has his own AMS1117, but I think
the separat supply is good for stability).
Peter I’m going to try with ZXTN25020BFH. I have your boards in production, but perhaps it would
be best use a SOT-89 footprint.
No, I can't get BC639 SOT-23, at least at mouser. I’m going to search another semiconductor with
more power handling. Thank you!