Project Description

What is In-System Programming? 

In-system programming means to perform the flashing processor in production line, and usually the flashing process is achieved at the end of the line. At the end we find an in-site test or a functional test, however, the In-System Programming is performed just before the functional test.

In the last 15 years many EMS switched from pre-programming solutions into In-System Programming solutions because they have different benefits. 

What is the major benefit of In-System Programming solution? 

In-System Programming solution gives to the production environment much more flexibility. 

Let’s have a look at two examples that explain best some situations where In-System Programming would help you. 

Example 1: 

If you are going to produce hundreds of millions of boards and the R&D discovers there’s a bug in the firmware which is now being flashed inside all these boards. 

With In-System Programming you can easily update the firmware even with a board already mounted. With pre-programming solutions, you are not able to do this and you are forced to throw away the board with the defective firmware or, in the best-case scenario, you have to replace the device already mounted on the board, wasting time and, therefore, money.

Example 2:

You can do customization on the board being produced, like doing serial numbering or put mac addresses and all information that must be unique inside the device. 

All these features made In-System Programming the best choice for EMS manufacturers.  

What is the difference between In-System Programming and Pre-Programming? 

In Pre-Programming solutions, the chip must be programmed in advance and then it can be installed into the system.

Instead, in In-System Solutions, devices are programmed while they are embedded and installed in the system. 

That permits to save time and costs.