Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

[SOLVED] Project to replace CY7C64613 in the ICD2

Status
Not open for further replies.
dspic icd2 icd0200

Hey Rkodaira,

look here, this programmer supports 4550:
**broken link removed**

It can be used with the traditional EPIC programmer, you can find the schematics on edaboard. If you want to build one.

I set the config up to MCU run @20MHz from OSC1/2, the USB uses clock from the 96MHz PLL/2. CPU divide 5. HSPPL and USB-HS.

According the timeshift I am in Hungary in middle Europe. It's GMT+1 i think. :)
 

18f4550

rkodaira said:
Hi Zedman !
One curiosity: where do you come from or where are all of you located ? Just to know because the local time (fuses) are different and there are some delays in reading and answering the messages. I am located at Sao Paulo - Brasil (GMT - 3)

I'm in france so GMT+1 with daylight saving time actually..so must be GMT+2
 

picburner usb germany

Yes, Krip you are right, it's GMT+2.

Added after 2 minutes:

Rkodaira, would you please check what do you have on these ports:

PORTC.1
PORTC.2
PORTA.0
PORTA.4

PORTD

PORTE.0
PORTE.1
PORTE.3

thanks
 

lt1172 eagle

hi, i find this very interesting. but is there a complete circuit for this project? apart from that, what are the differences between this and the ori ICD2 (in terms of performances)? what about the speed? are they the same?
 

chipid pic16f887

4550 is the official Mchip replacement for the obsolete cypress chip in the earlier ICD2s. They provided bootloader and OS for the new chip with MPLAB.
This project is started to figure out how the new ICD2 works, how to download and use the given FW and to discover the circuit changes.
There's no impact on speed/performance (at least I can't see any differences yet), just the replacement of the USB bridge chip.

You are also welcome to help us.
 

pic32 starter kit hex files

Brem, Albert?

Any results? Progress?
 

pic pl2303 pic 16f877

Zedman, your request:

PORTC.1 pin 16 is not connected
PORTC.2 pin 17 is connected to a led+resistor to indicate USB connection
PORTA.0 pin 2 is not connected
PORTA.4 pin 6 is not connected

PORTD all 8 ports (SPP) are connected to the correspondent pins of 16F877 (PSP)

PORTE.0 pin 8 (CK1SPP) is connected to pin 9 of 877 (WR)
PORTE.1 pin 9 (CK2SPP) is connected to pin 8 of 877 (RD)
PORTE.3 pin 1 (MCLR) is connected to a reset circuitry (resistors + mosfet)

PORTA.1 pin 3 is connected to Vdd via 10k resistor
[/b]
 

classguid 18f4550

thanks!

Iam @work now for 3 more hours, but can't wait to get home to use your infos! 8)

Added after 49 seconds:

Just got your reply in time with no timeshift! :)

Added after 21 minutes:

Rkodaira,

that pullup resistor on PORTA.1 makes me suspicious, maybe we are developing different versions...
Would you please check in BusHound:

Devices Tab/Properties(down the bottom)/Hardware ID: USB\VID_xxxx&PID_xxxx&SUBSYS_xxxxxxxx&REV_xx

thanks in advance!
 

pickit2 4066

Zedman, you are lucky, i had noticed this information before and kept it.
Here it is:

USB\VID_04D8&PID_8001\5&3278073A&0&2

I got it not from the Bushound, but from another way, but i thought it could be useful some time. I don´t know if the numbers following the PID number are the SUBSYS and REV numbers (it should be).
 

проблем с brener8

It seems revision number is different. I strongly think that you have a version like Brem developed -> a custom USB bridge. And it's may not be compatible with Mchip's 4550 fw updates. Anyway it works for you, and fast!
Thanks for the infos!
 

driver usb rs232 redfox

From reading the 877 firmware I know that it expects USB data via PORTD, and RS232 data is received over the 877 UART (MOVF RCREG, W). I dont know how it decides to use USB or RS232.

I understand your aim is to build an ICD with a 877, and a 4550 for the USB part, using the 4550 firmware provided by Microchip? Are you sure the new ICD will still contain a 877? Why would they have chosen a chip with such a high number of pins for such a simple task?


Oh and I'm from Amsterdam, the NetherLands (GMT+2)
 

pic18f4550 corrupt flash

I think they will use 16F877 for legacy purposes, so that they don't have to re-write all the firmwares, as 16F code is not compatible with 18F.

And they chose 18F4550 for it's SPP - streaming paralel port, which simplifies things a lot.

There is a small chance, that they will 'upgrade' PICkit2 into new ICD (ICD3 ???), as it's design is more advanced (good Vpp charge pump, variable target Vdd...) and cheaper to manufacture. It even contains 1Mbit of EEPROM space which is not used in current firmware...

PS: I am in Slovakia, so it's GMT+2 here (DST active).
 

icd2 pic16f877 vpp too low

Jay is in the neighborhood :D

Added after 1 minutes:

They are not using the SPP in the 4550 fw.
 

icd2 clone

