XboxHacker BBS
 
*
Welcome, Guest. Please login or register.
Did you miss your activation email?
May 23, 2013, 03:49:30 PM


Login with username, password and session length


Pages: « 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 »
  Print  
Author Topic: USB SPI Flasher with PIC18F2455 - now with source and binaries  (Read 308798 times)
Juvenal1228
Newbie
*
Posts: 3


View Profile
« Reply #520 on: January 09, 2010, 10:54:31 PM »

Thanks, just checked and i do get 3.3v on pin 14 when pic is hooked up to USB 5v

of these this is exactly what i have in place

USB connector - usb extender cut and wired directly to the board
Resonator/Crystal with right capacitors to ground - 12mhz Xtal with 33pf caps to ground
220nF on pin 14-GND - 100nf cap to GND
All VCC and GNC connections - VCC on 20, 13 and 10k to pin 1.  GND on 8, 19 and 10k to 26
Capacitor from VCC-GND (if it is electrolitic it is probably scorched after mixup, so replace) - 100nf cap, not electrolytic

is there any way to test for the USB transceiver's functionality? other than it being detected in windows...

getting a new PIC isnt really a big deal but if possible i would like to not spend 10 bux to get one overnighted only to find out its some other stupid thing.

i am using Win7 Pro X64 if that matters

~~EDIT~~ it did not lose any of its magic smoke but it did get extremely hot, but only on the bottom 1/4 of the chip. IE near the USB transceiver >.<
« Last Edit: January 09, 2010, 11:01:03 PM by Juvenal1228 » Logged
rjrusek
Member
**
Posts: 24


View Profile
« Reply #521 on: January 10, 2010, 12:08:08 AM »

I used the binaries from the first post.  I am able to use Nandpro 2.0 with out any problems.  When I try to use Nandpro 2.0b I get the ARM hardware error. 

I found PICFLASH_v3b_plus2 which apparently provides the following:

- pin mapping matches V3 documentation properly for bootloader (matches Git source)

- spoofs version reply to allow use with nandpro2b
   ~ spoofs as in picflash does not encoporate any improvements

- jasper big block NAND support
   ~ as I don't have a jasper, I'm not able to determine with any certainty
      which ID byte to check, so it checks them both in picflash
   thanks to federicobj for time and patience in testing
   thanks to MRA for confirmation on 256M jasper

When I tried to re-flash using PDFSUSB after reloading the mchpusb driver, PDFSUSB cannot detect the flasher.  I have Port C6, Pin 17 to grounded.  But it does not seem to help.  I cannot reload the bootloader since I soldered the chip to my breadboard.

Using the picflash.hex and picxboot.hex, (V3) from the first post do I loose any functionality besides the spoof for Nandpro 2.0b?

I still should be able to use the version 3 for my Jasper 256 nand?

Thank you,
Rob.
Logged
Juvenal1228
Newbie
*
Posts: 3


View Profile
« Reply #522 on: January 10, 2010, 12:13:31 AM »

I used the binaries from the first post.  I am able to use Nandpro 2.0 with out any problems.  When I try to use Nandpro 2.0b I get the ARM hardware error. 

I found PICFLASH_v3b_plus2 which apparently provides the following:

- pin mapping matches V3 documentation properly for bootloader (matches Git source)

- spoofs version reply to allow use with nandpro2b
   ~ spoofs as in picflash does not encoporate any improvements

- jasper big block NAND support
   ~ as I don't have a jasper, I'm not able to determine with any certainty
      which ID byte to check, so it checks them both in picflash
   thanks to federicobj for time and patience in testing
   thanks to MRA for confirmation on 256M jasper

When I tried to re-flash using PDFSUSB after reloading the mchpusb driver, PDFSUSB cannot detect the flasher.  I have Port C6, Pin 17 to grounded.  But it does not seem to help.  I cannot reload the bootloader since I soldered the chip to my breadboard.

Using the picflash.hex and picxboot.hex, (V3) from the first post do I loose any functionality besides the spoof for Nandpro 2.0b?

I still should be able to use the version 3 for my Jasper 256 nand?

Thank you,
Rob.
you cannot do anything with large blocks with the bins from the first post, and the bootloader from the first post doesnt work in that the pin 17 to gnd doesnt allow for re-flashing once you have flashed it.

so you need to reflash the pic with an art2003 or other pic burner with the new bootloader and then put 3b on it over usb
Logged
SpikedCola
Member
**
Posts: 44


View Profile
« Reply #523 on: January 10, 2010, 12:58:49 AM »

Hey guys, as most of you know Im working on a PCB for this, and Ive run into kind of a snag.

Here is my current schematic

I can flash the board with a PICKit, and flash using the bootloader jumper. When I remove the jumper the board hops over into "MemoryAccess" mode, which is good. But, when I put the jumper back, it doesnt go back into bootloader mode (and it doesnt let me use PDFUSB.exe to flash it) - it just stays with the MemoryAccess driver. Any ideas? Is there a certain version of the firmware that I should be using? Ive tried the ones in the first post and v3b_plus2 but neither seem to give me a different mode when I pull pin 17 low. Also, Ive had a couple boards where I can program them with the PICKit but when I connect the USB it doesnt show anything. Ive triple checked continuity, and Ive checked for shorts. Ive also added a decoupling cap on the bottom of the board but that didnt make a difference.
« Last Edit: January 10, 2010, 01:19:38 AM by SpikedCola » Logged
chaoz2
Member
**
Posts: 10


View Profile
« Reply #524 on: January 10, 2010, 10:00:31 AM »

replaced 220nf and 100nf caps with 10uf and is working very well!

No more usb disconnections and i can even watch a movie or play wow while dumping my 512mb nand!

1st dump pc not touched, perfect dump (verfied with previous made perfet dump)
2nd dump half watching movie with pc and play wow, matched perfectly
3rd dump while writing here and do some navigation, all seems well!

I hope this helps!
Logged
maximilian0017
Xbox Hacker
*****
Posts: 684


View Profile
« Reply #525 on: January 10, 2010, 10:38:33 AM »

replaced 220nf and 100nf caps with 10uf and is working very well!

No more usb disconnections and i can even watch a movie or play wow while dumping my 512mb nand!

1st dump pc not touched, perfect dump (verfied with previous made perfet dump)
2nd dump half watching movie with pc and play wow, matched perfectly
3rd dump while writing here and do some navigation, all seems well!

I hope this helps!

The 100nF is a bit small (i always use 100uF) but the 220nF is clearly stated in the Pic Datasheet as 220 (+-20%)
Would not go much beyond 220nF for that one, but if it works....

Edit: Corrected 10 -> 20%
« Last Edit: January 18, 2010, 05:13:11 PM by maximilian0017 » Logged
d4m4n
Master Hacker
****
Posts: 135


View Profile
« Reply #526 on: January 10, 2010, 12:31:59 PM »

Just finished my second machine and SPI USB programmer. This time I shot some pictures. Pictures below are thumbnail links to PhotoBucket.
I soldered the JTAG hack to the underside of the MB. I was going to remove the resistor R6T3 so I had to remove the MB anyway.

I used a 2x5 angled pinheader and 0805 size SMD caps and resistors. No jumper for the bootloader since I can easily solder it if needed.


I found this pinheader connector for chassis mounting and for flatcables. Fast and easy to install.


Pin numbers are visible in the picture above. Pins are 1. nc, 2. J2B1.6, 3. GND, 4. J2B1.5, 5. nc, 6. J1D2.4, 7. GND, 8. J1D2.3, 9. J1D2.1, 10. J1D2.2
The connector looks nice and flush under the HDD.

USB SPI programmer connected and ready for use.

I used this vice for the flatcable connectors. Fast and easy.

Flatcable length and wire names. I cut away wires number 1. and 5.


I developed this way for a fast and nice installation. I will modify many consoles and this makes it fast and easy.
Logged
sandungas
Master Hacker
****
Posts: 212



View Profile
« Reply #527 on: January 10, 2010, 07:37:00 PM »

replaced 220nf and 100nf caps with 10uf and is working very well!

No more usb disconnections and i can even watch a movie or play wow while dumping my 512mb nand!

1st dump pc not touched, perfect dump (verfied with previous made perfet dump)
2nd dump half watching movie with pc and play wow, matched perfectly
3rd dump while writing here and do some navigation, all seems well!

I hope this helps!

The 100nF is a bit small (i always use 100uF) but the 220nF is clearly stated in the Pic Datasheet as 200 (+-10%)
Would not go much beyond 220nF for that one, but if it works....
In the PIC datasheet (page 172) is marked as: 220 nF ±20%
http://ww1.microchip.com/downloads/en/devicedoc/39632e.pdf
From 176 nF to 264 nF
At least this is what i can see in the datasheet, but i have not technicall experience with this circuits

i would like to share some thoughts after reading some datasheets:

1) as per 18f2455 datasheet when external clock is used capacitive loading is 15pf so i think if you have a 18pf crystal the formula should be 18pf + 18pf = 36pf -15pf = 21pf (so 22pf is almost perfect)
If i understood you well, the formula is this one:
CA = (CL*2)-15

But...
http://www.sxlist.com/techref/clocks.htm
In this link there are 2 messages, the first one uses the formula that coltb45 explained few messages ago in this thread:
CA = 2(CL)-(CP+CI)
Where CP+CI = 5 (used 5 as a typicall value) so:
CA = (CL*2)-5

The second message of this link uses a formula that seems to be extraced from a forum especialized in PIC programming
CL = (CA+CP)/2
Where CP = 8 (used as a typicall value) so:
CL*2 = CA+CP
CL*2 = CA+8
(CL*2)-8 = CA
CA = (CL*2)-8

-------------------------------
This sucks because we have 3 different formulas
Im unable to see wich one is the correct that can be applyed to our circuit, the only data that i can see that is veryfied is what the dataseet reads in page 28
Dataseeht proposes 3 different combinations of oscillator/capacitors
(4MHz/27pF) (8MHz/22pF) (20MHz/15 pF)



I need to know this formula, because im doing a new diagram full of technicall data (well, i have it done weeks ago, but not publically uploaded)
I think that i need to make another diagram, because lot of people is using my drawings, and i dont want to let the things not-finished (i dont like my other diagrams because i prefer to move some lines, and i can see lot of fails in the technicall tips)
And we must forget the resonator, is usefull if you dont want to mess with the value of this 2 capacitors, but a resonator is not so accurate than a crystal
It seems that people is having problems with it, so the best idea is to remove it from the circuit
« Last Edit: January 10, 2010, 07:39:10 PM by sandungas » Logged
chaoz2
Member
**
Posts: 10


View Profile
« Reply #528 on: January 10, 2010, 08:51:47 PM »

i see, i had the older datasheet!

on the new datasheet table on page 380 states 15pf of loading when an external hs or xt clock is used,

also the 100nf filtering capacitor now should be a value from 0,22uf and 12uf max ceramic or low esr cap  (table on page 383)


i agree with the 220nf capacitor value, i will replace my 10uf to that value.





« Last Edit: January 10, 2010, 09:56:22 PM by chaoz2 » Logged
sandungas
Master Hacker
****
Posts: 212



View Profile
« Reply #529 on: January 11, 2010, 12:30:10 AM »

also the 100nf filtering capacitor now should be a value from 0,22uf and 12uf max ceramic or low esr cap  (table on page 383)
Nice found Wink is a big datasheet
This value matches with the .pdf you uploaded (btw, i have reuploaded it, the original link is broken) and you have tested it (with positive results)
http://www.sendspace.com/file/22dp6s
So definitely i will change this capacitor in the diagram to 10uF by default (and with a range from 0,22uf to 12uf)



