[SOLVED] Project to replace CY7C64613 in the ICD2

Status
Not open for further replies.
pic18f8722 disassembler

Max734 is an another choice for Vpp at 120mA with DIP & SMT.

We can get some sample from Maxim IC.
 

icd2 tiny icd0021

This DC DC converter works for me. The 10F200 is used as an oscillator. The GREEN LED may be replaced by RED LED if you need a lower voltage. The LED also works an a power on indicator.

Cheers

Ravi
 

pic18f corrupt mclr

 

ez-usb control panel hangs when program eeprom

Nick you are right if it's working @24MHz it's OK, I've choosen 20MHz to run not faster than the 877.
Don't use same crystal with the two PICs, it can be a possible bug source. (it's cheap, use two)

VoltageDrop: Iam also interested in the QFP version, smaller the better!
 

icd2w2kl.sys 文件

I think, we can build the simplest vpp source with Linear's LT1172. The schematic we need, is at the bottom of the first page in the datasheet. Only the voltage divider resistors at the FB pin must be changed. I have tested it, and it works fine.
 

error setting mclr vdd

Ok guys you have caught me out , i will have to start from the beging and read every single thread, I know i was being cheeky and some one would of sent me a PM with the code,
see the problem i have a do not fully understand ASM as i use pic basic but i will try and understand it

cheers from a cheeky wizpic

Give me some credit for trying LOL
 

icd2-rs232 pic24f

NICK7 said:
Hi to all
(for creating VPP I am planning to use TI TL497 and I have already tested it successfully in breadboard)

Try TPS6734, easier to implement...
 

icd2 clone 18f4550

I think i ahve found the file that i need is it called bootz.hex

if so what can i usr to disasemble it to make Brems change that are on this project

please help

thanks

wizpic
 

rj12 eagle 3d

Import it into MPLAB and View/Program Memory. You can then edit each line of code and export back to a hex file and burn with a programmer of your choice. Speaking of which, I'm having trouble with my bootz file and I think it's Brem's second change that isn't working. Is the opcode for address 0002 supposed to be 6AF0?
 

etekronics-jdm

Voltagedrop

Insert the instruction

CLRF 0xF,1

If you leave ",1", the instruction will change

Cheers

Ravi
 

usbvid_04d8&pid_8001 driver

Iv'e imported ot has you said and this is all i get

Line Address Opcode Disassembly

34 0042 FFFF NOP
35 0044 FFFF NOP
36 0046 FFFF NOP
37 0048 FFFF NOP
38 004A FFFF NOP
39 004C FFFF NOP
40 004E FFFF NOP
41 0050 FFFF NOP
42 0052 FFFF NOP
43 0054 FFFF NOP
44 0056 FFFF NOP
45 0058 FFFF NOP
46 005A FFFF NOP
47 005C FFFF NOP
48 005E FFFF NOP
49 0060 FFFF NOP
50 0062 FFFF NOP
51 0064 FFFF NOP
52 0066 FFFF NOP
53 0068 FFFF NOP
54 006A FFFF NOP
55 006C FFFF NOP
56 006E FFFF NOP
57 0070 FFFF NOP
58 0072 FFFF NOP
59 0074 FFFF NOP
60 0076 FFFF NOP
61 0078 FFFF NOP
62 007A FFFF NOP
63 007C FFFF NOP
64 007E FFFF NOP
65 0080 FFFF NOP
66 0082 FFFF NOP
67 0084 FFFF NOP
68 0086 FFFF NOP
69 0088 FFFF NOP
70 008A FFFF NOP
71 008C FFFF NOP
72 008E FFFF NOP
73 0090 FFFF NOP
74 0092 FFFF NOP

and there is just loads pf all like that above am i doing smothing wrong or this is what it does look like i do not fully stand that stuff

sny helpers

wizpic
 

16f628a problem 0x3fff

WIZPIC,

If you have imported the file properly, you will see some codes when you select SYMBOLIC.

Cheers

Ravi
 

dspic30f3014 icdwarn0020:

Well done to all and specially to Zedman, Bren, predrage, Rok..etc. I have tried the 4550 setup with the mods posted in this forum, they work well. I wanted to make a few comments about the Charge pump power supply. The *.Dev files (open with note pad)in the mplab directory gives details of programming voltage, which is slightly different for many devices. So it is advisable for a variable power supply. The ICD2.gif ,mc34063 power supply works very well. I have built a RS232 ICD2 using the circuit at h**p//www.mcu.cz, it works perfectly. This has a 877A and you guys know what boot loader to use for this. This version has been tested on all versions including 7.31. The replacement with 18f4550 should work well. If you see in the PICKIT2 variable voltage is employed, so in all probability, Microchip is going to maintain different voltages for programming.

Thanks guys you made my day!!!

Has anyone on this forum made a PICKIT2 from the schematics?? and suceeded??
 

clone icd2 edaboard mclr pb

"Has anyone on this forum made a PICKIT2 from the schematics?? and suceeded??"

I have made a PCB for the PICkit2 with some modifications to the original schematic. I am yet to populate it and test it. As soon as I do it, I will post a mesage in this topic.

Cheers

Ravi
 

mplab icd2 vdd modify

Hi Guys,

I tried to follow your mails in this thread as close as possible - however - I am stuck now...

I hope you can answer some questions I have about the thread and the prototype...

