2019. december 30., hétfő

Two problems - one solution

As usual I'm building several things in parallel.
In my last post I was writing about the switch on problem of my dual power supply. This is the first thing need a solution.
A few month ago I bought a 1,5kW variac for a bargain price (€50 what is a joke if I add that this unit even has isolated primary and secondary winding).




When I tried to use it, realized, that it immediately switch of the circuit breaker. Too much inrush current (huge iron core).
For the first problem I need a timed switch circuit, what can be controlled by a low current switch circuit. For the second problem I need a classic soft start unit.
If we dig a bit into the operation of the circuits we will find that those are similar. In the first we need to switch on the high power side after a certain amount of time. In the second the system will be switched on immediately just through a pack of power resistors, what will be shorted after a certain amount of time.
So If I separate the the switch of the controlling power supply from the high power side with a switch, I'm ready.
In the delay switch unit I'll left out the power resistors and control the small PSU from the front panel switch. In the soft start unit I'll populate the power resistors and shorting the small PSU to the high power circuit (and add an external, high current capable mains switch).
During the design of the circuit I went a bit further. Added two of the units above to a single PCB. Those can be used either in master-slave mode (adding only one mains input, one power on switch, one low power PSU but two different delays with two relays) or it can be used as two fully functional units if we cut the PCBs two side.
So, the whole design is complette now. I'll order the PCB in a few days (I've a few other things in my head and I want to pay only a single shipment cost from the manufacturer).
The schematic diagram:


The PCB design:


The 3D model of the board:


This is first of my designs what have a complete 3D model. I was able to use the OpenSCAD -> scad -> FreeCAD -> step workflow for creating models for my own part designs easily.

2019. december 29., vasárnap

Few stories - Build something on it.

I'm building something. As usual.
I'm telling a few stories about things - unusual? I don't know.

1. I'm fundamentally an IT guy. Most of my life I worked in various companies fulfilling various IT jobs. This dates back when I was head of the IT plus sysadmin at a company called "Láng Holding".
This was before the internet era (just to understand, the internet was existing way before some of the younger or not core IT people thinks). So it dated to 1998-1999 (Before the dotnet boom).
We acted as a usual holding company. Mainly working as financial/legal entity. One of the biggest IT challenge at those days was to have the countries laws, the country wide corporate registry available electronically for our employees. At that time this information was not available on the just starting web.
There were a company who provided this information on subscription based CDROMs.
A usual computer has only one CDROM drive (mostly non today), but I needed more, centrally on the server. So I bought a nice SCSI box with four drive bays and four SCSI CDROMs for the task.
Those days passed. We finally closed this company, and the box above landed in my loft (together with many old IT things).

2. A few weeks ago I ordered two identical 60V/1500W DC power supply modules from China. As I didn't wanted to pay the higher shipping cost of DHL, I ordered them separately. It costs $99 each.
This was a good test of the local post, how they handle the customs. I can tell: randomly.
The first one I ordered landed at customs, and still didn't arrived to me. The second one I ordered landed in my house without customs handling.

3. Back in 2017, I ordered a Ruideng DPS5020 power supply module from Banggood. After a few month it become clear, that it will never arrive. So I complained, they resent it, and after a while both arrived. I agreed with them to keep both instead of sending one back.

As you may realized by now I want to build a dual channel 0-50V/20A power supply to my lab. This is in my mind since 2017.
As I have both the lab supply modules and the huge mains power supply for it, I started to think, what would be the best possible enclosure for it. All the ones I found at the local suppliers and the online sources were too big and too costly. Then come into my mind the forgotten SCSI box from the loft:


Removed everything from inside:


Built two power modules from the Ruideng controller and the 1,5kW PSUs added some aluminum profiles:


Mounted it into the box above:


Here come a few problems:
1. I started to think. The box has 3kW PSU inside. I think, the original power switch will never be able to handle around 15A current.
2. I don't want to switch those PSU simultaneously on, because the mains fuse will not handle the inrush current
3. I want to control the PSUs from a PC, but on a single USB port. So I need to change the USB/RS232 adapter came with the units to something else.

As you see the build almost finished, I just need to address those issues. Especially to first two. Those will come in a later article.

2019. december 28., szombat

Hi-Fi rack - Motorized turntable shelf

