Programmer also contains microcontroller. This makes clear that you need software that is run on programmer. IC programming algorithm is placed in programmers microcontroller. New program to microcontroller can be downloaded from host without any programmers.

Host software
In basic configuration you don't need special software to use on PC. Programming can be done using terminal emulation program. GUI based programming software will be available later. Because you can do programming using terminal emulation program, programmer is fully independend on OS/Cpu architecture of the host machinePC.

Programmer software
8051 family compatible microcontroller is chosen because development tools are well available. All the code is writen in C language. Software is constructed so that writing new programming algorithm is pretty easy.

Computer interface
Basic design is planned to use USB 1.0 interface to computer.
RS232 interface would be also nice for simple devices and low-end PCs. RS232 connection may be available later.

Microcontroller is chosen to be 8051 compatible microcontroller from Cypress. EZ-USB 2100 is used because it offers most of the needed functionality. And is relatiely cheap. It offers following needed functionality :
  1. Onchip USB controller
  2. Bootloader to support in system programming, so no external programming hardware is needed.
  3. Onchip 8kb program memory(hopefully thats enough)