Searching \ for '[PIC:] Wisp628 not getting past the chip detection' in subject line. ()
Make payments with PayPal - it's fast, free and secure! Help us get a faster server
FAQ page: www.piclist.com/techref/microchip/devprogs.htm?key=wisp
Search entire site for: 'Wisp628 not getting past the chip detection'.

Exact match. Not showing close matches.
PICList Thread
'[PIC:] Wisp628 not getting past the chip detection'
2004\07\30@234652 by Sean A. Walberg

flavicon
face
(sorry, reposted with tag)

Hi,

I've put together a Wisp628 which I can connect to, but it's unable to
read the ID off the target chip. When I measure MCLR, it's at 8v
instead of the expected 13V.

I've switched out all the parts in the charge pump, and even gone so far
as building a new board, but I get the same thing.

The voltages on C6/7/8's positive terminals are 8, 9.5, and 9V
respectively while the pump is active. While I see about 3V on pin 9 of
the PIC, I don't see anything on 6 or 5. Since I don't have a scope, I
don't know if those last numbers are meaningful, though.

I'm not sure where to go from here... I don't have any extra
16F628-20's to try, unless a 16F648 can be used in its place.

Thanks,

Sean
--
Sean A. Walberg <spam_OUTseanTakeThisOuTspamertw.com>                 http://www.ertw.com

--
http://www.piclist.com hint: PICList Posts must start with ONE topic:
[PIC]:,[SX]:,[AVR]: ->uP ONLY! [EE]:,[OT]: ->Other [BUY]:,[AD]: ->Ads

2004\07\30@235759 by Chetan Bhargava

picon face
Hi,

What is the voltage at MCLR without the target chip connected?


On Fri, 30 Jul 2004 22:13:11 -0500, Sean A. Walberg <.....seanKILLspamspam@spam@ertw.com> wrote:
{Quote hidden}

--

Chetan Bhargava
http://www.bhargavaz.net

--
http://www.piclist.com hint: PICList Posts must start with ONE topic:
[PIC]:,[SX]:,[AVR]: ->uP ONLY! [EE]:,[OT]: ->Other [BUY]:,[AD]: ->Ads

2004\07\31@002057 by Sean A. Walberg

flavicon
face
Hello,

MCLR was 8v regardless of a chip being there or not (I had a 10K
resistor to Vcc on the breadboard).  I tried a different PIC (both a
16F648 and a '628-4) in the Wisp, and now I'm getting 13V on MCLR, but
am running into protocol problems.

[sean@bob xwisp]$ ./xwisp.py go flash.hex
XWisp 1.08, command line mode
hardware: Wisp628 1.09 (fast)
target: 16f628, revision 00 (ID=07C0)
write Code 0000Traceback (most recent call last):
 File "./xwisp.py", line 3563, in ?
   XWisp_Main()
 File "./xwisp.py", line 3560, in XWisp_Main
   Wisp_Line().Interpret()
 File "./xwisp.py", line 3180, in Interpret
   self.Execute( Command )
 File "./xwisp.py", line 3162, in Execute
   exec( 'self.CMD_' + Command.upper() + '()' )
 File "<string>", line 1, in ?
 File "./xwisp.py", line 2595, in CMD_GO
   Regions = self.Selection )
 File "./xwisp.py", line 2250, in Write_Verify
   self.Write( Image, [ Region ], Warn = ( Region == Region_Fuses ) )
 File "./xwisp.py", line 2163, in Write
   self.Put( Address, Image.Get( Address ))
 File "./xwisp.py", line 2048, in Put
   self.Bus.Send_Expect(( '%04X' % Data ) + 'w' )
 File "./xwisp.py", line 915, in Send_Expect
   raise self.WBus_Protocol_Error, \
__main__.WBus_Protocol_Error: send='0185w' received='0185?'

As I understand it, the ? means it didn't understand the 'w' command.
AFAICT, I'm using the latest software on both the programmer and my
computer.

Thanks,

Sean

On Fri, 2004-07-30 at 22:57, Chetan Bhargava wrote:
{Quote hidden}