Edit:
If somebody is interested... in this document there is a "reset button", is a temporal switch between pin 1 and ground
And is easy to include a "power led" between ground and volts (with a 330 ohm resistor in one of the led pins)
« Last Edit: January 11, 2010, 12:36:36 AM by sandungas » Logged
threesixtyuser
Master Hacker
****
Posts: 115


View Profile
« Reply #530 on: January 11, 2010, 04:55:26 AM »

You also need a pcb to build it on.

These connectors are a bit overkill and clumersome for this, just get a single long pinhearder row that you can cut into pieces (7pin and 2/3 pin) and a 7 pin female counterpart.

You should make sure that the wires have a solid core, otherwise you can easely cause a short.

...

Lol, I know I need PCB, but because it's not a component I didn't post it in the shopping list Wink

Regarding the "cumbersome" connectors: I ain't a big fan of pinheaders because the risk of inverse connection is too big. I want to use the programmer on multiple consoles and want to make sure the connection can't be made inversed. Next to that the connectors have the same pin size as a standard header. I ordered 16 pins so I can use a single row.

Regarding the non-solid and thus more flexible cores: It ain't that hard to solder flexbile cores and ofcourse I'll check for shorts after soldering. But the risk (with a little solder experience and patience) of shorting isn't that high.

Got all of my materials today, but quite busy the next few days so I recon I'll set-up the PCB sometime this week after which a friend of mine will program the PIC with his programmer so I don't have to buy or build one.

@sandungas and Chaoz2:

So for a more stable programmer the 100nF has to be raplaced with 10uF? and the 220nF remains?
Next to that does a 12MHz/18pF crystal still require 2x 30pF or do I have to change these as well?

This because I only ordered the 100nF/220nF and 30pF (with 27pF as backup)

p.s. yet another 18F2455 datasheet

page 375(doc)/373(page no.)
contains table with capacative loading specs on output pins, states 15pF when external clock is used to drive OSC1

page 169(doc)/167(page no.) and table on 378/376 state:
The PIC18FX455/X550 devices have a built-in 3.3V regulator to provide power to the internal transceiver and provide a source for the internal/external pull-ups. An external 220 nF (±20%) capacitor is required for stability.

And found a doc about external clocks they state:



rLC = 2 * (LC - PC)
rLC = Real Load Capacitor value (the value of C1 and C2) LC = Load Capacitance
manufacture gave PC = Parasitic Capacitance (normally between 7-10pF)
So for our example crystal that had a load capacitor value of 20pF
rLC = 2 * (LC-PC) rLC = 2 * (20-8) rLC = 2 * (12) rLC = 24pF

in this case results in:
rLC = 2 * (18-15) = 21pF like Chaoz2 posted above.

I ordered 4x15pF (2 in parallel results in 30pF) and 27 pF, think I'll go for 27 at first


edit: wrongly interpreted
« Last Edit: January 27, 2010, 06:20:28 AM by threesixtyuser » Logged
maximilian0017
Xbox Hacker
*****
Posts: 684


View Profile
« Reply #531 on: January 11, 2010, 05:42:18 AM »

Lol, I know I need PCB, but because it's not a component I didn't post it in the shopping list Wink

Regarding the "cumbersome" connectors: I ain't a big fan of pinheaders because the risk of inverse connection is too big. I want to use the programmer on multiple consoles and want to make sure the connection can't be made inversed.

Regarding the non-solid and thus more flexible cores: It ain't that hard to solder flexbile cores and ofcourse I'll check for shorts after soldering. But the risk (with a little solder experience) of shorting isn't that high.

If someone asks for something its difficult to see how good their soldering skills are, also other people will see your shopping list and make an order, just want to be Noob frendly and save a few xboxes Smiley
Logged
dak
Hacker
***
Posts: 81


View Profile
« Reply #532 on: January 11, 2010, 07:00:57 AM »

I wouldnt worry so much about the cap on the crystal. Its only needed to add a little el. noise so the crystal will start up to oscillate.
Id just point it out to be between 15-33pf. If people buy 15pf and a 33pf they could change if one doesnt work, because there are different crystals out.

Ive built 8 flashers and used 220nF/100nF/33pF caps. No1 who uses the flashers reported any error.
I tested every flasher before handing them out with 3 times 256mb reads in a row and it worked just fine.
I think its more important to make either thick solder lines for the 5V/GND or use a little thicker wires.

just my 2 cents...

Edit:
Quote
I ordered 4x15pF (2 in parallel results in 30pF) and 27 pF, think I'll go for 27 at first
--> http://www.play-hookey.com/dc_theory/series_capacitors.html

Quote
As a result of this, the combined capacitance of the two identical capacitors in series is just half the capacitance of either one.
Means 2x15pF = 7.5pF ?
« Last Edit: January 11, 2010, 09:34:54 AM by dak » Logged
threesixtyuser
Master Hacker
****
Posts: 115


View Profile
« Reply #533 on: January 11, 2010, 10:11:40 AM »

...

Edit:
Quote
I ordered 4x15pF (2 in parallel results in 30pF) and 27 pF, think I'll go for 27 at first
--> http://www.play-hookey.com/dc_theory/series_capacitors.html

Quote
As a result of this, the combined capacitance of the two identical capacitors in series is just half the capacitance of either one.
Means 2x15pF = 7.5pF ?
Was talking about parallel, not serial.

Quote
the equation to determine the total capacitance, CT, of any number of capacitors in parallel is: CT = C1 + C2 + C3 + ···
So 15+15=30pF

offtopic: Doesn't matter if I remove R6T3 before reading the nand and installing XBR does it?

@DAK below: NP! and thx, that's what I reckoned, but like said before "You can never ask too many questions" (especially if you are doing something for the first time Wink) and thanks for the thicker wires tip, will use something else than my 26AWG(0.13mm2) wire!
« Last Edit: January 11, 2010, 10:48:39 AM by threesixtyuser » Logged
dak
Hacker
***
Posts: 81


View Profile
« Reply #534 on: January 11, 2010, 10:31:50 AM »

...sorry my fault, to dumb to read...
Doesnt matter if you remove the resistor before, its only necessary for blowing efuses, which u dont want.
Logged
doveman
Master Hacker
****
Posts: 186


View Profile
« Reply #535 on: January 11, 2010, 11:27:06 AM »

I just want to check that the resistors in my shopping list are suitable:

The 10k are metal film, with 1% tolerance, power rating 600mw, voltage rating 300v
http://uk.farnell.com/jsp/search/productdetail.jsp?sku=1652647

and the 100ohm are the same except for power rating 400mw, voltage rating 250v
http://uk.farnell.com/jsp/search/productdetail.jsp?sku=1652646

Is there any reason not to just solder the wires going to the 360 directly to the flasher board, rather than using a connector. Then I could just put a connector and socket on the 360 end, which would save some money.

d4m4n, I really like the connectors you've used. If you (or anyone else) could help me find them, preferably at farnell or somewhere else with free shipping, I'd appreciate it.


Logged
d4m4n
Master Hacker
****
Posts: 135


View Profile
« Reply #536 on: January 11, 2010, 01:28:09 PM »

I just want to check that the resistors in my shopping list are suitable:

The 10k are metal film, with 1% tolerance, power rating 600mw, voltage rating 300v
http://uk.farnell.com/jsp/search/productdetail.jsp?sku=1652647

and the 100ohm are the same except for power rating 400mw, voltage rating 250v
http://uk.farnell.com/jsp/search/productdetail.jsp?sku=1652646

Is there any reason not to just solder the wires going to the 360 directly to the flasher board, rather than using a connector. Then I could just put a connector and socket on the 360 end, which would save some money.

d4m4n, I really like the connectors you've used. If you (or anyone else) could help me find them, preferably at farnell or somewhere else with free shipping, I'd appreciate it.

The resistors are fine. You can use any general carbon or metal film resistors. The currents are very low. 1% or 5% does not matter.

