Sunday, August 13, 2017

Restoring Sony STR-AV780 AV receiver

Sony STR-AV780 is a combined receiver and audio/video control center. This receiver is manufactured by Sony in around 1986 and it is capable to deliver 2 × 80W audio output power with 8Ω speaker load.

The STR-AV780 which I got had two problems. First problem is in power amplifier stage and it produces distortion in high frequencies. The second problem is in FM radio receiver and it is completely dead.

Power amplifier of STR-AV780 is based on two Sanyo STK4042 XI AF power amplifier ICs. To fix the distortion issue we replace all the electrolytic capacitors in both STK4042 power amplifier boards. After replacing capacitors distortion issue got fixed and power amplifier starts to produce clear output waveform.

The FM receiver of this AVR is mainly based on 2 ICs. For IF stage it uses LA1235, and to demodulate FM stereo signal it use LA3401. Apart from that Sony CX7925 is used as PLL frequency synthesizer. The front end of FM tuner is based on couple of transistors and FETs.

To fix FM receiver we inject FM test signal into receiver and check each stage of the FM receiver. Based on VCO output (of CX7925) and FM front end output we identify LA1235 as faulty component. After replacing LA1235, FM tuner starts to work again.

Fixed AV780 mainboard - tuner stage.

Due to weak nature of PCB copper tracks we attach LA1235 into main PCB through an IC base.

After replacing all above described components we clean and repaint the entire AV receiver.

During test stages we check this receiver with several speaker setups. Out of all the speakers this receiver performs extremely well with our Pioneer CS-707 speaker system.

Due to lack of service manual / schematic Sony STR-AV780 is quiet difficult receiver to repair. We trace and fix components of this receiver based on PCB layout and IC data-sheets.

Tuesday, July 25, 2017

Yet another CXA1191 FM radio receiver

This is simple, but very high quality CXA1191S based FM radio receiver system. In this design we use Sony CXA1191S as FM tuner and TDA2003 as an audio amplifier. This receiver system is designed to work with 12V DC power source and it delivers approximately 6W audio output power (with 4Ω speaker load).

The core component of this receiver system is CXA1191 FM radio IC, and for this design we use 30 pin version of CXA1191 (which is known as CXA1191S) because its commonly available in electronic component shops (and in eBay). Due to less availability of IF transformers we did not use any IF transformers in this design, and only the FM section is used in the IC. (AM section of the IC is ignored due to unavailability of broadcasting stations in here in Sri Lanka)

Prototype version of CXA1191S FM radio receiver.

Compare with most of the FM radio ICs this CXA1191S receiver offer very good selectivity and higher sensitivity. After adjusting (all inductors and trimmers) we were able to get all FM stations from this receiver with 15cm wire antenna.

PCB is the most recommended way to construct this circuit. Given PCB design is 115mm × 61mm and all PCB and schematic diagrams are available to download at

Friday, May 19, 2017

8-bit assembler compiler project

This project is an assembler compiler to generate binary executable for 8-bit x86 like CPU systems. This compiler can parse NASM style assembler code and it compatibles with Marco Schweighauser's javascript 8-bit virtual CPU.

Compare with Marco Schweighauser's javascript compiler this compiler parse almost same assembler code and generate almost identical executable code. The only difference in this parser is that all the operands are separated by white space(s), and not with the comma ( , ).

 jmp start
 db "Hello World!"
 db 0

 mov c hello
 mov d 232
 call print

 push a
 push b
 mov b 0
 mov a [c]
 mov [d] a
 inc c
 inc d
 cmp b [c]
 jnz loop

 pop b
 pop a

The output generated by this compiler for "Hello World" sample is listed in below and it can execute directly with Marco Schweighauser's 8-bit virtual CPU.

0000    1F0F 4865 6C6C 6F20 576F 726C 6421 0006  
0010    0202 0603 E838 1800 3200 3201 0601 0003  
0020    0002 0503 0012 0212 0315 0102 271F 3601  
0030    3600 3900   

This compiler is implemented using Lazarus / FPC and it is designed to work with different operating systems including Linux and Microsoft Windows.

This 8-bit assembler compiler is an open source, free software project and it is released under the terms of GNU GPL version 3.0 license. All the source codes and Linux based binaries of this project are available to download at

Thursday, May 11, 2017

Adjustable constant current source

When comes to electronic designing and testing, adjustable current sources facilitates to simulate "load" on circuit(s). The most common use of "constant current source" is to test performance of power supply units and battery packs.

The current source introduced in this article is capable to handle current up to 6A with maximum input voltage of 50V. This is an operational amplifier based adjustable current source and it uses LM358 in a general voltage follower configuration. To handle large currents we use four 0.1Ω 20W resistors as "load resistor", and those load resistors are drive through pair of 55N06 N-channel MOSFET transistors.

Final view of adjustable constant current source prototype.

The power supply unit of this project is build around 9V × 2 (2A) step-down transformer and it is design to get regulated 12V DC voltage. In our design this 12V power source is used to drive LM358 Op-Amp and 12V cooling fan.

In our PCB design we did not include high current paths into PCB track layout. We connect all of of those connections using point-to-point wiring. Large heatsink is recommended for both 0.1Ω load resistors and for 55N06 MOSFET transistors. In our prototype design we use 250mm × 72mm × 50mm heatsink to mount all of those resistors and transistors. To transfer heat we also attach standard 80mm cooling fan into our enclosure.

The schematics, PCB designs and wiring diagrams related to this project is available to download at