I started to build a rack to my retro Akai set. I'm a small guy. When I started to plan the rack I realized that I loose space in the rack if I put the turntable on the top of it (it can't be taller than 120-130cm). If I build a 170 tall rack and put the turntable into the middle of it I still loose space, as I should open the lid somehow.
What if I build a shelf can be pulled out with the turntable? This way I not loose space. Think this a bit further: add a motor for the shelf.
Ok, but how to control the shelf?
What if I add an aluminum profile to the front of the shelf and use it as a touch sensor?
And the result:


The controlling electronics today contains an Arduino UNO, a CNC Shield, a DRV8825 motor driver and a few additional components on a breadboard.
This is not the final solution. I intend to build a specialized electronics for this. Change the motor controller to a Trinamic one because this is too loud now.

2019. november 28., csütörtök

Akai - Media Player 2. Volumio

I dowloaded and put on a microSD card the Volumio
Connected to HDMI, keyboard, switched on - nothing on the screen (maybe the screen resolution)
Moved the set to a 4K TV - nothing on the screen
Removed the Wi-Fi module - nothing on the screen
Switched the Pine64 board to completely new - nothing on the screen
Changed the microSD card to a different piece, manufacturer - nothing on the screen
Changed the microSD card to my previously used Android TV distribution - screen on, booting
RTFM - you are an idiot. The Volumio is headless on SBCs

Connect to the LAN, wait for IP, connect via browser


First task accomplished
I need a few plug-ins for the complete system:

Tidal (I'm using mainly as music streaming)
Looked around. I'm not happy. Looks like the native integration doesn't exists. You have a few choices:
1. Subscribe to MyVolumio and use Tidal through it
2. Download your music locally with AudFree
3. Stream through UPNP/DLNA from your Android phone
I can tell, I'm not happy with either choices. Not yet decided, what to do.
Further reading:
https://forum.volumio.org/tidal-playback-t8894.html
https://www.audfree.com/tidal/tidal-on-volumio.html
https://forum.volumio.org/tidal-native-plugin-myvolumio-t10682.html

16x2 (20x2) LCD display - hopefully my VFD use the same communication protocol
It looks like there is quite a lot information exists on the internet. I just need to grab them, and build. The question is, how will it work on the Pine64 as all of the descriptions for Raspberry Pi.
Here are the Github repositories for the code:
https://github.com/Saiyato/volumio-pydpiper-plugin
https://github.com/dhrone/pydPiper
https://github.com/JedS/Raspdac
Connection:
https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhDN0xib8RQp84p4BqSTxCumE6uhyphenhyphen2iqGubwXm-KATwOJx0sHPCs1NKIhWuSWM56k99GLX91C0lwPjYfspIR3Jhl_yviuIMxvLpiiFX3ck0547TcxwAUciyi3cRbKmU0u9lV6lM20T8SfBj/s1600/Volumio+LCD+1.jpg
I2C Interface (not yet decided, if I'll use it):
https://forum.volumio.org/display-16x2-and-i2c-interface-t9549.html

Rotary Encoder
It looks like the rotary encoder plugin already in the stock firmware, so I installed it already.
Here is the documentation and connection:
https://github.com/Saiyato/volumio-rotary-encoder-plugin
I read on various pages, that this is unreliable. Here is a different solution:
https://forum.volumio.org/getting-rotary-encoder-working-t9690.html
We will see, what is the working solution.

Buttons/GPIO
The chassis contains three buttons already. My plan is to keep them, and use them for... I don't know yet. I'll figure out later. probably I'll relabel the buttons.
Anyway. Here is the plugin:
https://github.com/tomatpasser/gpio-buttons
https://github.com/volumio/volumio-plugins/tree/master/plugins/system_controller/gpio-buttons

Bluetooth
I'd like to play music from my phone through bluetooth. So looked for the solution. Here I found one:
https://forum.volumio.org/volumio-bluetooth-receiver-t8937.html

Infrared Remote
Here is a starting point for the infrared remote I plan to use:
https://forum.volumio.org/control-guide-for-raspberry-t9700.html

Now I collected all of the information I think is necessary for my VolumIO project. I'll continue from here connecting, setting up piece-by-piece.

2019. november 18., hétfő

Akai - Media Player 1. SBC

In the previous post I was writing about Raspberry Pi as the computer will be used in the device.
I was thinking a bit further and realized it is not the ideal solution. (Still, I think the Raspberry Pi is an awesome piece of hardware, just doesn't fit into this particular task)



The features I miss from the RPi:
Internal USB
I need a USB connector can be extended to the front panel to be able to play music from a USB stick
On RPi all of the USB connectors are on the same side as the Ethernet what I would put to the back of the unit (this could be hadled different way, but I have other things)
External Wi-Fi, Bluetooth antenna.
The case is made from metal. Probably the Wi-Fi and the Bluetooth would barely work inside the case. I found hack on the internet to overcome this, but this is a hack.
So I looked around, the internet, found a few feasible solution, what kind of board should I buy. On the other hand, I have two problems with those:
I have plenty SBC-s on hand, don't want to spend money on an additional one
If I order something from the net, it take a few weeks to arrive. As I ordered the DAC and the display previously, probably the  SBC would arrive latest
So I dig into my development board/SBC box in my workshop. I realized that the board I have many of it (at least 5) completely satisfy my needs.
The brain of the media player is switched from Raspberry Pi to Pine64.



I'm still not totaly convinced in my choice, therefore I'll not build it into the case right now, just assemble it on my desk and start to experiment with it.
Here I found a reasonably new release of the VolumIO for my Pine64:
https://forum.volumio.org/volumio-pine64-pine-a64-lts-sopine-compute-module-t9465.html
I'll continue my journey with this.

2019. november 17., vasárnap

Akai - cannibalized

As I wrote previously, I want to add streaming media capability to my retro Akai Hi-Fi set.
The plan was the following:
Pick up on the market a low cost unit, fits into my set.
Remove everything from inside.
Build the following set into it:
- Raspberry Pi + VolumIO
- Some power supply
- Some DAC
- Some alphanumeric display
- Rotary encoder
- IR receiver

I was looking for the possible "donor" units. Finally my choice is an Akai AT-A1 tuner. I bought the one I have in my hand for GBP 17 from UK


Opened the box. Here is the original inside:


Then I removed everything what looks unnecessary:


Ordered a few things what will go into the box:


aeProduct.getSubject()
This is the current status. More will come soon.


2019. november 16., szombat

Akai - old love

I didn't write this blog for a while. I had good reason for this, what is not public. From now on it looks like my reason went away, so I'm back.
Along with my passion for electronics, CNC milling, 3D printing and many more, I have an old love. Music and Hi-Fi. To be honest originally this was bringing me into the world of electronics almost 40 years ago (38 to be exact). I was 11 when the first Hi-Fi set landed in my family. Right from the beginning I was thinking how can I expand its capability, later on I was thinking how can I rise its sound quality. This lead me into the word of audio electronics, building amplifiers and other things.
As I raised behind the "iron curtain" in the '70s and '80s. At that times not to much goods arrived from the western part of the word. Here in Hungary mainly one company namely Akai was available, based on the fact that Videoton (Hungarian audiovisual manufacturing company) acted as a manufacturing base for Akai here.
At 1984 even they had a trade show in a restaurant in Budapest. I was there and picked up a brochure, what was almost a Hi-Fi bible, a source of wishes for a long time. I just wanted to own a full set of highest ranked equipment from this brochure - what unfortunately don't have anymore.
In the last year somehow pop this desire into my mind after a long time forgotten.
So I started to collect.
Today I can tell, I almost have the full set I wanted. Actually even a bit more, but the "project" not finished. I'll probably sell a few, switch a few from it.
Here is the current collection:


Some of the units are in a good shape. Some of them need care both outside and inside. In the following months even years I plan to restore those into working, aesthetically good condition (also with some external help).
In addition to this I plan to create a shelf to accommodate all of the units I intend to keep, and add some capabilities what fits into the design, but was not available at the time this equipment was built, like internet streaming audio.

2019. július 26., péntek

What arrived?

I continuously ordering things from various places, but frequently I don't write about.
Here are three things what I think can be interesting in some ways.
Recently I started to work on integrating my measurement equipment with my lab PC. It is getting important as I have a few measurement in my head, what requires such kind of integration.
The instruments in question have various interfaces: USB, RS232, GP-IB, Ethernet. Talking about the first three, at the end of the day the connection for the PC will require USB ports. Lots of USB ports.
So I ordered a USB hub on AliExpress.
I hope 16 ports will be enough:


Keep talking about instruments. As I see, it is handled as a fact that for measurement process control the used application is NI LabView. This software used for many things. Even the Lego is using it for controlling the Mindstorms kits. For a long time now, I'm using mainly free or open source software, if it is not available, I'm buying it.
The LabView as such is a software with horrible price tag. It is just came to my attention (you may already know it), that NI made available a Home Bundle version. Yes, it is not the latest, yes it is just for not profit home use. But, it cost $50, what can be payed by a serious hobbyist. So I have it now:


I hope, it will help me to automate my measurements.
There are running a promotion/contest by Microsoft and Avnet (https://www.element14.com/community/docs/DOC-92683/l/sensing-the-world-challenge). It is about connecting to Azure IoT.
I even have a MAPS subscription, so I have $100/month allowance for Azure.
I become an AWS guy in the last 6+ years. I feel this contest a good opportunity to widen my perspective and learn a bit more about Azure.
So, I ordered the kit for free, and it arrived yesterday:


Even, I have an idea, what to build from it.

2019. július 14., vasárnap

GP-IB 3.

More than two month elapsed since I wrote about my GP-IB adapter project.
In this two month many things happened:
Hardware:
Redesigned the board a bit (v1.1). The new version is a bit tricky. Originally I used female gender connector, what is not ideal, as it cannot be connected to the instruments directly, just through a cable. The reason: I didn't find male connector on the market on first trial for affordable price.
I had a second attempt, and now I have male connectors. I didn't wanted to put to much effort in the redesign, so just added an option to swap the USB connector to the back side of the board.
So if you populate the board with female GP-IB connector, both the connectors goes to the front side, if you use male connector, both of the connectors are goes to the back side.
This board is not ordered yet, because I want to combine it with other projects of mine.
Git:
The repository has been reorganized. I have public and private repos. Public for sharing the project, private for working on it. Now the public repo only contain the hardware design (more to come). The design packaged with my shiny new KiCAD packager. At least it makes the schematic readable to anybody. Location: https://gitlab.com/suf/suf-electronics-gpib
Software:
The software side become a bit messy.
I had problems with the original source code:
1. The original license, what makes the software "incompatible" with my design
2. As much I read this source code, more and more dislike it. Using a single .ino file, for a growing size project become unreadable, unmaintainable to me.
3. Many thing is missing from the implementation.
I started to write a completely new software based on my problems. I wasn't carefully looked around for the software implementation. My software was 50+ percent ready (mostly working already) when Szabolcs Szigeti in the comments on my post here https://www.facebook.com/groups/muszerek/permalink/2481846092072731/ pointed out (sorry, it is in Hungarian), that a different implementation also exists https://github.com/Twilight-Logic/AR488
I didn't tested it yet, but looks like solving most of my problems:
- The author by coincidence has chosen the same pins for the ones was missing from the original implementation as me (REN, SRQ). This means, this software should run without modification on my hardware
- Implemented most of the missing functions
I still have my feelings with the code structure (it become more than 3000 lines in a single file)
I had no time to test it yet, but if I can use it for the purpose I wanted, I'll probably drop (or postpone) my implementation (maybe just finishing the inevitably necessary things and release it).
Next:
- Try the things I currently have
- Order and build the upgraded design
- Decide the future of this project

2019. július 13., szombat

KiCAD packager

As I mentioned previously here: http://pakahuszar.blogspot.com/2019/07/chain-of-events.html
I started to write a program for KiCAD ot package the projects and overcome the problems when I share my designs.
Released a working (but probably buggy, and incomplete code) here: https://gitlab.com/suf/packagekicad. Please use the 0.2Beta tag
It is able to build a new symbol library (others come later) from the current environment with all of the used components in the current design, replace them in the schematic file. So when you move the project trough source control or other way, anybody can open it without missing components. Yes, the rescue lib can handle this, but asks questions, and the original KiCAD gitignore remove the cache used for rescue lib. Also doesn't handle the unintentional library upgrades.
The documentation is not yet exists. So I just write the usage here:

dotnet PackageKiCAD.dll <project name/directory>
Options:
-R Recursive
-cl Clear local symbol table. Keep only the packaged library on the list.

I'm using TortoiseGIT for my projects. It allows to automate the packaging. So the project gets packaged before every commit, if configured.
This is what I've done:
Opened the TortoiseGIT interface and selected Hook Scripts


Added a new script:


The "Run when working tree path is under" should point to the repository root in question. That's it.
Further development is coming.

2019. július 7., vasárnap

Chain of events

I always think, why I start more projects than I finish.
One cause is the chan of events. I start something, than something is missing is missing from it, what forms an other project, than I miss something from it - other project and the chain of events formed. Have several open things, nothing finished.
Check the current one:
I wanted to recreate my music listening environment. The first path is from vinyl.
1. Repaired the crossovers in my Mission 705 loudspeakers (replaced a few ancient Tesla caps)
2. Repaired my NAD 5120 turntable (removed the original built in cable, added a few RCA connectors, replaced the belt, adjusted the arm lift)
3. Wanted to build a new RIAA corrector. It is based on the award winning design from the '80s. Created by a local HiFi Magazine here in Hungary named HFM-I. Actually built it, but just wrote about it on my Hungarian language blog (http://it-pro-hu.blogspot.com/2019/02/hfm-i-ujragondolva.htmlhttp://it-pro-hu.blogspot.com/2019/03/hfm-i-2.htmlhttp://it-pro-hu.blogspot.com/2019/04/hfm-i-3.html
4. And here is the place where my "chain of events" starts. It came into my mind, that I'd like to measure what I built before put it into my system. Bought an HP 8903B Audio Analyzer (not just for this project, it was in my plans for a while already).
5. U1. I have a good set of instruments, but it wasn't a requirement to connect them to a PC until now (I was thinking, I'll do that once upon a time). For generating a graph from the 8903B it become absolutely necessary. Unfortunately didn't find a GP-IB interface what I like, so the first unplanned project born. Found an Arduino based interface, but absolutely hated the hardware, so designed a new one (http://pakahuszar.blogspot.com/2019/04/gp-ib.htmlhttp://pakahuszar.blogspot.com/2019/04/gp-ib-2.html)
U2. Didn't like the software of the interface, neither the license, nor the implementation. Started to write a completely new code from scratch (still unfinished, it will be testable soon, if it doesn't end as unfinished project as many before).
U3. Somebody asked upon my posts, if I want to sell the GPIB interface boards I created. Started to think - why not?
If I sell it, I want to organize the hardware designs and the software correctly. Don't want to publish unfinished design, or software, so I built up a git branching model for myself to achieve this. Here surfaced my old problem again. The library handling of the KiCAD is horrible. I want to publish the hardware design without external dependency (I mean, if somebody opens the schematic, get real components instead of boxes with question marks). Tried to use KiCADs archive plugin. Unsuccessfully. Registered, but it not even started. After few days of searching, asking, got no solution.
So, the Unplanned-3 project born. Create an application (not a KiCAD plugin) what automatically manage this mess on my hardware projects (I started it in .Net Core 2.1, got some progress, but this is a topic for a further post)
Let see! This is one way how my unfinished projects are born.

2019. április 29., hétfő

GP-IB 2.

The boards are arrived a few days ago.


I made a few but not fatal mistakes with the board, and left a few room for improvement also:

  • Cosmetic: the board designation is on a wrong layer
  • Order: only ordered 5 boards (I think 10 would be the same price)
  • Room for improvement: the board uses female IEEE-488 connector. With a few modifications it can be used with male connector also
  • Room for improvement: proper mounting holes
  • Room for improvement: isolated (it needs some investigation if it required)
  • Room for improvement: buffering + bus protection

During the weekend I built and tried it out


The CH340G USB Serial interface was working for the first trial.
The ISP was working for the first trial - uploaded the Arduino bootloader.
The software built and uploaded without problem.
The communication via the terminal emulator with the firmware worked without problem.

Now go and get an instrument to try it out.
As I previously mentioned, I built this interface to communicate with my HP Audio Analyzer. This equipment is not a cheap one if we are talking about a home lab, so I didn't want to sacrifice for the first test. I have several HP 3478A multimeters on hand. Two of it even not part of my lab setup.
So, I tried to communicate with it.
Half success:
When I send a command to the instrument, it does nothing.
When I send a ++read command it responds with the value actually on the instrument's screen.
I was thinking, what could be the problem.
The original design pull down the GPIB PIN 17 (REN - Remote Enable) to the ground. In my build it is connected to one of the MCU pins, to be able to further develop the project. Naturally the original firmware doesn't handle this. So I added a few lines of code to pull the REN pin to low, and the system started to work immediately.


The first goal of this project successfully achieved. The design files of the board can be find here:
https://gitlab.com/suf/suf-electronics-gpib

As the owners license of the source code doesn't allow modifications, without consent, I'm not publishing the either the original source code or my modifications. I'm intend to contact the author to discuss about the license.

Last but not least:
Many thanks for Emanuele Girlando for his great work.

2019. április 27., szombat

Home references - Resistance

It is a long standing dept for myself.
I bought a few Vishay S Series precision foil resistors to act as resistance standard for my home lab.
I was thinking what would be the best enclosure for them, and in the long thinking process finally the resistance standard process is shelved.
A few weeks ago finally I ordered small aluminum boxes and binding posts for this.
The boxes, binding posts arrived, so I put everything together. As this is a quite simple thing, so not too much to talk about. Here are the pictures:



Measured (the 4 wire mode here is unavoidable):



All of the four values (100 ohm, 1K, 10K, 100K) boxed, labeled:


After finished the labeling, I was thinking about, how can I protect the paper labels from the usual dust in the lab. Here come the advantage of being father of three school age kids. The transparent adhesive foil we use to protect the textbooks are perfect here (and I've tons on stock).

2019. április 6., szombat

GP-IB

In the past years I collected a good amount of test equipment. I mostly using them as standalone instruments (except my PC based oscilloscope).
I recently bought this nice Audio Analyzer on the eBay


I realized, that most of the measurements I bought this unit for are require PC connection.
Even I found a software for it:
http://www.pmillett.com/hp_8903_software.htm

As most of a bit aging test equipment only have HP-IB/GP-IB/IEEE-488 interface for the PC connection. No USB, Ethernet, whatever today's fancy stuff.
Buying a decent GP-IB interface is not so easy/cheap today. Yes, I found a few on various sources, but was not happy with any of it. So I decided to build my own.
Found this project on the internet:
http://egirland.blogspot.com/2014/03/arduino-uno-as-usb-to-gpib-controller.html
Based on this, I designed a board:



Ordered it, so I'm waiting to arrive, to continue the project.

2019. március 21., csütörtök

TCA530

My dear friend Peti Racz called me a few weeks ago. He asked for a Philips  TCA530 IC. This one is located in plenty of ancient radio tuners as power supply for the varicap diodes.
The IC is not in production for years now. It is only available on eBay for insane price. For $30-60 it is incredible and you not even know if it is genuine.
Fortunately there are circulating on the internet a few circuit what can replace it. He picked one for me, I looked around for explanation, datasheet, other notes to check if it is feasible. Corrected a few things on it based on notes and my thoughts.
My goal was simple. Didn't wanted to put a big wired in board, but something tiny, fits in the place of the original IC.
Here is the result:

It is just a bit larger than the original DIP-16 package, and substantially higher. I hope, it will fit.
Waiting for the result on the first tuner...

2019. február 10., vasárnap

AVR Transistor Tester

In my travel electronic case I keep an AVR Transistor Tester. This model:
Actually I've a few problems with it:
The laser cut acrylic case not cut correctly, so if I assemble it the button is continuously pressed
The LCD and the backlight not stick together so it fell apart



For not just the reason above I bought a different model with color LCD. This one:


I kept it in the drawer for a long time, as I wasn't really interested to build it. Around Christmas finally I built it, and surprise, surprise:


Got it in Russian.
Eleven years of Russian learning wasn't enough to use this in that way.
So decided to change the language.
Unfortunately you can't do it in the menu, you have to rebuild/upload it.
Started to investigate a bit. The web site of the project is here:
https://www.mikrocontroller.net/articles/AVR_Transistortester
The code is not based on the Arduino infrastructure, also the original is built on linux, and there are missing a comprehensive documentation about the build process (even it is not so complicated)

The original board has no ISP connector, so the MCU should be put somewhere else to upload the code (also there is no Arduino bootloader, so a bare UNO board is not good enough for it).
I chosen an Arduino UNO board plus a USBTiny programmer.

Steps:
1. Install some packages on Ubuntu:
apt-get install avr-libc avrdude gcc-avr make git
2. Clone the git repository
git clone https://github.com/svn2github/transistortester
3. Copy the makefile from the folder of this lcd to the default (it may not necessary and can be built in it's original location)
cp transistortester/Software/trunk/ST7735/Makefile transistortester/Software/trunk/default/
4. Go to the default directory
cd transistortester/Software/trunk/default
5. Edit the Makefile and change the programmer setting
PROGRAMMER=usbtiny
6. Build and upload the code
make
make upload

After the upload I put back the MCU into the tester. It looks like working now