Parts for my version:
http://uk.farnell.com/3m/4610-6050/header-idc-lugged-10way/dp/525091?Ntt=525091  <-- looks the same. I paid 1,3€ for mine.
http://uk.farnell.com/multicomp/mc6fd010-30p1/socket-idc-with-s-relief-10way/dp/1099236?Ntt=1099236
http://uk.farnell.com/multicomp/mc9a22-1034/header-right-angle-10way/dp/1099245?Ntt=1099245 <-- I will use this the next time
Logged
maximilian0017
Xbox Hacker
*****
Posts: 684


View Profile
« Reply #537 on: January 11, 2010, 02:00:00 PM »

and the 100ohm are the same except for power rating 400mw, voltage rating 250v
http://uk.farnell.com/jsp/search/productdetail.jsp?sku=1652646

Almost any resistors will do as long as the resistance value is correct, but size is an issue sometimes when laying out a board.
Would personally use something like
http://uk.farnell.com/multicomp/mf12-100r/resistor-0-125w-1-100r/dp/9342397
http://uk.farnell.com/multicomp/mf12-10k/resistor-0-125w-1-10k/dp/9342419

You have to buy these in 10 packs but they are dirt cheap.
They also fit perfectly on a stardard 2,54mm perfboard.



Logged
doveman
Master Hacker
****
Posts: 186


View Profile
« Reply #538 on: January 11, 2010, 02:28:08 PM »

Thanks for the help guys. Just to check, will this be OK for the ribbon cable?
Logged
sandungas
Master Hacker
****
Posts: 212



View Profile
« Reply #539 on: January 12, 2010, 01:28:42 AM »



Changes from mini diagram v1
http://www.xboxhacker.org/index.php?topic=12306.msg84955#msg84955
-Removed trace between PIC pins 8 & 19 (not needed)
-Removed wire between PIC pin 20 & 5 volts (now 5 v trace goes to 20 under the PIC)
-Reduced tracks lenght in PIC pins 17 & 20 (area cleared to let you move things)
-Replaced resonator with a crystal oscillator & 2 capacitors
-Replaced 100 nF capacitor in PIC pin 20 by a 10pF capacitor (recommended in the datasheet)
-Moved 10K resistor in PIC pin 1 to simplify the design, and to "free" "neighbour" pins for future development
-All technicall info rewrited
-Some aesthetical changes

Here are the links writed in the picture
Datasheet: http://ww1.microchip.com/downloads/en/DeviceDoc/39632e.pdf
360 pinout: http://dwl.xbox-scene.com/tutorial/Xbox_360-HandC-V1_4.pdf
USB pinout: http://pinouts.ru/Slots/USB_pinout.shtml

More technicall data
PIC basics: http://hifi.metalabs.org/docs/usbame.pdf
Crystal oscilators: http://www.avrfreaks.net/modules/FreaksArticles/files/21/Why%20you%20need%20a%20Clock%20Source.pdf
PICS/oscillator tips: http://www.sxlist.com/techref/clocks.htm

Please dont copy this image along the thread, is too big, and not all people is using this diagram so this will confuse them. Just link to this message or name it "mini diagram v0.2 breadboard" or whatever
And the software/hardware is still is in development, so in next releases of the software is possible that more components will need to be added (i.e. leds)


Why to buy this board?, anyway you will need to solder wires to the XBOX360 motherboard, the solder part is not an excuse to buy it, these solder points/traces of the USB board are easyer. And the PIC bootloader programming can be done with the cheap ART2003
I tried to make the diagram noob-friendly and are included all the components needed, so lets play LEGO with a solder iron !!!

My 2 euro cents to the "360 bussiness scene" Tongue

Edit: 2 cents made of wood
« Last Edit: January 12, 2010, 01:38:07 AM by sandungas » Logged
Pages: « 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 »
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.11 | SMF © 2006-2009, Simple Machines LLC

Valid XHTML 1.0! Valid CSS! Dilber MC Theme by HarzeM