# Programming a dsPIC30f6014a with a JDM programmer?

Status
Not open for further replies.

#### rave-n

##### Newbie level 3
jdm programmer

Hi-
I was wondering if anyone could suggest settings for WinPic800, WinPic or even ICPROg that will allow me to succesfully program my dsPIC30f6014A. I have built a version of the JDM programmer and it seems to connect using WinPic800 but I get errors on erasing... as shown atached. I think it's either something wrong with the software setup, or something wrong with my hardware. Can anyone HELP!?

Cheers

Russell

#### rave-n

##### Newbie level 3
jdm modified programmer

OK - tried to configure WinPic (not 800) to do it and here's what I get...

Programming...
Erasing ("bulk" or "chip") ...
Programming CODE, 0x000000..0x00016A
Verifying CODE, 0x000000..0x00016A
Verifying 0x000000..0x00016A
More Verify Errors, unable to list all (total=180)
Programming CONFIG, 0xF80000..0xF80004
Verifying CONFIG, 0xF80000..0xF80004
Verifying 0xF80000..0xF80004
ERROR: Programming FAILED !
Cannot verify at different voltages with this hardware.

So it seems that my programmer is NOT working... All reads give 00FFFF and no writing has been done (the original test program still works).

Any ideas anyone?! I am 99.99% sure that I have followed the schematics correctly but I will recheck them anyhow...

Boooeer...

Added after 2 hours 21 minutes:

HAHA!
OK - one thing I didn't realise about dsPIC30F family devices - Must be powered from different source. They need more power than the serial programmer can supply.

The other problem was that I had my ICSP header on backwards...
I still think it's backwards now, but now it works!!! -->

Info: dsPIC30F6014A, added and tested by Nam Nguyen-Quang, 2006-01-28
Info: Note: The config bit defs SHOULD be loaded from Microchip's dev-file
Couldn't find "devices\dsPIC30F6014A.dev", please borrow/copy from MPLAB !
Initialising PIC-Programmer: Success.
Testing: delay(500ms) took 0.50 seconds, timer_freq=3.5795 MHz ... ok
Cannot verify at different voltages with this hardware.
Verifying...
Verifying CODE, 0x000000..0x00016A
Verifying 0x000000..0x00016A
No DATA MEMORY in buffer to verify.
Verifying CONFIG, 0xF80000..0xF80004
Verifying 0xF80000..0xF80004
Verify finished, no errors.

All done and verified...

I will use this forum to give updates on my progress - just in case anyone else out there has any similar problems...

Cheers

Russell

#### namqn

##### Full Member level 3
winpic devices.ini file

Well done, my friend!

However, I did not add/test dsPIC30F6014A with WinPic. So, could
you change the 'Nam Nguyen-Quang' bit to something else, please!

Nam Nguyen-Quang is my name, and I guess you copied one of the
sections for another dsPIC30F and modified it a bit.

Cheers,

#### rave-n

##### Newbie level 3
hardware test failed in winpic800

LOL - that is so... hehe - will change it later...

Also - I need to figure out all the properties better. Not sure about the word size...

#### vandelay

jdm programmer dspic30f

rave-n said:
OK - one thing I didn't realise about dsPIC30F family devices - Must be powered from different source. They need more power than the serial programmer can supply.

My serial port works fine as-is, no external power required. I use JDM and WinPIC, and have had success with the dsPIC30F3012, dsPIC30F3013, dsPIC30F4011, dsPIC30F4012, and dsPIC30F4013. I have not tried others.

#### rave-n

##### Newbie level 3
jdm dspic programmer

Well, according to some documentation I found from microchip the dsPIC30f family of devices should not be powered just through the ICD2 (or whatever programmer you use I suppose) as there is not enough power present to make it go. I will try to find it again and post up a link/quote from it here for reading. I foolishly didn't save it

EDIT:
I found the article again -
from HERE
SSR 24936: For dsPIC30F devices, do not use power (Vdd) from ICD
unit. The power (Vdd) provided from MPLAB ICD 2 to the target
device is not sufficient for all programming operations of the
dsPIC30F device family. It is recommended that you provide power
on your own board and not to use power from the ICD.

Also, I am using a modified version of the JDM programmer and it may not provide as much power for whatever reasons but it does work.
Having to have power actually suits me better as it means I only need to isolate two lines while I'm programming isntead of three. (The difference between a $2.95 switch and a$6.75 switch) Hey - I'm a poor student OK?!

One thing I need to know is the word length for the 6014A. I'm not sure how this works out, but it won't matter unless I am actually going to fill it up I suppose.

Cheers,

Russell

#### namqn

##### Full Member level 3
jdm programmer dspic

What do you mean by 'word length'?

- The length of one instruction word? -> 24-bit
- The size of the erase buffer in words? -> 32
- The size of the programming buffer in words? -> 4
- The size of the program memory of 6014A in words? -> 48k

Beware of the odd addressing scheme (2 word addresses for one 24-bit instruction word).

Cheers,

Status
Not open for further replies.