Ardutester - Arduino Component Tester

Post here about your Arduino projects, get help - for Adafruit customers!

Moderators: adafruit_support_bill, adafruit

Please be positive and constructive with your questions and comments.
User avatar
adafruit_support_rick
 
Posts: 35092
Joined: Tue Mar 15, 2011 11:42 am

Re: Ardutester - Arduino Component Tester

Post by adafruit_support_rick »

Cool!
Blogged!

giantsfan3
 
Posts: 2
Joined: Mon May 06, 2013 8:07 pm

Re: Ardutester - Arduino Component Tester

Post by giantsfan3 »

pighixxx wrote:At 1st post new version of pcb shield and gerber files.
Very, very interesting project. I didn't know so much could be accomplished using just an Arduino!

A request: Any chance you can upload Eagle schematics (as opposed to the Gerber files)?
I would love to make one of these but I make my own PCBs at home, and want to make some adjustments.
In the meantime, I'll see if I can make a schematic myself using your illustration.

In either case, really impressive work. I've looked at your code; it's obvious that you put a lot of effort and organization into it.

giantsfan3
 
Posts: 2
Joined: Mon May 06, 2013 8:07 pm

Re: Ardutester - Arduino Component Tester

Post by giantsfan3 »

pighixxx wrote:With 0.7X revison i will post also the eagle schematics.
The final version of ardutester will be able to interface to pc to get more information about tested components. The program will be compatible with Mac, Linux, Win
Very exciting; looking forward.
It would also be neat if you do a Kickstarter for this shield; you have at least one pledge guaranteed from me.

thefatmoop
 
Posts: 352
Joined: Tue Aug 19, 2008 4:36 pm

Re: Ardutester - Arduino Component Tester

Post by thefatmoop »

add this to it! - some of the components can be stripped out. There is also an internal comparator to the atmega. You could add this functionality with 3 or so passive components, but it's not very accurate.
http://reibot.org/2011/07/19/measuring-inductance/

I'm also almost done with a more professional LC reactance meter using an adjustable 10k-100kHz sine oscillator. It will require 3 ics though =/. I'd really like to bring this accurate LC meter to the market that would be near the quality of a professional one. Please contact me at reibot.org if you're interested!

User avatar
combs
 
Posts: 25
Joined: Fri Feb 01, 2013 5:23 pm

Re: Ardutester - Arduino Component Tester

Post by combs »

Greetings--Thanks a lot for sharing your work on this very interesting project!

A friend and I tried building it last weekend, using the "O" version code. I started out with an Uno and it gave us quite a bit of trouble, giving very erratic results for any connected components. Using the diagnostic routine (short out the probes) we narrowed it down to probe 1 having much different resistance from the other probes.