--
Sean A. Walberg <EraseMEseanspam_OUTspamTakeThisOuTertw.com>                 http://www.ertw.com

--
http://www.piclist.com hint: The list server can filter out subtopics
(like ads or off topics) for you. See http://www.piclist.com/#topics

2004\07\31@002321 by Wouter van Ooijen

face picon face
> The voltages on C6/7/8's positive terminals are 8, 9.5, and 9V
> respectively while the pump is active.

Measure again without the target circuit removed (no load) to check
whether the load is to blame. Re-check the polarity of your caps, it
looks like you might have revesed for instance C7.

The 16F648A, 16F628A or 16F628 can be used in a Wisp628, but I doubt it
is the chip that is to blame.

Wouter van Ooijen

-- -------------------------------------------
Van Ooijen Technische Informatica: http://www.voti.nl
consultancy, development, PICmicro products

--
http://www.piclist.com hint: The list server can filter out subtopics
(like ads or off topics) for you. See http://www.piclist.com/#topics

2004\07\31@032908 by Wouter van Ooijen

face picon face
> MCLR was 8v regardless of a chip being there or not (I had a 10K
> resistor to Vcc on the breadboard).  I tried a different PIC (both a
> 16F648 and a '628-4) in the Wisp, and now I'm getting 13V on MCLR,

note: don't call the thing WISP, that's a different design.

strange, maybe one pin of the original PIC was dead or not connected
properly.

> but
> am running into protocol problems.

That's not a protocol problem, it indicates that the writing of the very
first address failed. The programmer did recognise the traget chip, so
it is basically working.

Did you by any chance omit a decoupling cap? 100nF + 10u or higher is
realy required, both at the target and at the PIC in the Wisp628.

Wouter van Ooijen

-- -------------------------------------------
Van Ooijen Technische Informatica: http://www.voti.nl
consultancy, development, PICmicro products

--
http://www.piclist.com hint: The list server can filter out subtopics
(like ads or off topics) for you. See http://www.piclist.com/#topics

2004\07\31@123621 by Sean A. Walberg

flavicon
face
On Sat, 2004-07-31 at 02:29, Wouter van Ooijen wrote:

> That's not a protocol problem, it indicates that the writing of the very
> first address failed. The programmer did recognise the traget chip, so
> it is basically working.
>
> Did you by any chance omit a decoupling cap? 100nF + 10u or higher is
> realy required, both at the target and at the PIC in the Wisp628.

I hadn't put any decoupling caps on the target, but the Wisp628 is
exactly like your schematic and notes.  I then put .1uF across the
target's +5 and GND, and 10uF on both breadboard rails, still the same
thing.  I also tried 220pF from the target's ICSP clock to ground.

Is there any way to slow down the programming from within xwisp?  I had
problems with my JDM programmers that was fixed by increasing the delays
from within the programming software.

Thanks,

Sean

--
Sean A. Walberg <seanspamspam_OUTertw.com>                 http://www.ertw.com

--
http://www.piclist.com hint: The list server can filter out subtopics
(like ads or off topics) for you. See http://www.piclist.com/#topics

2004\07\31@124241 by Rob Hamerling

flavicon
face
Sean A. Walberg wrote:

> I've put together a Wisp628 which I can connect to, but it's unable to
> read the ID off the target chip. When I measure MCLR, it's at 8v
> instead of the expected 13V.

Is the pull-up resistor of /MCLR on the target board at least 33K, as
the Wisp628 doc recommends?

Regards, Rob.


--
Rob Hamerling, Vianen, NL phone +31-347-322822
homepage: http://www.robh.nl/

--
http://www.piclist.com hint: The list server can filter out subtopics
(like ads or off topics) for you. See http://www.piclist.com/#topics

2004\07\31@130811 by Sean A. Walberg

flavicon
face
On Sat, 2004-07-31 at 11:41, Rob Hamerling wrote:
> Sean A. Walberg wrote:

> Is the pull-up resistor of /MCLR on the target board at least 33K, as
> the Wisp628 doc recommends?

Hi, Rob.  I've used 10K and 47K with no positive results.  The problem
with the voltage turned out to be the PIC itself, however I am now
running into problems programming the chip after it detects.

Thanks,

Sean

--
Sean A. Walberg <@spam@seanKILLspamspamertw.com>                 http://www.ertw.com

--
http://www.piclist.com hint: The list server can filter out subtopics
(like ads or off topics) for you. See http://www.piclist.com/#topics


'[PIC:] Wisp628 not getting past the chip detection'
2004\08\01@135840 by Sean A. Walberg
flavicon
face
On Sat, 2004-07-31 at 11:35, I asked:

> Is there any way to slow down the programming from within xwisp?

I tried TPROG 255, but that didn't help.  I can successfully read the
contents of a chip.  Erasing seems to work, it's just the writing that
doesn't.  It always seems to fail at the same spot, the 5th write
command.

The ICSP circuit works with my JDM programmer, I have coupling caps and
a 47K resistor from target MCLR to +5.

The transcript of a write session is below.  I'd appreciate any advice
on how to proceed, since I'm at a loss.

Thanks,

Sean

[sean@bob xwisp]$ ./xwisp.py VERBOSE WRITE FLASH.HEX
XWisp 1.08, command line mode
0.330 Connect( ... )
0.330 Clear()
0.330 Send_Slowly( "0000h" )
0.330 Send_Char( '0' )
0.330 Send_Char done
0.330 Send_Char( '0' )
0.330 Send_Char done
0.330 Send_Char( '0' )
0.330 Send_Char done
0.330 Send_Char( '0' )
0.330 Send_Char done
0.330 Send_Char( 'h' )
0.330 Send_Char done
0.330 Clear()
0.330 Send_Expect( "t" )
0.330 Send_Receive( "t" )
0.330 Send_Char( 't' )
0.330 Send_Char done
0.330 Receive_Char()
0.330 Received = 'T'
0.330 Response='T'
0.330 Get( N=None )
0.330 Send_Receive( "n" )
0.330 Send_Char( 'n' )
0.330 Send_Char done
0.330 Receive_Char()
0.330 Received = ' '
0.330 Response=' '
0.330 Send_Receive( "n" )
0.330 Send_Char( 'n' )
0.330 Send_Char done
0.330 Receive_Char()
0.330 Received = 'W'
0.330 Response='W'
0.330 Send_Receive( "n" )
0.330 Send_Char( 'n' )
0.330 Send_Char done
0.330 Receive_Char()
0.330 Received = 'i'
0.330 Response='i'
0.330 Send_Receive( "n" )
0.330 Send_Char( 'n' )
0.330 Send_Char done
0.330 Receive_Char()
0.330 Received = 's'
0.330 Response='s'
0.330 Send_Receive( "n" )
0.330 Send_Char( 'n' )
0.330 Send_Char done
0.330 Receive_Char()
0.330 Received = 'p'
0.330 Response='p'
0.330 Send_Receive( "n" )
0.330 Send_Char( 'n' )
0.330 Send_Char done
0.330 Receive_Char()
0.330 Received = '6'
0.330 Response='6'
0.330 Send_Receive( "n" )
0.330 Send_Char( 'n' )
0.330 Send_Char done
0.330 Receive_Char()
0.330 Received = '2'
0.330 Response='2'
0.330 Send_Receive( "n" )
0.330 Send_Char( 'n' )
0.330 Send_Char done
0.330 Receive_Char()
0.330 Received = '8'
0.330 Response='8'
0.330 Send_Receive( "n" )
0.330 Send_Char( 'n' )
0.330 Send_Char done
0.330 Receive_Char()
0.330 Received = ' '
0.330 Response=' '
0.330 Get result "Wisp628"
0.330 Send_Expect( "v" )
0.330 Send_Receive( "v" )
0.330 Send_Char( 'v' )
0.330 Send_Char done
0.330 Receive_Char()
0.330 Received = 'V'
0.330 Response='V'
0.330 Get( N=None )
0.330 Send_Receive( "n" )
0.330 Send_Char( 'n' )
0.330 Send_Char done
0.330 Receive_Char()
0.330 Received = ' '
0.330 Response=' '
0.330 Send_Receive( "n" )
0.330 Send_Char( 'n' )
0.330 Send_Char done
0.330 Receive_Char()
0.330 Received = '1'
0.330 Response='1'
0.330 Send_Receive( "n" )
0.330 Send_Char( 'n' )
0.330 Send_Char done
0.330 Receive_Char()
0.330 Received = '.'
0.330 Response='.'
0.330 Send_Receive( "n" )
0.330 Send_Char( 'n' )
0.330 Send_Char done
0.330 Receive_Char()
0.330 Received = '0'
0.330 Response='0'
0.330 Send_Receive( "n" )
0.330 Send_Char( 'n' )
0.330 Send_Char done
0.330 Receive_Char()
0.330 Received = '9'
0.330 Response='9'
0.330 Send_Receive( "n" )
0.330 Send_Char( 'n' )
0.330 Send_Char done
0.330 Receive_Char()
0.330 Received = ' '
0.330 Response=' '
0.330 Get result "1.09"
hardware: Wisp628 1.09 (fast)
0.330 Identify()
0.330 Get_ID()
0.330 Set_Region( 13 )
0.330 Get( 2006 )
0.330 __GoTo( 2006 ) self.Address=FFFFFFFF Region=Device Reading=0
0.330 __Start_Programming() Region=Device
0.330 Send_Expect( "000fx" )
0.330 Send_Expect( "002006m" )
0.330 Send_Expect( "r" )
0.330 Get( N=4 )
0.330 Get result "07C0"
0.330 CODE=07C0 REV=0000 ID=07C0
0.330 Read( ... )
0.330 Set_Region( 10 )
0.330 __GoTo( 0000 ) self.Address=FFFFFFFF Region=Code Reading=1
0.330 __Start_Programming() Region=Code
0.330 Send_Expect( "005cx" )
0.390 Set_Region( 11 )
0.390 __GoTo( 2100 ) self.Address=FFFFFFFF Region=Data Reading=1
0.390 __Start_Programming() Region=Data
0.390 Send_Expect( "000dx" )
0.390 Set_Region( 12 )
0.390 __GoTo( 2000 ) self.Address=FFFFFFFF Region=ID Reading=1
0.390 __Start_Programming() Region=ID
0.390 Send_Expect( "000fx" )
0.390 Set_Region( 14 )
0.390 __GoTo( 2000 ) self.Address=FFFFFFFF Region=Fuses Reading=1
0.390 __Start_Programming() Region=Fuses
0.390 Send_Expect( "000fx" )
target: 16f628, revision 00 (ID=07C0)
0.390 Write( ... )
0.390 Set_Region( 10 )
0.390 Put( 0000 )
0.390 __GoTo( 0000 ) self.Address=FFFFFFFF Region=Code Reading=0
0.390 __Start_Programming() Region=Code
0.390 Send_Expect( "000cx" )
0.390 Send_Expect( "0185w" )
0.390 Put( 0001 )
0.390 __GoTo( 0001 ) self.Address=0000 Region=Code Reading=0
0.390 Send_Expect( "i" )
0.390 Send_Expect( "3007w" )
0.390 Put( 0002 )
0.390 __GoTo( 0002 ) self.Address=0001 Region=Code Reading=0
0.390 Send_Expect( "i" )
0.390 Send_Expect( "009Fw" )
0.390 Put( 0003 )
0.390 __GoTo( 0003 ) self.Address=0002 Region=Code Reading=0
0.390 Send_Expect( "i" )
0.390 Send_Expect( "1683w" )
0.390 Put( 0004 )
0.390 __GoTo( 0004 ) self.Address=0003 Region=Code Reading=0
0.390 Send_Expect( "i" )
0.390 Send_Expect( "1303w" )
0.390 Put( 0005 )
0.390 __GoTo( 0005 ) self.Address=0004 Region=Code Reading=0
0.390 Send_Expect( "i" )
0.390 Send_Expect( "3000w" )
0.390 Put( 0006 )
0.390 __GoTo( 0006 ) self.Address=0005 Region=Code Reading=0
0.390 Send_Expect( "i" )
0.390 Send_Expect( "0085w" )
Traceback (most recent call last):
 File "./xwisp.py", line 3563, in ?
   XWisp_Main()
 File "./xwisp.py", line 3560, in XWisp_Main
   Wisp_Line().Interpret()
 File "./xwisp.py", line 3180, in Interpret
   self.Execute( Command )
 File "./xwisp.py", line 3162, in Execute
   exec( 'self.CMD_' + Command.upper() + '()' )
 File "<string>", line 1, in ?
 File "./xwisp.py", line 2841, in CMD_WRITE
   self.CMD_PUT()
 File "./xwisp.py", line 2681, in CMD_PUT
   self.Bus_Target.Write( self.Patched_Image(), self.Selection )
 File "./xwisp.py", line 2163, in Write
   self.Put( Address, Image.Get( Address ))
 File "./xwisp.py", line 2048, in Put
   self.Bus.Send_Expect(( '%04X' % Data ) + 'w' )
 File "./xwisp.py", line 915, in Send_Expect
   raise self.WBus_Protocol_Error, \
__main__.WBus_Protocol_Error: send='0085w' received='0085?'




--
Sean A. Walberg <KILLspamseanKILLspamspamertw.com>                 http://www.ertw.com

--
http://www.piclist.com hint: The PICList is archived three different
ways.  See http://www.piclist.com/#archives for details.

2004\08\01@141125 by Wouter van Ooijen

face picon face
> The transcript of a write session is below.  I'd appreciate any advice
> on how to proceed, since I'm at a loss.

things to check/do
- check contacts between the PGM/PGD pins out of the Wisp628-PIC right
up to the target PIC (I have heard from people who had a hairline crack
in their PCB and got intermittent results due to
capacitivi/high-resistive coupling)
- make sure the wires are short
- is your +5V realy 5.0 Volt?
- after the writing fails, read the chip. what is the content of the
failing location?
- try GO instead of WRITE

Wouter van Ooijen

-- -------------------------------------------
Van Ooijen Technische Informatica: http://www.voti.nl
consultancy, development, PICmicro products

--
http://www.piclist.com hint: The PICList is archived three different
ways.  See http://www.piclist.com/#archives for details.

2004\08\02@142707 by Sean A. Walberg

flavicon
face
On Sun, 2004-08-01 at 13:10, Wouter van Ooijen wrote:
> things to check/do
> - check contacts between the PGM/PGD pins out of the Wisp628-PIC right
> up to the target PIC
> - is your +5V realy 5.0 Volt?

I'll grab a digital multimeter from work tomorrow to check.  My cheap
analogue meter says that the traces are good, and that the supply is 5v
(I'm using a supply built into my breadboard, and also tried a 7805 of
my own)

> - make sure the wires are short

I'm using a 20cm cable that came with my Olimex PG2C, and the leads on
the breadboard are only a few cm themselves...

> - after the writing fails, read the chip. what is the content of the
> failing location?

With a 16f628, it fails on the first location, and nothing is in memory
at that location.  On a 16f648, it writes the first five words, and
fails on the sixth.

:0E 0000 00 8501 0730 9F00 8316 0313 0030 0311 A3
:08 4000 00 8501 0730 9F00 8316 C3
:02 400E 00 FF3F 72
:00 0000 01 FF

I'm not sure why some of the words are duplicated at 0x4000.  Instead of
the 0x0311, it was supposed to be 0x8500 (the location was previously
clear)

> - try GO instead of WRITE

Wilco.

Thanks,

Sean

--
Sean A. Walberg <RemoveMEseanTakeThisOuTspamertw.com>                 http://www.ertw.com

--
http://www.piclist.com#nomail Going offline? Don't AutoReply us!
email spamBeGonelistservspamBeGonespammitvma.mit.edu with SET PICList DIGEST in the body

More... (looser matching)
- Last day of these posts
- In 2004 , 2005 only
- Today
- New search...