Zedman said:
They are not using the SPP in the 4550 fw.

Hmm, that is pretty interesting, I thought they do. Then there is no reason for 4550, 18F2455 could do the work as well (cheaper & smaller).

PS: 'Neighbourhood' sounds funny, considering we are probably couple hundred kilometers appart :D
 

icdwarn0052 pic24

I think they've choosen 4550 for future things, that's why even the bootloader is upgradeable too.

Yes you are in the hood, Rkodaira is a couple of thousand kms away! :D
 

mc-34063 driver installer.exe

He he, I think I am the only in this side of the planet writing to this thread. But it is understandable because EDABOARD is an European forum. Someone noticed that there are few people from US participating in EDABOARD. In my country very few understand and/or write in english language, so the number of brazilians is low.
I am far in distance and in fuse time (around 5 to 6 hours delayed from you).

Returning to the subject, i was studying the configuration words used in the PICKIT2 (18F2550) and for the configurations fuses about the USB clock settings I think it should be the same for the ICD2 clone (18F4550).

The hex file is (available inside the zipped source code file in the Microchip site):

:020000040030CA
:0E000000240E381E000181000FC00E800F403C
:00000001FF

What turns to:

CONFIG1: 0E24
CONFIG2: 1E38
CONFIG3: 0100
CONFIG4: 0081
CONFIG5: C00F
CONFIG6: B0E8
CONFIG7: 400F

This configures the PIC with:
CONFIG1L:
USB clock source comes from the 96MHz PLL divided by 2
96MHz divided by 2 to derive the system clock
Prescaler divide by 5 (20MHz oscillator input)

CONFIG1H:
Oscillator type HSPLL

CONFIG2L:
USB voltage regulator enabled
Brown out reset disabled

CONFIG2H:
WDT disabled

CONFIG3L:
MCLR disabled

CONFIG4H:
Debug and extended instruction set and LVP disabled

CONFIG5L and so on:
Code protection for all blocks are not protected
But blocks 0 1 and 2 are write protected (block3 is not)

Of course it is not the same for the 18F4550 used in the ICD2, but for USB settings this is a clue.
If the PICKIT2 would be upgraded to an ICD2 (or 3) some day, this is much more easy to build and cheaper too. As I said, i tried to build one, but I could not communicate it with the PC.
Last year (september round) I was one of the winners of the Microchip Contest and the prize was the PICKIT2. Unfortunately (I don´t know why) I have never received my prize ....:cry:
 

icd0019:

hi, actually i've been planning to make a my own icd2 that can operate almost the same way as the ori. but there are many version out there. and some are clamed to be too slow. apart from that, i tot the cypress chip could easily be substituted with a ftdi chip or even a ti tusb3410 chip.

is the circuit in use is based on lothar slotz project? someone claims that it is much slower than the actual ICD2. Furthermore, they claims that converting a RS232 communication to a usb connection wont increase the speed as well. My question is, isn't it that cypress, ftdi and ti chips are actually doing the same thing? if it does, would the speed decreases when we substitute the usb chips to other manufacturers?

why can't the 4550 chip be programmed in a way to just convert the usb data into the simple RS232 signals before connecting it to the rest of the circuit. this is exactly what the rest of the chips are doing isn't it? if it's that case, can't PIC18F2455/2550 be used. less pins are used.

Pls correct me if im wrong. Just some uncertainty here.
 

jdm programmer for 30f

Think: 877 communicates serially on RS232 and if available parallely on PORTD. Even if you use PORTD than it should be faster than shifting out the data on the USART.
The Cypress chip is connected to PORTD and feeds the 877 parallely on it's PSP port. And it uses BULK type USB transfer which's speed is can be around 1.5 MByte(!)/sec. I think I won't reaches that high, but anyway it's a lot faster.
If you do it with an RS232-USB converter chip, the PC side (MPLAB) will see a SERIAL ICD2 and wont set it's speed higher than 56k even if it's driver can do more.

Added after 3 minutes:

Rkodaira is my faaaarest friend :)

Rk, I used the same config as you sent except the Boot block protection.
 

pic32 pickit2

Hi every body!

good news, after some dissasembling time, i found something interesting in the boot.bin file, to make some tests i need to know the basic componentes that some of you have tried, and the last config word that you used!
thanks and see you soon..

Added after 1 hours 44 minutes:

zedman saids before that the bin files are correct, if that is true what's the real problem? is not enough to have the hex files and the schematic?

Added after 1 minutes:

because im getting confusing..
 

18f2x

Hi,

What did you find, Narcczizo? I've been looking at a dissassambled boot.bin too. I used the hex files from earlier in this thread. I find it strange that the reset-vector and isr-high vector are at 0x00C0 & 0x00C8 instead of 0x0000 an 0x0008. Is it the same at your side?

There is a lot recognizable stuff in the listing. I can find the mcc18 _startup, _do_cinit & main, and the whole USB frame wrok (USBCheckBusStatus, USBDriverService etc). The OS seems to start at 0x2800..

Zedman, where did you get stuck when you where debugging it?
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top