I wondered if this was because of the inline LED on pin 13, so we moved it to a bare atmega328p on a breadboard (16mhz crystal) powered by the clean 5v from the Uno. The diagnostic numbers (which can be decrypted/interpreted using this very helpful PDF, though the test numbers don't seem to quite match up) improved a fair bit from this.

Trouble is, the tester thinks there are lots of FETs in the world. It believes that disconnected probes, for instance, are actually an N-channel MOSFET (GDS=213, 0mv, 0pf). Extra weird, though, if I connect two of the probes together, those two and the third probe can be used to accurately measure two-wire components (see attached picture of a resistor).

Here are the slightly condensed diagnostic numbers I'm getting--note strange probe 1 value on tests 5 and 6:

T1a etc. Vref
1079mV

T2A +L- 1-2 1-3 2-3
20 15 11
20 16 10
20 15 11
20 15 10
20 16 10

T3A +H- 1-2 1-3 2-3
2 -24 -33
2 -23 -31
1 -22 -35
1 -22 -34
0 -24 -35

T5A H-
34 5 14
172 0 17
175 0 14
18 6 0 18 (space added to first number for very strange Adafruit spam filter)
172 0 16

T6A H+
2877 4972 4966
2853 4973 4971
2979 4972 4970
2940 4972 4968
2960 4972 4970

I've swapped lots of different resistors and redone the wiring thrice and still see consistently strange numbers for probe 1's tests 5 and 6. Tried two Unos and two different atmega328s, just in case, and swapped the caps too. Is there some extra calibration I have to do for my particular wiring/components?

I did adjust CAP_PROBELEADS to 15 per the comments in the code, and measured/set R_ZERO to be .25ohm. (I should say, too, I sourced 30x 1% resistors rather than 6x .1%s and metered them to select those closest to the proper value. The cap is .1%.)

Thanks a lot for any insight you can offer, and for all the code and effort you've clearly poured into this.



P.S., if pin 13 is indeed a problem for other Uno users, perhaps it's possible to switch to the other DDR bank and use pins 2-7 instead of 0-5 via changing TP0/TP1/TP2 variables? It looks like lots of code would need to be changed to have individually defineable pins, but maybe this is a decent workaround.
Attachments
2013-06-23 19.08.54-2.jpg
2013-06-23 19.08.54-2.jpg (136.44 KiB) Viewed 4337 times

User avatar
combs
 
Posts: 25
Joined: Fri Feb 01, 2013 5:23 pm

Re: Ardutester - Arduino Component Tester

Post by combs »

oh yes, one other interesting detail--if I switch the wiring to swap, say, the Probe 1 and Probe 2 circuitry, it is always Probe 1 that reports strange numbers in tests 5 & 6. Seems to be tied to pin numbers rather than the circuitry.

User avatar
combs
 
Posts: 25
Joined: Fri Feb 01, 2013 5:23 pm

Re: Ardutester - Arduino Component Tester

Post by combs »

Solved! Funny how writing out your problems can help you think through them. I had made the assumption that AREF needed to be hooked up to VCC, which wasn't the case. So if you're seeing total wackiness, make sure those aren't connected. Call off the hounds! Thanks!

User avatar
combs
 
Posts: 25
Joined: Fri Feb 01, 2013 5:23 pm

Re: Ardutester - Arduino Component Tester

Post by combs »

Interesting... When used standalone with an LCD (which is hooked up on A5 and A4 by necessity), all those "ADC_DDR = Probe2_ADC" and "ADC_PORT = Probe2_ADC" and so on are wiping out the whole analog PORTC register, resetting A4 and A5. This causes the LCD to freeze.

I'm working on swapping them out with something a little cleaner, like this:
ADC_DDR = ADC_DDR & ADC_CLEAR;
ADC_DDR = ADC_DDR | Probe2_ADC;

where ADC_CLEAR = B11111000;

do you have a GitHub going? I'd be happy to sling my code upstream (when I get it working properly...)

bbock
 
Posts: 3
Joined: Fri Jul 22, 2011 11:27 pm

Re: Ardutester - Arduino Component Tester

Post by bbock »

Files download.

Schematic
Sketch 06o
Gerber Files[/quote]

Can you please include the drill file in the Gerber zip file.
Thanks

rich8oz
 
Posts: 7
Joined: Sun Jul 14, 2013 6:15 am

Re: Ardutester - Arduino Component Tester

Post by rich8oz »

Hi,
Thanks for your work.
I built a test circuit with an Uno R3, and breadboard (no LCD), just output to serial monitor.
Like aardvarko mentioned above, I got lots of FETs, even without any components on test terminals.

Then, I found that if I swap the wires pairs (in the schematic diagram) at pins 8 and 9 with those of 12 and 13 respectively, the circuit and software work as expected.
Also, the same applies to the second diagram (the breadboard), the wires going to A0 and A2 should be swapped around.

Once again, many thanks for the hard work.
Regards,

rich8oz
 
Posts: 7
Joined: Sun Jul 14, 2013 6:15 am

Re: Ardutester - Arduino Component Tester

Post by rich8oz »

Regarding the corrections mentioned above, the shield pcb layout matches the schematic, not the breadboard.
Easiest correction would be to swap the routing at A0 and A2, and label the test probe points as "3 2 1" instead of "123".
For anyone who have already got the shield pcb made up, it's just cutting two tracks and soldering two jumpers.

Would appreciate if someone would confirm that the suggested changes make it all work.

Thanks,

rich8oz
 
Posts: 7
Joined: Sun Jul 14, 2013 6:15 am

Re: Ardutester - Arduino Component Tester

Post by rich8oz »

Hi Everyone,
The updated schematic is correct and the program works.
If you have any problems just be aware of the following:

Be sure you follow the latest schematic...
The push switch is connected between A3 (not D2) and ground.
D8 and D9 through resisters to A0
D10 and D11 through resisters to A1
D12 and D13 through resisters to A2

As for the sketch,
If using serial port , do comment out LCD_PRINT, and enable both DEBUG_PRINT and ATSW:
//>>>>>>>>>>>>
//#define LCD_PRINT //Print on LCD
#define ATSW //ArduTester Software Client Enabled
#define DEBUG_PRINT //Print on Serial Port
//>>>>>>>>>>>>

If using LCD display, do the opposite:
//>>>>>>>>>>>>
#define LCD_PRINT //Print on LCD
//#define ATSW //ArduTester Software Client Enabled
//#define DEBUG_PRINT //Print on Serial Port
//>>>>>>>>>>>>

For LCD (1602) display connection :

LCD -to- Arduino
VDD --- 5V
VSS --- 0V
RS --- pin D7
En --- pin D6
D4 --- pin D5
D5 --- pin D4
D6 --- pin D3
D7 --- pin D2

If using popular "LCD switch shield" (buttons not used, just LCD)
You cannot just connect on top Arduino directly.

Use jumper wires to make the following connections..
"LCD shield pin" -to- "Arduino header"
shield 5V --- Arduino 5V
shield 0V --- Arduino 0V
shield D4 --- Arduino pin D5
shield D5 --- Arduino pin D4
shield D6 --- Arduino pin D3
shield D7 --- Arduino pin D2
shield D8 --- Arduino pin D7
shield D9 --- Arduino pin D6

I have tested on UNO R3 and confirm that it works.
(You may have to work on the sketch to debounce switch)

Great project, many thanks to Pighixxx

rich8oz
 
Posts: 7
Joined: Sun Jul 14, 2013 6:15 am

Re: Ardutester - Arduino Component Tester

Post by rich8oz »

Hi pighixxx,
Thanks for the update, looking forward to using the new sketch.

For those of you who are like me, breadboarding the project and using an available "LCD Keypad Shield", you can also jumper wire the keypad switches to to the Arduino.

LCD shield 'RST' pin -to- Arduino A3 (and use RST key on keypad shield).
or better yet..
LCD shield 'A0' pin -to- Arduino A3 (and use any of these keys: Right, Up, or Down; on the shield).

Again, be reminded that you cannot just stack the LCD Keypad Shield on top of the Arduino, use jumper wires to connect up as per instructions given earlier.

Have fun!

rich8oz
 
Posts: 7
Joined: Sun Jul 14, 2013 6:15 am

Re: Ardutester - Arduino Component Tester

Post by rich8oz »

Hi pighixxx,
Alas, it seems getting the project to work is one thing, getting accurate results is another!
I put through some resistors I have on hand through the Ardutester, and had some weird results.

The values marked okay were tested correctly:
Resistor ---- tested value
10R --- okay
22R --- okay
47R --- 23.5R
100R --- 47R
220r --- okay
470r --- okay
680r --- okay
1k --- okay
2k2 --- okay
4k7 --- 12k
6k8 --- 3k
10k --- 4k7
22k --- 10k5
47k --- 22k2
68k --- 32k
100k --- 46k
220k --- okay
470k --- okay
680k --- okay
1m --- okay

Note that nearly all of the incorrect readings were half of correct value, except 4.7k which read as 12k!
Very odd!
Any comments?
Thanks,

rich8oz
 
Posts: 7
Joined: Sun Jul 14, 2013 6:15 am

Re: Ardutester - Arduino Component Tester

Post by rich8oz »

Hi pighixxx,
Thanks for the update, but it does not compile...
The following line has one closing bracket (")") too many...
if (((unsigned int)Value < 1024) && !(Probe & (1 << REFS1)) && (Config.AutoScale == 1)))

Thanks for the offer for one of your Ardutester shields. However, I am "down under" in Melbourne, Australia; just wondering how much is shipping.
Incidentally how do I PM on this forum?
Thanks and Regards

Locked
Please be positive and constructive with your questions and comments.

Return to “Arduino”