First of all what is the CPU speed of the ICD? I have read 24, 20 and 48. Currently mine is running with 12MHZ Crystal and PLL/2 -> should be 48 right? Is that the speed you are runnung the CPUs?

I saw in one the mails in this thread that there are Labels entered in the MPLAB Program Memory view. I don't think they are in the BIN files? Or does MPLAB automagically create them somehow with information it gets from the HEX converted BINs?

I am using the BOOTZ.HEX provided in one of the earlier posts and added the


1 MOVLB 0
2 CLRF 0xf0, BANKED
3 GOTO 0x1fdc
4 NOP
5 GOTO 0x1f9c
...
13 GOTO 0x1f9c

instructions and tried to enumarte the ICD with RA4 low and RB7 high. However does only enumerate with RB7 low. Then after a couple of seconds (1minute?) it says

Connecting to MPLAB ICD 2
ICD0289: Unable to re-program ICD2 USB OS firmware.
ICD0021: Unable to connect with MPLAB ICD 2
MPLAB ICD 2 Ready

and I still can only enumerate with RB7 low. I tried to read the µC - however there seems still no OS at 0x2800.

I have not connected any 877 up until now. I think it is not needed at this stage?

Can somebody help me out here?

Many Thanks,
Manuel
 

mode interruption de 16f876a

I'll try to recap before it sinks away.

You start with the 2 files in the icd directory: ICD2_4550_BOOT_0180.bin & ICD2_4550_OS_0100.bin. The OS file does not need any changes (for now), the BOOT file needs be to converted to a hex file, and needs to be modified.

Convert the BOOT file to a HEX file with a utility bin2hex.exe, which you can find on the net.

bin2hex /O0x80 BOOT.BIN

- It's a DOS utility so dont use long filenames.
- The BIN data should be loaded at address 0x0080, therefor the option "/O0x80"


Now there is a BOOT.HEX which you can import into MPLAB. You should see:
Code:
0080   434D   RRNCF 0x4d, F, BANKED
...
1FDC   EE17   LFSR 0x1, 0x700
...

It needs 2 changes:

- Reset & interrupt vectors have to be added
- Register at 0xF0 needs to be cleared

Code:
0000   0100   MOVLB 0
0002   6BF0   CLRF 0xF0, BANKED
0004   EFEE   GOTO 0x1dfc
..
0008   GOTO 0x2808
..
0018   GOTO 0x1f9c
Somehow MPLAB does not let you enter "CLRF Oxf0, BANKED", you'll have to edit the opcode.

Now the file can be programmed in your 4550 (or 2550,2455..), and it should enumerate as an ICD2. Config settings are straight foreward, USB on, the correct PPLDIV for your crystal and let the CPU run at 48Mhz.

The hardware for the bootloader:
- a LED at RC1 (optional)
- RA4 should be low
- RB7 should be high

I'm not sure about the function of RA4. When its high the bootloader just goes into an endless loop flashing RC1.

RB7 is the "force bootload" switch. During normal operation the bootloader should only do a "GOTO 0x2800" to start the OS. However it will not do this if one of 3 conditions is true:

- RB7 is low, bootload requested by hardware
- Reg 0xF0!=0, bootload requested by software(??)
- No OS loaded yet, sum of all bytes in 0x2800-end should be 0 for a valid OS

The first time it is started there will be no OS so the bootloader will keep running. When you connect to it in MPLAB the OS will be downloaded, the bootloader will restart and... ding-dong, the OS will be started.

Now you have connect the OS to the 877, which I never did. I only remember you need to connect PORTD to PORTD. Maybe someone else can continue from here..


There is still a problem where the program in the 4550 gets corrupted after a quick disconnect/reconnect. It's annoying and hard to reproduce so not much fun investigate.

Manuel: The labels were added "auto-manually"

Added after 13 minutes:

I never built a PICKIT but I am using it's charge-boost example for Vpp. It needs a PWM output. This can be combined with a 877 but it requires a modified (rewritten) OS for the 4550.
 

icd0024: communications: failed to write ($7f00

Ok, here is my version, leech it use it throw it away, BUT remember to leave credit to me and Brem and all the guys who helped in this thread.

Anyone working on a schematic/PCB using the ideas thrown up here?

Brem, I set the boot block table write protection bit to avoid that annoying random 64 byte writes, it protects only from 0x0000-0x0800 and disables further bootloader updates (OS can be updated), but it seems to work.

(hex is set for 20MHz crystal)
 

icd2w2k.sys

From everyone comment.
I have error in MPLAB

Code:
Connecting to MPLAB ICD 2
ICD0289: Unable to re-program ICD2 USB OS firmware.
ICD0021: Unable to connect with MPLAB ICD 2
MPLAB ICD 2 Ready

have any idea ?

thanks in advance
 

<084de0>

I'm working on the pcb. I currently draw the schematic, and will place here, to check for errors.
 

887 icd2

Zedman said:
Anyone working on a schematic/PCB using the ideas thrown up here?

I am going to make the QFP and DIP versions I mentioned earlier as soon as I get my danged prototype working It looks like I'm not oscillating but it could be the cheap chinaprobe on my scope squashing the crystal. I have some SO and DIP maxim charge pumps on the way too

Oh, one more thing. NICK's schematic shows an LED on RC2 but most people mention putting one on RC1... are these for two different purposes?
 

Status
Not open for further replies.
Cookies are required to use this site. You must accept them to continue using the site. Learn more…