Author Topic: $20 LCR ESR Transistor checker project  (Read 3451007 times)

0 Members and 16 Guests are viewing this topic.

Offline Hydron

  • Frequent Contributor
  • **
  • Posts: 988
  • Country: gb
Re: $20 LCR ESR Transistor checker project
« Reply #6225 on: May 27, 2020, 05:42:58 pm »
I just tried your m-firmware build on my BSideESR02 Pro, and while it seems to load and test correctly, it keeps going back into the testing mode immediately after displaying a result - you get to look at the result for maybe a second max then it starts testing again. Is this expected? Does not happen on your k firmware, but I have never tried the m firmware before.

Note that I'm not trying to complain - I appreciate the work!
 

Offline madires

  • Super Contributor
  • ***
  • Posts: 7765
  • Country: de
  • A qualified hobbyist ;)
Re: $20 LCR ESR Transistor checker project
« Reply #6226 on: May 27, 2020, 06:01:25 pm »
You can change the cycle timeout by changing CYCLE_DELAY in config.h. Or by holding the start/test button at power on for more than 300ms the tester will start in auto-hold mode.
 

Online indman

  • Super Contributor
  • ***
  • Posts: 1012
  • Country: by
Re: $20 LCR ESR Transistor checker project
« Reply #6227 on: May 27, 2020, 06:24:09 pm »
- you get to look at the result for maybe a second max then it starts testing. Is this expected?

Here, one of the participants asked how k-firmware differs from m-firmware. I think that madires specifically made such a quick update of the results on the display so that its program differed from the k-firmware. For those people who think fast ;D I'm joking of course.
But seriously, then on the Russian-language forum this question is asked regularly in every 2 posts about m-firmware. This somewhat confuses users who are accustomed to firmware from Karl-Heinz. ;)
« Last Edit: May 27, 2020, 06:36:25 pm by indman »
 

Offline Hydron

  • Frequent Contributor
  • **
  • Posts: 988
  • Country: gb
Re: $20 LCR ESR Transistor checker project
« Reply #6228 on: May 27, 2020, 07:03:57 pm »
I actually did look in the "What's different" section of the 1.39m README before asking! Unfortunately this thread is pretty long by now, so it's a bit harder to search here too for the answer.

Thanks for the explanation madires - the 300ms button hold solution is good enough that I don't feel like dusting off an AVR toolchain to rebuild the firmware.

Edit: decided not to be lazy, found the setting in config.h to default to auto-hold and re-built it, now working as I like it :)
« Last Edit: May 27, 2020, 07:23:41 pm by Hydron »
 

Offline GnatGoSplat

  • Regular Contributor
  • *
  • Posts: 78
  • Country: us
Re: $20 LCR ESR Transistor checker project
« Reply #6229 on: May 29, 2020, 10:42:19 pm »
I've got an old Transistor Checker with 2x16 text display and Atmega8L that I flashed to v1.13k.  Am I correct that this is the newest version that works on this device?

Unfortunately, it powers off after displaying the result after just 1-second which is too quick for my taste.  I'd like to extend the power off time to 5-10 seconds.  However, I have no idea how to do so.  I've had no success just experimenting.  I'm using Windows 10 x64.  Here's what I've tried:

When I compile, I get:
Code: [Select]
------ Build started: Project: TransistorTester, Configuration: Debug AVR ------
Build started.
Project "TransistorTester.cproj" (default targets):
Target "PreBuildEvent" skipped, due to false condition; ('$(PreBuildEvent)'!='') was evaluated as (''!='').
Target "CoreBuild" in file "C:\Program Files (x86)\Atmel\Studio\7.0\Vs\Compiler.targets" from project "C:\Users\Shawn\Documents\Atmel Studio\7.0\TransistorTester\TransistorTester\TransistorTester.cproj" (target "Build" depends on it):
Using "RunCompilerTask" task from assembly "C:\Program Files (x86)\Atmel\Studio\7.0\Extensions\Application\AvrGCC.dll".
Task "RunCompilerTask"
Shell Utils Path C:\Program Files (x86)\Atmel\Studio\7.0\shellUtils
C:\Program Files (x86)\Atmel\Studio\7.0\shellUtils\make.exe all --jobs 8 --output-sync
In file included from .././Transistortester.h:2:0,
                 from .././Calibrate_UR.c:1:
c:\program files (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\util\delay.h(92,3): warning: #warning "F_CPU not defined for <util/delay.h>" [-Wcpp]
# warning "F_CPU not defined for <util/delay.h>"
   ^
In file included from .././config.h:1128:0,
                 from .././Transistortester.h:11,
                 from .././Calibrate_UR.c:1:
C:\Users\Shawn\Documents\Atmel Studio\7.0\TransistorTester\TransistorTester\autoconf.h(375,4): warning: #warning "SLEEP_MODE not possible with mega8" [-Wcpp]
   #warning "SLEEP_MODE not possible with mega8"
    ^
.././Calibrate_UR.c: In function 'Calibrate_UR':
C:\Users\Shawn\Documents\Atmel Studio\7.0\TransistorTester\TransistorTester\Calibrate_UR.c(101,23): error: 'ANZ_MESS' undeclared (first use in this function)
   ADCconfig.Samples = ANZ_MESS; // set to configured number of ADC samples
                       ^
C:\Users\Shawn\Documents\Atmel Studio\7.0\TransistorTester\TransistorTester\Calibrate_UR.c(101,23): info: each undeclared identifier is reported only once for each function it appears in
make: *** [Calibrate_UR.o] Error 1
Building file: .././Calibrate_UR.c
Invoking: AVR/GNU C Compiler : 5.4.0
"C:\Program Files (x86)\Atmel\Studio\7.0\toolchain\avr8\avr8-gnu-toolchain\bin\avr-gcc.exe"  -x c -funsigned-char -funsigned-bitfields -DDEBUG  -I"C:\Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.3.300\include"  -O1 -ffunction-sections -fdata-sections -fpack-struct -fshort-enums -g2 -Wall -mmcu=atmega8 -B "C:\Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.3.300\gcc\dev\atmega8" -c -std=gnu99 -MD -MP -MF "Calibrate_UR.d" -MT"Calibrate_UR.d" -MT"Calibrate_UR.o"   -o "Calibrate_UR.o" ".././Calibrate_UR.c"
C:\Users\Shawn\Documents\Atmel Studio\7.0\TransistorTester\TransistorTester\mega8\Makefile(340,1): error: recipe for target 'Calibrate_UR.o' failed
make: *** Waiting for unfinished jobs....
Building file: .././Battery_check.c
Invoking: AVR/GNU C Compiler : 5.4.0
In file included from .././Transistortester.h:2:0,
                 from .././Battery_check.c:2:
c:\program files (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\util\delay.h(92,3): warning: #warning "F_CPU not defined for <util/delay.h>" [-Wcpp]
# warning "F_CPU not defined for <util/delay.h>"
   ^
In file included from .././config.h:1128:0,
                 from .././Transistortester.h:11,
                 from .././Battery_check.c:2:
C:\Users\Shawn\Documents\Atmel Studio\7.0\TransistorTester\TransistorTester\autoconf.h(375,4): warning: #warning "SLEEP_MODE not possible with mega8" [-Wcpp]
   #warning "SLEEP_MODE not possible with mega8"
    ^
"C:\Program Files (x86)\Atmel\Studio\7.0\toolchain\avr8\avr8-gnu-toolchain\bin\avr-gcc.exe"  -x c -funsigned-char -funsigned-bitfields -DDEBUG  -I"C:\Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.3.300\include"  -O1 -ffunction-sections -fdata-sections -fpack-struct -fshort-enums -g2 -Wall -mmcu=atmega8 -B "C:\Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.3.300\gcc\dev\atmega8" -c -std=gnu99 -MD -MP -MF "Battery_check.d" -MT"Battery_check.d" -MT"Battery_check.o"   -o "Battery_check.o" ".././Battery_check.c"
Finished building: .././Battery_check.c
Building file: .././AutoCheck.c
Invoking: AVR/GNU C Compiler : 5.4.0
"C:\Program Files (x86)\Atmel\Studio\7.0\toolchain\avr8\avr8-gnu-toolchain\bin\avr-gcc.exe"  -x c -funsigned-char -funsigned-bitfields -DDEBUG  -I"C:\Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.3.300\include"  -O1 -ffunction-sections -fdata-sections -fpack-struct -fshort-enums -g2 -Wall -mmcu=atmega8 -B "C:\Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.3.300\gcc\dev\atmega8" -c -std=gnu99 -MD -MP -MF "AutoCheck.d" -MT"AutoCheck.d" -MT"AutoCheck.o"   -o "AutoCheck.o" ".././AutoCheck.c"
Finished building: .././AutoCheck.c
Building file: .././CalibrationCap.c
Invoking: AVR/GNU C Compiler : 5.4.0
In file included from .././Transistortester.h:2:0,
                 from .././CalibrationCap.c:23:
c:\program files (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\util\delay.h(92,3): warning: #warning "F_CPU not defined for <util/delay.h>" [-Wcpp]
# warning "F_CPU not defined for <util/delay.h>"
   ^
In file included from .././config.h:1128:0,
                 from .././Transistortester.h:11,
                 from .././CalibrationCap.c:23:
C:\Users\Shawn\Documents\Atmel Studio\7.0\TransistorTester\TransistorTester\autoconf.h(375,4): warning: #warning "SLEEP_MODE not possible with mega8" [-Wcpp]
   #warning "SLEEP_MODE not possible with mega8"
    ^
"C:\Program Files (x86)\Atmel\Studio\7.0\toolchain\avr8\avr8-gnu-toolchain\bin\avr-gcc.exe"  -x c -funsigned-char -funsigned-bitfields -DDEBUG  -I"C:\Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.3.300\include"  -O1 -ffunction-sections -fdata-sections -fpack-struct -fshort-enums -g2 -Wall -mmcu=atmega8 -B "C:\Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.3.300\gcc\dev\atmega8" -c -std=gnu99 -MD -MP -MF "CalibrationCap.d" -MT"CalibrationCap.d" -MT"CalibrationCap.o"   -o "CalibrationCap.o" ".././CalibrationCap.c"
Finished building: .././CalibrationCap.c
Building file: .././ChargePin10ms.c
Invoking: AVR/GNU C Compiler : 5.4.0
"C:\Program Files (x86)\Atmel\Studio\7.0\toolchain\avr8\avr8-gnu-toolchain\bin\avr-gcc.exe"  -x c -funsigned-char -funsigned-bitfields -DDEBUG  -I"C:\Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.3.300\include"  -O1 -ffunction-sections -fdata-sections -fpack-struct -fshort-enums -g2 -Wall -mmcu=atmega8 -B "C:\Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.3.300\gcc\dev\atmega8" -c -std=gnu99 -MD -MP -MF "ChargePin10ms.d" -MT"ChargePin10ms.d" -MT"ChargePin10ms.o"   -o "ChargePin10ms.o" ".././ChargePin10ms.c"
Finished building: .././ChargePin10ms.c
In file included from .././Transistortester.h:2:0,
                 from .././ChargePin10ms.c:4:
c:\program files (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\util\delay.h(92,3): warning: #warning "F_CPU not defined for <util/delay.h>" [-Wcpp]
# warning "F_CPU not defined for <util/delay.h>"
   ^
In file included from .././config.h:1128:0,
                 from .././Transistortester.h:11,
                 from .././ChargePin10ms.c:4:
C:\Users\Shawn\Documents\Atmel Studio\7.0\TransistorTester\TransistorTester\autoconf.h(375,4): warning: #warning "SLEEP_MODE not possible with mega8" [-Wcpp]
   #warning "SLEEP_MODE not possible with mega8"
    ^
Building file: .././CheckRotaryEncoder.c
Invoking: AVR/GNU C Compiler : 5.4.0
In file included from .././Transistortester.h:2:0,
                 from .././CheckRotaryEncoder.c:5:
c:\program files (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\util\delay.h(92,3): warning: #warning "F_CPU not defined for <util/delay.h>" [-Wcpp]
# warning "F_CPU not defined for <util/delay.h>"
   ^
In file included from .././config.h:1128:0,
                 from .././Transistortester.h:11,
                 from .././CheckRotaryEncoder.c:5:
C:\Users\Shawn\Documents\Atmel Studio\7.0\TransistorTester\TransistorTester\autoconf.h(375,4): warning: #warning "SLEEP_MODE not possible with mega8" [-Wcpp]
   #warning "SLEEP_MODE not possible with mega8"
    ^
"C:\Program Files (x86)\Atmel\Studio\7.0\toolchain\avr8\avr8-gnu-toolchain\bin\avr-gcc.exe"  -x c -funsigned-char -funsigned-bitfields -DDEBUG  -I"C:\Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.3.300\include"  -O1 -ffunction-sections -fdata-sections -fpack-struct -fshort-enums -g2 -Wall -mmcu=atmega8 -B "C:\Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.3.300\gcc\dev\atmega8" -c -std=gnu99 -MD -MP -MF "CheckRotaryEncoder.d" -MT"CheckRotaryEncoder.d" -MT"CheckRotaryEncoder.o"   -o "CheckRotaryEncoder.o" ".././CheckRotaryEncoder.c"
Finished building: .././CheckRotaryEncoder.c
Building file: .././CheckUJT.c
Invoking: AVR/GNU C Compiler : 5.4.0
In file included from .././Transistortester.h:2:0,
                 from .././CheckUJT.c:1:
c:\program files (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\util\delay.h(92,3): warning: #warning "F_CPU not defined for <util/delay.h>" [-Wcpp]
# warning "F_CPU not defined for <util/delay.h>"
   ^
In file included from .././config.h:1128:0,
"C:\Program Files (x86)\Atmel\Studio\7.0\toolchain\avr8\avr8-gnu-toolchain\bin\avr-gcc.exe"  -x c -funsigned-char -funsigned-bitfields -DDEBUG  -I"C:\Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.3.300\include"  -O1 -ffunction-sections -fdata-sections -fpack-struct -fshort-enums -g2 -Wall -mmcu=atmega8 -B "C:\Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.3.300\gcc\dev\atmega8" -c -std=gnu99 -MD -MP -MF "CheckUJT.d" -MT"CheckUJT.d" -MT"CheckUJT.o"   -o "CheckUJT.o" ".././CheckUJT.c"
Finished building: .././CheckUJT.c
                 from .././Transistortester.h:11,
                 from .././CheckUJT.c:1:
C:\Users\Shawn\Documents\Atmel Studio\7.0\TransistorTester\TransistorTester\autoconf.h(375,4): warning: #warning "SLEEP_MODE not possible with mega8" [-Wcpp]
   #warning "SLEEP_MODE not possible with mega8"
    ^
Building file: .././CheckPins.c
Invoking: AVR/GNU C Compiler : 5.4.0
In file included from .././Transistortester.h:2:0,
                 from .././CheckPins.c:3:
c:\program files (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\util\delay.h(92,3): warning: #warning "F_CPU not defined for <util/delay.h>" [-Wcpp]
# warning "F_CPU not defined for <util/delay.h>"
   ^
In file included from .././config.h:1128:0,
                 from .././Transistortester.h:11,
                 from .././CheckPins.c:3:
C:\Users\Shawn\Documents\Atmel Studio\7.0\TransistorTester\TransistorTester\autoconf.h(375,4): warning: #warning "SLEEP_MODE not possible with mega8" [-Wcpp]
   #warning "SLEEP_MODE not possible with mega8"
    ^
.././CheckPins.c: In function 'CheckPins':
C:\Users\Shawn\Documents\Atmel Studio\7.0\TransistorTester\TransistorTester\CheckPins.c(88,3): warning: #warning "hFE measurement without common emitter circuit" [-Wcpp]
  #warning "hFE measurement without common emitter circuit"
   ^
"C:\Program Files (x86)\Atmel\Studio\7.0\toolchain\avr8\avr8-gnu-toolchain\bin\avr-gcc.exe"  -x c -funsigned-char -funsigned-bitfields -DDEBUG  -I"C:\Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.3.300\include"  -O1 -ffunction-sections -fdata-sections -fpack-struct -fshort-enums -g2 -Wall -mmcu=atmega8 -B "C:\Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.3.300\gcc\dev\atmega8" -c -std=gnu99 -MD -MP -MF "CheckPins.d" -MT"CheckPins.d" -MT"CheckPins.o"   -o "CheckPins.o" ".././CheckPins.c"
Finished building: .././CheckPins.c
Done executing task "RunCompilerTask" -- FAILED.
Done building target "CoreBuild" in project "TransistorTester.cproj" -- FAILED.
Done building project "TransistorTester.cproj" -- FAILED.

Build FAILED.
========== Build: 0 succeeded or up-to-date, 1 failed, 0 skipped ==========


If I change it to use External Makefile and select the Makefile from the mega8 folder, I get:
Code: [Select]
------ Build started: Project: TransistorTester, Configuration: Debug AVR ------
Build started.
Project "TransistorTester.cproj" (default targets):
Target "PreBuildEvent" skipped, due to false condition; ('$(PreBuildEvent)'!='') was evaluated as (''!='').
Target "CoreBuild" in file "C:\Program Files (x86)\Atmel\Studio\7.0\Vs\Compiler.targets" from project "C:\Users\Shawn\Documents\Atmel Studio\7.0\TransistorTester\TransistorTester\TransistorTester.cproj" (target "Build" depends on it):
Using "RunCompilerTask" task from assembly "C:\Program Files (x86)\Atmel\Studio\7.0\Extensions\Application\AvrGCC.dll".
Task "RunCompilerTask"
Shell Utils Path C:\Program Files (x86)\Atmel\Studio\7.0\shellUtils
C:\Program Files (x86)\Atmel\Studio\7.0\shellUtils\make.exe -C "C:\Users\Shawn\Documents\Atmel Studio\7.0\TransistorTester\TransistorTester\mega8" -f "Makefile" all
make: Entering directory 'C:/Users/Shawn/Documents/Atmel Studio/7.0/TransistorTester/TransistorTester/mega8'
The syntax of the command is incorrect.
The syntax of the command is incorrect.
The system cannot find the path specified.
avr-gcc  -Wall -DLCD_ST7565_H_FLIP=1 -DLCD_ST7565_H_OFFSET=4 -DLCD_ST7565_V_FLIP=0 -DFONT_7X12 -DICON_TYPE=3 -DBIG_TP -DREF_C_KORR=4 -DREF_L_KORR=40 -DC_H_KORR=5 -DRMETER_WITH_L -DCAP_EMPTY_LEVEL=4 -DESR_ZERO=29 -DNO_AREF_CAP -DUSE_EEPROM -DPULLUP_DISABLE -DANZ_MESS=44 -DPOWER_OFF -DBAT_OUT=150 -DBAT_POOR=6400 -mcall-prologues -DINHIBIT_SLEEP_MODE -I. -DF_CPU=8000000UL -DF_CPU_HZ=8000000 -DMHZ_CPU=8 -mmcu=atmega8 -gdwarf-2 -std=gnu99 -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -MD -MP -MT lcd_hw_4_bit.o -MF ../Obj/mega8/dep/lcd_hw_4_bit.o.d  -ffunction-sections -fdata-sections -c -o ../Obj/mega8/lcd_hw_4_bit.o ../lcd_hw_4_bit.S
C:\Users\Shawn\Documents\Atmel Studio\7.0\TransistorTester\TransistorTester\lcd_hw_4_bit.S(8,0): error: opening dependency file ../Obj/mega8/dep/lcd_hw_4_bit.o.d: No such file or directory

^
compilation terminated.
make: *** [../Obj/mega8/lcd_hw_4_bit.o] Error 1
C:\Users\Shawn\Documents\Atmel Studio\7.0\TransistorTester\TransistorTester\finish.mk(3,1): error: recipe for target '../Obj/mega8/lcd_hw_4_bit.o' failed
make: Leaving directory 'C:/Users/Shawn/Documents/Atmel Studio/7.0/TransistorTester/TransistorTester/mega8'
Done executing task "RunCompilerTask" -- FAILED.
Done building target "CoreBuild" in project "TransistorTester.cproj" -- FAILED.
Done building project "TransistorTester.cproj" -- FAILED.

Build FAILED.
========== Build: 0 succeeded or up-to-date, 1 failed, 0 skipped ==========

I've spent 2 afternoons messing with this, and it doesn't look like I"m going to figure it out.  What am I missing?
Shawn
 

Offline madires

  • Super Contributor
  • ***
  • Posts: 7765
  • Country: de
  • A qualified hobbyist ;)
Re: $20 LCR ESR Transistor checker project
« Reply #6230 on: May 30, 2020, 07:33:43 am »
"The syntax of the command is incorrect." can be caused by a bad PATH variable, i.e. some programs aren't found.
 

Offline AlcidePiR2

  • Regular Contributor
  • *
  • Posts: 95
  • Country: fr
Re: $20 LCR ESR Transistor checker project
« Reply #6231 on: May 30, 2020, 08:41:56 am »
Having spent so much time reading in order to understand how to upgrade and flash my AY-AT transistor tester I decided to document as much as possible of what I've learned: https://github.com/blurpy/transistor-tester

Maybe someone else will find it useful :)

Thanks a lot, blurrpy. This is extremely useful. It is true that the thread has become very large and searching for information is difficult. One really needs some wiki that gathers all up to date information and proper links.  Your repository is a very good step towards this.


I  have fixed and upgraded my AY-AT board, but still have a problem :

The voltage at pin 28 is not right.  while I have 8.7 V  battery, the pin at 28 is only 7.1 V  1.7V (corrected). So the proc thinks that the battery is dead and shutdown.

The problem seems to come from transistor  T3 ( SS9012).  What is a good replacement for it ?

Thanks
« Last Edit: May 30, 2020, 10:20:05 am by AlcidePiR2 »
 

Online indman

  • Super Contributor
  • ***
  • Posts: 1012
  • Country: by
Re: $20 LCR ESR Transistor checker project
« Reply #6232 on: May 30, 2020, 08:59:43 am »
The voltage at pin 28 is not right.  while I have 8.7 V  battery, the pin at 28 is only 7.1 V. So the proc thinks that the battery is dead and shutdown.
What current does your device draw on 9V battery?
 

Offline madires

  • Super Contributor
  • ***
  • Posts: 7765
  • Country: de
  • A qualified hobbyist ;)
Re: $20 LCR ESR Transistor checker project
« Reply #6233 on: May 30, 2020, 09:50:17 am »
7.1V at pin 28? The ATmega doesn't like any voltage higher than 5V and the AY-AT has a 4:1 voltage divider at pin 28 for measuring the battery voltage. Or do you mean that the tester displays a battery voltage of 7.1V? In that case the voltage at pin 28 should be around 1.77V.
« Last Edit: May 30, 2020, 09:55:29 am by madires »
 

Offline AlcidePiR2

  • Regular Contributor
  • *
  • Posts: 95
  • Country: fr
Re: $20 LCR ESR Transistor checker project
« Reply #6234 on: May 30, 2020, 10:18:04 am »
7.1V at pin 28? The ATmega doesn't like any voltage higher than 5V and the AY-AT has a 4:1 voltage divider at pin 28 for measuring the battery voltage. Or do you mean that the tester displays a battery voltage of 7.1V? In that case the voltage at pin 28 should be around 1.77V.

Yes, sorry for the mistake.

I have made many tests. Changed  T3  and T2 ( which looked OK anyway). I  realized I had a set of chinese transistors with these values in my drawers. So changed them for the same.

I am making the tests with the IC off .

I have 7.1 V  at pin 2 of IC2  while I have  8.4 V at the battery.
The led is OK.  it does not light when the IC is  OFF but lights when I put it ON.  There is no change whether I put or not the IC.

I have measure the nearby resistors :
R7,R10, R15,.
I have changed the 10 uF  capacitor. Suppress the two 100 nF  to test them.
All OK.
 

Online indman

  • Super Contributor
  • ***
  • Posts: 1012
  • Country: by
Re: $20 LCR ESR Transistor checker project
« Reply #6235 on: May 30, 2020, 10:35:16 am »
AlcidePiR2
I ask you one more time - what current does the circuit consume from a 9V battery?
Check the condition of the 7550 stabilizer as well as the diode assembly SRV05-4 and the 6V8A suppressor.
 

Offline AlcidePiR2

  • Regular Contributor
  • *
  • Posts: 95
  • Country: fr
Re: $20 LCR ESR Transistor checker project
« Reply #6236 on: May 30, 2020, 10:45:18 am »
The voltage at pin 28 is not right.  while I have 8.7 V  battery, the pin at 28 is only 7.1 V. So the proc thinks that the battery is dead and shutdown.
What current does your device draw on 9V battery?

This is a good point !

Before even measuring this, I  checked  the battery voltage when I pressed the button, and it drops to 7.2V .  So the problem was not at all where I searched for.
This is because I first checked the battery voltage, and then only  VBAT when I  pressed the button.

At least a mystery  is solved.  I changed the transistors  for no reason. There should be  a short ( or nearly) somewhere.

Then I checked the current : 160 mA. (  the IC  is  removed).

Any hint for a good candidate for this short ?

 

Offline AlcidePiR2

  • Regular Contributor
  • *
  • Posts: 95
  • Country: fr
Re: $20 LCR ESR Transistor checker project
« Reply #6237 on: May 30, 2020, 10:48:45 am »
AlcidePiR2
I ask you one more time - what current does the circuit consume from a 9V battery?
Check the condition of the 7550 stabilizer as well as the diode assembly SRV05-4 and the 6V8A suppressor.


I was in my workshop checking for the amp ( see my previous post).   The 7550 is good. I  had changed it to MCP1702 and it is delivering good 5.0V.

I  will check  now the diode assembly SRV05-4 and the 6V8A suppressor.
 

Offline madires

  • Super Contributor
  • ***
  • Posts: 7765
  • Country: de
  • A qualified hobbyist ;)
Re: $20 LCR ESR Transistor checker project
« Reply #6238 on: May 30, 2020, 10:53:14 am »
My bet is on the SRV05-4.
 

Offline AlcidePiR2

  • Regular Contributor
  • *
  • Posts: 95
  • Country: fr
Re: $20 LCR ESR Transistor checker project
« Reply #6239 on: May 30, 2020, 12:02:42 pm »
My bet is on the SRV05-4.

Ca I just remove it  to test. As well as the P6KE6V8a ? Before I  eventually get some for replacement.
 

Offline madires

  • Super Contributor
  • ***
  • Posts: 7765
  • Country: de
  • A qualified hobbyist ;)
Re: $20 LCR ESR Transistor checker project
« Reply #6240 on: May 30, 2020, 01:00:16 pm »
Yes, the tester will work without them.
 

Offline AlcidePiR2

  • Regular Contributor
  • *
  • Posts: 95
  • Country: fr
Re: $20 LCR ESR Transistor checker project
« Reply #6241 on: May 30, 2020, 01:24:13 pm »
My bet is on the SRV05-4.

You WIN !

there was  33 Ohms  between pins 2 and 5 of the SRV05-4.  SO there was really a surge that destroyed both the SRV05-4 and the IC.

Now everything is working  fine.  Thanks to you,   Indman and blurpy  for the help.
 

Offline madires

  • Super Contributor
  • ***
  • Posts: 7765
  • Country: de
  • A qualified hobbyist ;)
Re: $20 LCR ESR Transistor checker project
« Reply #6242 on: May 30, 2020, 03:00:16 pm »
You're welcome! The No. 1 cause is a charged capacitor.
 

Offline GnatGoSplat

  • Regular Contributor
  • *
  • Posts: 78
  • Country: us
Re: $20 LCR ESR Transistor checker project
« Reply #6243 on: May 30, 2020, 08:48:34 pm »
"The syntax of the command is incorrect." can be caused by a bad PATH variable, i.e. some programs aren't found.

Yeah, unfortunately I can't figure out what it needs.  The error doesn't say what it's looking for.  Should I even be using the external Makefile with Atmel Studio?

I actually fixed the fast shutoff time by adding a 27k pull-up resistor to pin 13 PD7.  I guess that was needed after a certain version of firmware.  However, I still need to fix µ and Ω not showing up with the correct character on the display.
Shawn
 

Online indman

  • Super Contributor
  • ***
  • Posts: 1012
  • Country: by
Re: $20 LCR ESR Transistor checker project
« Reply #6244 on: May 31, 2020, 06:40:27 am »
  However, I still need to fix µ and Ω not showing up with the correct character on the display.
Use the flag CFLAGS + = -DLCD_CYRILLIC in the makefile
 

Offline AlcidePiR2

  • Regular Contributor
  • *
  • Posts: 95
  • Country: fr
Re: $20 LCR ESR Transistor checker project
« Reply #6245 on: May 31, 2020, 07:45:26 am »
Hello All,

After repairing my AY-AT tester and properly flashing the compiled code to  the Atmega328P, I want now to change some settings, so I have to compile the code myself.
I used the 1.39m version,
set up everything according to the clones document,  installed avr-gcc but I have one  compilation error. Did I do something wrong ?

Quote

avr-gcc -mmcu=atmega328 -Wall -mcall-prologues -I. -Ibitmaps -DF_CPU=16000000UL -DOSC_STARTUP=16384 -gdwarf-2 -std=gnu99 -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -MD -MP -MT display.o -MF dep/display.o.d -c display.c
display.c: In function 'Display_HexByte':
display.c:403:3: warning: implicit declaration of function 'Display_HexDigit'; did you mean 'Display_HexByte'? [-Wimplicit-function-declaration]
  403 |   Display_HexDigit(Digit);
      |   ^~~~~~~~~~~~~~~~
      |   Display_HexByte

avr-gcc -mmcu=atmega328 -Wl,-Map=ComponentTester.map main.o user.o pause.o adjust.o ADC.o probes.o display.o resistor.o cap.o semi.o inductor.o tools_misc.o tools_signal.o SPI.o I2C.o serial.o commands.o OneWire.o IR_RX.o IR_TX.o DHTxx.o HD44780.o ST7565R.o ILI9341.o PCD8544.o ST7735.o ST7920.o SSD1306.o ILI9163.o STE2007.o PCF8814.o ST7036.o VT100.o ADS7843.o wait.o   -o ComponentTester
/usr/local/opt/avr-binutils/bin/avr-ld: display.o: in function `Display_HexByte':
/Volumes/DATA/FIRMWARE/ComponentTester-1.39m/display.c:403: undefined reference to `Display_HexDigit'
/usr/local/opt/avr-binutils/bin/avr-ld: /Volumes/DATA/FIRMWARE/ComponentTester-1.39m/display.c:407: undefined reference to `Display_HexDigit'
collect2: error: ld returned 1 exit status
make: *** [ComponentTester] Error 1



I  set up the ST7735  SPI interface as

/*
 *  ST7735, SPI interface (bit-bang, 4 wire)
 */

#if 1
#define LCD_ST7735                      /* display controller ST7735 */
#define LCD_GRAPHIC                     /* graphic display */
#define LCD_COLOR                       /* color display */
#define LCD_SPI                         /* SPI interface */
#define LCD_PORT         PORTD          /* port data register */
#define LCD_DDR          DDRD           /* port data direction register */
#define LCD_RES          PD4            /* port pin used for /RESX (optional) */
#define LCD_CS           PD5            /* port pin used for /CSX (optional) */
#define LCD_DC           PD3            /* port pin used for D/CX */
#define LCD_SCL          PD2            /* port pin used for SCL */
#define LCD_SDA          PD1            /* port pin used for SDA */
#define LCD_DOTS_X       128            /* number of horizontal dots */
#define LCD_DOTS_Y       160            /* number of vertical dots */
//#define LCD_FLIP_X                      /* enable horizontal flip */
#define LCD_FLIP_Y                      /* enable vertical flip */
#define LCD_ROTATE                      /* switch X and Y (rotate by 90∞) */
//#define LCD_OFFSET_X     4               /* enable x offset of 2 or 4 dots */
//#define LCD_OFFSET_Y     2               /* enable y offset of 1 or 2 dots */
#define LCD_LATE_ON                     /* turn on LCD after clearing it */
/* font and symbols: horizontally aligned & flipped */
#define FONT_10X16_HF                   /* 10x16 font */
//#define FONT_10X16_ISO8859_2_HF         /* 10x16 Central European font */
//#define FONT_8X16_WIN1251_HF            /* 8x16 cyrillic font */
#define SYMBOLS_30X32_HF                /* 30x32 symbols */
#define SPI_BITBANG                     /* bit-bang SPI */
#define SPI_PORT         LCD_PORT       /* SPI port data register */
#define SPI_DDR          LCD_DDR        /* SPI port data direction register */
#define SPI_SCK          LCD_SCL        /* port pin used for SCK */
#define SPI_MOSI         LCD_SDA        /* port pin used for MOSI */
#endif
 

Offline AlcidePiR2

  • Regular Contributor
  • *
  • Posts: 95
  • Country: fr
Re: $20 LCR ESR Transistor checker project
« Reply #6246 on: May 31, 2020, 08:18:28 am »
I looked to the display.c code  and found the problem.

I had disabled  the IR flags where  Display_HexDigit is defined

and enabled

#define SW_FONT_TEST

which uses Display_HexDigit

Maybe some comment would be welcome saying this (maybe its there and I did not see it)

I removed

// #define SW_FONT_TEST

and now it compiles OK
 

Offline madires

  • Super Contributor
  • ***
  • Posts: 7765
  • Country: de
  • A qualified hobbyist ;)
Re: $20 LCR ESR Transistor checker project
« Reply #6247 on: May 31, 2020, 11:30:18 am »
Thanks! You've found a bug in the "#ifdef" management for the functions Display_HexDigit() and Display_HexByte(). I'll fix it.
 

Offline belzrebuth

  • Frequent Contributor
  • **
  • Posts: 483
  • Country: gr
Re: $20 LCR ESR Transistor checker project
« Reply #6248 on: May 31, 2020, 11:45:50 am »
Thread is quite long to search I'm afraid and by seeing it I realised I haven't updated my tester for a while now..(2-3 years!)
What would be the latest version for a EZM328 tester?
Thanks:)
« Last Edit: May 31, 2020, 11:51:54 am by belzrebuth »
 

Offline madires

  • Super Contributor
  • ***
  • Posts: 7765
  • Country: de
  • A qualified hobbyist ;)
Re: $20 LCR ESR Transistor checker project
« Reply #6249 on: May 31, 2020, 12:18:24 pm »
k-firmware: 1.13k (maybe mega328_GM328)
m-firmware: 1.39m
If your tester is a GM328A it might need the PD5 mod (see https://www.eevblog.com/forum/testgear/$20-lcr-esr-transistor-checker-project/5550/).
 
The following users thanked this post: belzrebuth


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf