Did I mention that I found what the config bit problem was about? It was apparently the LVP config bit that would not set and was specified in that tiny bootloader program that had the bit specified set: I interject my heartfelt thanks for this great PIC programmer software to Wolfgang B=FCscher http://freenet-homepage.de/dl4yhf/winpicpr.html And again To Dave Sullins for this Worlds most most efficient PIC Programmer Circuit! http://home.earthlink.net/~davesullins/software/pic18f.html While I have to admit that Dave Brocolly or The Porttalk driver (allowio) only worked for a brief timeframe Now (and it might be because I installed zone alarm) it hangs. Wolfgangs program works because one can configure it to almost any pinout imaginable by a little config file. However his program WinPIC does not yet support low voltage programming... so it can only read and toggle the lines... I may end up adding those resistors and use the computers own +12V for Vpp Im also wondering about the code her in the tiny bootloader (congratulations to Claudiu Chicolita http://www.etc.ugal.ro/cchiculita/software/picbootloader.htm) My question: if I use an 8MHz Quarz Oscilator ill change only the first occurence of 20000000 in the inital definition of 'xtal' or also further down ... Thanks! radix DEC LIST P=3D18F4320 ; change also: Configure->SelectDevice from Mp= lab xtal EQU 20000000 ; you may want to change: _XT_OSC_1H _HS_OSC_1H _HSPLL_OSC_1H baud EQU 115200 ; standard TinyBld baud rates: 115200 or 19200 ; The above 3 lines can be changed and buid a bootloader for the desired frequency (and PIC type) ;******************************************************************** ; Tiny Bootloader 18F series Size=3D100words ; claudiu.chiculita@ugal.ro ; http://www.etc.ugal.ro/cchiculita/software/picbootloader.htm ;******************************************************************** ; Updated to 18F4320 by Jay.slovak 2005, jay.slovak@zoznam.sk #include "..\icdpictypes.inc" ;takes care of: #include "p18fxxx.inc", max_flash, IdTypePIC #include "..\spbrgselect.inc" ; RoundResult and baud_rate #define first_address max_flash-200 ;100 words __CONFIG _CONFIG1H, _IESO_ON_1H & _FSCM_ON_1H & _HS_OSC_1H __CONFIG _CONFIG2L, _BOR_ON_2L & _BORV_20_2L & _PWRT_ON_2L __CONFIG _CONFIG2H, _WDT_OFF_2H & _WDTPS_128_2H __CONFIG _CONFIG4L, _STVR_ON_4L & _DEBUG_OFF_4L ; not anymore... : & _LVP_OFF_4L ;----------------------------- PROGRAM --------------------------------- cblock 0 crc i cnt1 cnt2 cnt3 counter_hi counter_lo flag endc cblock 10 buffer:64 dummy4crc endc SendL macro car movlw car movwf TXREG endm ;0000000000000000000000000 RESET 00000000000000000000000000 ORG 0x0000 GOTO IntrareBootloader BEGIN_NORMAL ORG 0x0004 ;Place "GOTO START" @ 0004h in your application ;view with TabSize=3D4 ;&&&&&&&&&&&&&&&&&&&&&&& START &&&&&&&&&&&&&&&&&&&&&& ;---------------------- Bootloader ---------------------- ;PC_flash: C1h U H L x ... <64 bytes> ... crc ;PC_eeprom: C1h 40h EEADR EEDATA 0 crc ;PC_cfg C1h U OR 80h H L 1 byte crc ;PIC_response: type `K` ORG first_address ;space to deposit first 4 instr. of user prog. GOTO BEGIN_NORMAL nop nop org first_address+8 IntrareBootloader ;init serial port movlw b'00100100' movwf TXSTA movlw spbrg_value movwf SPBRG movlw b'10010000' movwf RCSTA ;wait for computer rcall Receive sublw 0xC1 ;Expect C1h bnz way_to_exit SendL IdTypePIC ;send PIC type MainLoop SendL 'K' ; "-Everything OK, ready and waiting." mainl clrf crc rcall Receive ;Upper movwf TBLPTRU movwf flag ;(for EEPROM and CFG cases) rcall Receive ;Hi movwf TBLPTRH movwf EEADR ;(for EEPROM case) rcall Receive ;Lo movwf TBLPTRL movwf EEDATA ;(for EEPROM case) rcall Receive ;count movwf i incf i lfsr FSR0, (buffer-1) rcvoct ;read 64+1 bytes movwf TABLAT ;prepare for cfg; =3D> store byte before crc rcall Receive movwf PREINC0 decfsz i bra rcvoct tstfsz crc ;check crc bra ziieroare btfss flag,6 ;is EEPROM data? bra noeeprom movlw b'00000100' ;Setup eeprom rcall Write bra waitwre noeeprom btfss flag,7 ;is CFG data? bra noconfig tblwt* ;write TABLAT(byte before crc) to TBLPTR*** movlw b'11000100' ;Setup cfg rcall Write bra waitwre noconfig ;write eraseloop movlw b'10010100' ; Setup erase rcall Write TBLRD*- ; point to adr-1 writebigloop movlw 8 ; 8groups movwf counter_hi lfsr FSR0,buffer writesloop movlw 8 ; 8bytes =3D 4instr movwf counter_lo writebyte movf POSTINC0,w ; put 1 byte movwf TABLAT tblwt+* decfsz counter_lo bra writebyte movlw b'10000100' ; Setup writes rcall Write decfsz counter_hi bra writesloop waitwre ;btfsc EECON1,WR ;for eeprom writes (wait to finish write) ;bra waitwre ;no need: round trip time with PC bigger than 4ms bcf EECON1,WREN ;disable writes bra MainLoop ziieroare ;CRC failed SendL 'N' bra mainl ;******** procedures ****************** Write movwf EECON1 movlw 0x55 movwf EECON2 movlw 0xAA movwf EECON2 bsf EECON1,WR ;WRITE nop ;nop return Receive movlw xtal/2000000+1 ; for 20MHz =3D> 11 =3D> 1second delay movwf cnt1 rpt2 clrf cnt2 rpt3 clrf cnt3 rptc btfss PIR1,RCIF ;test RX bra notrcv movf RCREG,w ;return read data in W addwf crc,f ;compute crc return notrcv decfsz cnt3 bra rptc decfsz cnt2 bra rpt3 decfsz cnt1 bra rpt2 ;timeout: way_to_exit bcf RCSTA, SPEN ; deactivate UART bra first_address ;************************************************************* ; After reset ; Do not expect the memory to be zero, ; Do not expect registers to be initialised like in catalog. END On 8/7/07, Tobias Gogolin wrote: > > I got theparalel port programmer as by instructions from http://home.eart= hlink.net/~davesullins/software/pic18f.html > > It seems to work as far as being able to read the Chip type > > But I got this little error, and would appreciate if you could please give > me some hints on it... > > C:\Solix\BROCCO~1.7>writepic tbl.hex > Detecting PIC... Found PIC18F4320. > Using hex file tbl.hex. > Reading hex file... > Erasing memory from 0 to 8192... > Programming memory from 0 to 8192... > Programming configuration bytes 0-13... > pic_verify_cfg: Cfg byte 6 doesn't match > Error in pic_setcfg: No such file or directory (ENOENT) > > C:\Solix\BROCCO~1.7> > > I have to admit I don't have the chip at that moment hooked up to anything > more than the programmer not even a crystal. the program is the compiled > tiny bootloader. > > Thanks! > > > On 7/26/07, Dario Greggio wrote: > > > > Tobias Gogolin wrote: > > > > > well so far I don't like the answers I got > > > I see no reasons why a well designed simple programmer shouldn't work > > > but of course I understand where the wind is blowing from, you guys > > want to > > > sell! > > > > Well, while I agree that many programmers available for sale will save > > you lots of time and in the end money too, > > I'm still using a basic NoPPP programmer that I developed back in 2001. > > Once in a while I add some devices to the available algorhitms (main App > > is developed in C for Windows). It just works off the RS232, and has a > > power supply, a regulator and some 2 transistors. > > > > I also created a quite simple USB version for use on recent notebooks > > which don't have a serial port. In some sense this one is much more > > smart, but actually the PIC is about the only difference in the > > schematic. > > > > So, if you have time and will to learn, I ssure suggest you build your > > own and share your results. > > But, of course, it won't be quick neither cheap! > > > > > > -- > > Ciao, Dario > > -- > > ADPM Synthesis sas - Torino > > -- > > http://www.adpm.tk > > -- > > http://www.piclist.com PIC/SX FAQ & list archive > > View/change your membership options at > > http://mailman.mit.edu/mailman/listinfo/piclist > > > > > > -- > Tobias Gogolin > cel. (646) 124 32 82 > skype: moontogo > messenger: usertogo@hotmail.com > > You develop an open source motor controller at > http://groups.yahoo.com/group/GoBox > -- = Tobias Gogolin cel. (646) 124 32 82 skype: moontogo messenger: usertogo@hotmail.com You develop an open source motor controller at http://groups.yahoo.com/group/GoBox -- = http://www.piclist.com PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist