Hi Olin Even the longest times mentioned are not a big deal compared to the time of the other tests especially the RF testing. If programming time becomes an issue I'll be able to easily justify more test stations. Serial port cards are not that expensive and I've had better luck with those as far as reliability goes over the USB to serial converters.............but I've only have one USB to serial doo dad and it was an early model. Because of the reliability requirements of my customer an extra pass on the device with a different VDD level is a good thing in my mind. We are a small company and a recall would kill us at these volumes. So it looks like the Pro is the better part of valor for my situation. I'll have my purchasing guy place an order in a few days. Phillip Things should be as simple as possible but no simpler Phillip Coiner CTO, GPS Source, Inc. Your source for quality GNSS Networking Solutions and Design Services, Now! -----Original Message----- From: piclist-bounces@mit.edu [mailto:piclist-bounces@mit.edu] On Behalf Of Olin Lathrop Sent: Thursday, December 07, 2006 5:34 AM To: Microcontroller discussion list - Public. Subject: Re: [PIC] Olin's USB programmer for production?? Mark Rages wrote: >> Empty Full >> USBProg (USB) 2.5 12.2 >> USBProg (ser) 2.1 11.8 >> ProProg 6.4 16.5 >> EasyProg 4.4 14.3 >> > > You could save time by skipping one of the readback passes, as > two-voltage verification is not specified for the 16F676. This is > required for OTP and legacy parts like the 16F84. I have recently added the -VDD command line option on PIC_PROG. That tells the program to use that single Vdd level for all operations, which also causes it to do only one verify pass. A single Vdd level could also be specified in the PICPRG.ENV file for that PIC. However you're not going to save much since the bulk of the time is spent writing, not reading. The 16F676 requires 8mS/word, which is the limiting factor in this case. This can also be seen from the large difference between the full and empty times. The only difference between them is that the HEX file specified the erased value in the empty case and random values in the full case. The programming algorithm therefore skipped all ordinary program memory and EEPROM writes in the empty case. The absolute minimum time to write to all the program memory and EEPROM of a 16F676 is (1024 prog mem words + 128 EEPROM bytes) x 8mS = 9.2 seconds. Note that my fastest case is only 2.6 seconds more than that. The time to start the program, inquire the programmer firmware capabilities, determine the target chip type, perform the Vdd and Vpp manipulations with settling time, read the calibration constants and restore them after erasing, do the bulk erase, round the 8mS wait time up to the nearest whole internal clock ticks, and perform two full readbacks of the chip all come out of the remaining 2.6 seconds. You just aren't going to save a lot of time eliminating one of the readback passes in this case. ******************************************************************** Embed Inc, Littleton Massachusetts, http://www.embedinc.com/products (978) 742-9014. Gold level PIC consultants since 2000. -- http://www.piclist.com PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist -- http://www.piclist.com PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist