Teensy++ 2.0: Difference between revisions

From PS3 Developer wiki
Jump to navigation Jump to search
m (This was a bad practise (and im culprit of doing it), the first section of a mediawiki page should start always with 2 equal signs. Regex fix: find ^= replace by == ...and... find =$ replace by ==)
 
(98 intermediate revisions by 13 users not shown)
Line 1: Line 1:
<div style="float:right">[[File:Teensy++2.0 persp.png|210px|thumb|right|Teensy++ 2.0 perspective view]]<br />[[File:Teensy++2.0 top.png|210px|thumb|right|Teensy++ 2.0 top view]]<br />[[File:Teensy++2.0 bottom.png|210px|thumb|right|Teensy++ 2.0 bottom view]]</div>
<div style="float:right">[[File:Teensy++2.0 persp.png|210px|thumb|right|Teensy++ 2.0 perspective view]]<br />[[File:Teensy++2.0 top.png|210px|thumb|right|Teensy++ 2.0 top view]]<br />[[File:Teensy++2.0 bottom.png|210px|thumb|right|Teensy++ 2.0 bottom view]]<br />[[File:Teensy++ 2.0 schematic.jpg|210px|thumb|right|Teensy++ 2.0 schematic]]<br />[[File:Atmel AT90USB128 pinout.jpg|210px|thumb|right|Atmel AT90USB128 pinout]]<br />[[File:Usb-pinout.png|210px|thumb|right|USB pinout]]</div>


= Description =
== Description ==
The Teensy is a complete USB-based microcontroller development system, in a very small footprint, capable of implementing [https://www.pjrc.com/teensy/projects.html many types of projects]. All programming is done via the USB port. No special programmer is needed
The Teensy is a complete USB-based microcontroller development system, in a very small footprint, capable of implementing [https://www.pjrc.com/teensy/projects.html many types of projects]. All programming is done via the USB port. No special programmer is needed


To use it as a PS3 flasher is needed to program it with either NORway.hex or NANDway.hex, explained below
To use it as a PS3 flasher is needed to program it with either NORway.hex or NANDway.hex, explained below


Teensy++ 2.0 dimensions: 2.0 x 0.7 inch = 5.0 x 1.7 centimeter (1 decimal [https://en.wikipedia.org/wiki/Accuracy_and_precision rounded])
*'''Teensy++ 2.0 dimensions''': (1 decimal [https://en.wikipedia.org/wiki/Accuracy_and_precision rounded])
**'''PCB length''' - 5 centimeter (2.0 inch)
**'''PCB width''' - 1.7 centimeter (0.7 inch)
**'''PCB thick''' - 1.5 milimeter
**'''PCB + Atmel thick''' - 2.4 milimeter
**'''PCB + button thick''' - 3.6 milimeter
**'''PCB + USB connector thick''' - 5.7 milimeter
**'''PCB + USB connector + regulator thick''' - 7.2 milimeter


= Teensy Software =
<!-- gap between motherboard, and motherboard metal shields varies, with 4 milimeter in some areas and 3.5 milimeter in others -->


== Windows Drivers and Linux UDEV Rules ==
== Teensy Related Software ==
The Teensy 2.0++ needs windows drivers and linux udev rules to be recognized fully as it was meant to, as explained here http://www.pjrc.com/teensy/usb_serial.html
 
=== Teensy drivers ===
Teensy 2.0++ needs windows drivers and linux udev rules to be recognized fully as it was meant to, as explained here http://www.pjrc.com/teensy/usb_serial.html


* Windows driver: [http://www.pjrc.com/teensy/serial_install.exe serial_install.exe]
* Windows driver: [http://www.pjrc.com/teensy/serial_install.exe serial_install.exe]
Line 17: Line 26:
* FreeBSD device conf: [https://www.pjrc.com/teensy/freebsd-teensy.conf freebsd-teensy.conf]
* FreeBSD device conf: [https://www.pjrc.com/teensy/freebsd-teensy.conf freebsd-teensy.conf]


== Teensy loader ==
=== Teensy loader ===
Program used to load the compiled hex-file for the Teensy++ 2.0 ([http://www.atmel.com/devices/AT90USB1286.aspx AT90USB1286]), as explained here: http://www.pjrc.com/teensy/loader.html
Program used to load the compiled hex-file for the Teensy++ 2.0 microcontroller ([http://www.atmel.com/devices/AT90USB1286.aspx AT90USB1286]), as explained here: http://www.pjrc.com/teensy/loader.html
*Windows: [https://www.pjrc.com/teensy/teensy.exe teensy.exe]
*Windows: [https://www.pjrc.com/teensy/teensy.exe teensy.exe]
*Ubuntu linux x32: [https://www.pjrc.com/teensy/teensy.gz teensy.gz]
*Ubuntu linux x32: [https://www.pjrc.com/teensy/teensy.gz teensy.gz]
Line 26: Line 35:
*Command line source code on github: https://github.com/PaulStoffregen/teensy_loader_cli
*Command line source code on github: https://github.com/PaulStoffregen/teensy_loader_cli


=== Programming teensy with NORway or NANDway ===
==== Loading programs to teensy microcontroller ====
The program needed to be loaded to the teensy to use it as a PS3 flasher (choose one based on your flash type or installation wiring):
See the project home: [https://github.com/hjudges/NORway NORway git], (previously [https://github.com/Effleurage/NORway-and-NANDway NORway-and-NANDway] but now merged in main git)
*[https://github.com/hjudges/NORway/blob/master/NORway/default/NORway.hex NORway.hex] (for NOR flash PS3 models)
*[https://github.com/hjudges/NORway/blob/master/NANDway/Dual%20NAND%20Edition/NANDway_DualNANDEdition.hex NANDway_DualNANDEdition.hex] (for NAND flash PS3 models with both NANDS connected to teensy)
*[https://github.com/hjudges/NORway/blob/master/NANDway/Signal%20Booster%20Edition/NANDway_SignalBoosterEdition.hex NANDway_SignalBoosterEdition.hex] (for NAND flash PS3 models with a single NAND connected to teensy)


== Python and Pyserial (only windows) ==
And download the whole git project from: [https://github.com/hjudges/NORway/archive/master.zip master.zip]
*Python 2.7.2 : [http://www.python.org/ftp/python/2.7.2/python-2.7.2.msi python-2.7.2.msi]
*Pyserial 2.5 : [http://pypi.python.org/packages/any/p/pyserial/pyserial-2.5.win32.exe pyserial-2.5.win32.exe]


== NORway ==
Choose one of the programs needed to be loaded to the teensy to use it as a PS3 flasher (based on your flash type and/or installation type and wiring):
NOR PC Python client [https://github.com/hjudges/NORway/blob/master/NORway.py NORway.py]
*'''NORway.hex''' (for NOR flash PS3 models)
*'''NANDway_DualNANDEdition.hex''' (for NAND flash PS3 models with both NANDS connected to teensy)
*'''NANDway_SignalBoosterEdition.hex''' (for NAND flash PS3 models with a single NAND connected to teensy)


Used to analyze dumps and also contains hex files to program the Teensy itself.
=== PC Clients ===
*To run the PC clients in windows (NORway.py or NANDway.py) is needed to install Python and Pyserial
**Python 2.7.2 : [http://www.python.org/ftp/python/2.7.2/python-2.7.2.msi python-2.7.2.msi]
**Pyserial 2.5 : [http://pypi.python.org/packages/any/p/pyserial/pyserial-2.5.win32.exe pyserial-2.5.win32.exe]


* [https://github.com/hjudges/NORway NORway git]
==== NORway.py ====
** [https://github.com/hjudges/NORway/archive/master.zip]
Usage:
{{Keyboard|content=<syntaxhighlight lang="bash">
C:\>NORway.py
NORway.py v0.8 - Teensy++ 2.0 NOR flasher for PS3 (judges@eEcho.com)
(Original noralizer.py by Hector Martin "marcan" <hector@marcansoft.com>)


=== Mac OS-X patch ===
Usage:
if you are on Mac OS-X and having problems with timeouts:
C:\NORway.py serialport [command] [filename] [address]
<MikeM64> hahaha, it's a dirty fix, but it seems to work XD
<MikeM64> lemme compile diffs, I got perfect writes happening on my mac now
<MikeM64> 10 writes and 2 timeouts; not bad. better than 20 timeouts / write
<MikeM64> http://pastie.org/8570558 if anyone needs it


=== NORway usage ===
  serialport             Name of serial port to open (eg. COM1, COM2, /dev/ttyACM0, etc)
<pre>Usage: %s serialport [command] [filename] [address]
  command dump         Reads entire NOR to [filename]
   
          erase         Erases one sector/block (128KB/64KB/8KB) at [address]
serialport  Name of serial port to open (eg. COM1, COM2, /dev/ttyACM0, etc)
          erasechip    Erases entire NOR
command     dump       Reads entire NOR to [filename]
          write         Flashes (read-erase-modify-write) [filename] at [address] to NOR (buffered programming mode)
            erase     Erases one sector (128KB) at [address]
          writeword    Flashes (read-erase-modify-write) [filename] at [address] to NOR (word programming mode)
            write     Flashes (read-erase-modify-write-verify) [filename]
          writewordubm  Flashes (read-erase-modify-write) [filename] at [address] to NOR (word programming/unlock bypass mode)
                      at [address] to NOR
          vwrite        Flashes (read-erase-modify-write-verify) [filename] at [address] to NOR (buffered programming mode)
            writeimg  Same as write, but prepend a 16-byte length header
          vwriteword   Flashes (read-erase-modify-write-verify) [filename] at [address] to NOR (word programming mode)
                      [address] is required
          vwritewordubm Flashes (read-erase-modify-write-verify) [filename] at [address] to NOR (word programming/unlock bypass mode)
            program   Flashes (erase-write-verify) [filename]
          verify        Verifies NOR content with [filename] at [address]
                      at [address] to NOR
          release       Releases NOR interface, so the PS3 can boot
            release   Releases NOR interface, so the PS3 can boot
          bootloader    Enters Teensy's bootloader mode
filename   Filename for [dump|write|writeimg|program]
  filename               Filename for [dump|(v)write|(v)writeword|(v)writewordubm|verify]
address     Address for [erase|write|writeimg|program]
  address               Address for [erase|(v)write|(v)writeword|(v)writewordubm|verify]. Default is 0x0, address must be aligned (multiple of 0x20000)
            Default is 0x0, address must be aligned (multiple of 0x20000)
</pre>


== NANDway ==
Examples:
NAND PC Python client [https://github.com/hjudges/NORway/blob/master/NANDway.py NANDway.py]
  C:\NORway.py COM1
  C:\NORway.py COM1 dump d:\myflash.bin
  C:\NORway.py COM1 erase 0x20000
  C:\NORway.py COM1 erasechip
  C:\NORway.py COM1 write d:\myflash.bin
  C:\NORway.py COM1 write d:\myflash.bin 0xA0000
  C:\NORway.py COM1 writeword d:\myflash.bin
  C:\NORway.py COM1 writewordubm d:\myflash.bin 0x40000
  C:\NORway.py COM1 verify d:\myflash.bin
  C:\NORway.py COM1 release
</syntaxhighlight>}}


Project home:
*For Mac OS-X users with problems of timeouts there is an unnofficial<!-- im not really sure if this patch was included in official or deprecated --> patch available in {{talk}} page
* https://github.com/hjudges/NORway (previously https://github.com/Effleurage/NORway-and-NANDway but now merged in main git)


precompiled by judges : http://www.mediafire.com/?i5y1mhhh5lz62xu
==== NANDway.py ====
Usage:
{{Keyboard|content=<syntaxhighlight lang="bash">
C:\>NANDway.py
NANDway v0.64 - Teensy++ 2.0 NAND Flasher for PS3/Xbox/Wii
(Original NORway.py by judges <judges@eEcho.com>)
(Original noralizer.py by Hector Martin "marcan" <hector@marcansoft.com>)


=== NANDway usage ===
Usage:
<pre>NANDWay.py Serial-Port 0/1 Command
NANDway.py Serial-Port 0/1 Command


   Serial-Port  Name of serial port to open (eg. COM1, COM2, /dev/ttyACM0, etc)
   Serial-Port  Name of serial port to open (eg. COM1, COM2, /dev/ttyACM0, etc)
   0/1  NAND id number: 0-NAND0, 1-NAND1
   0/1  NAND id number: 0-NAND0, 1-NAND1
   Commands:
   Commands:
  *  info
    Displays information about NAND
   *  dump Filename [Offset] [Length]
   *  dump Filename [Offset] [Length]
     dumps to Filename at [Offset] and [Length]
     Dumps to Filename at [Offset] and [Length]
   *  vwrite/write Filename [Offset] [Length]
   *  vwrite/write Filename [Offset] [Length]
     Flashes (v=verify) Filename at [Offset] and [Length]
     Flashes (v=verify) Filename at [Offset] and [Length]
   *  vdiffwrite/diffwrite Filename Diff-file
   *  vdiffwrite/diffwrite Filename Diff-file
     Flashes (v=verify) Filename using a Diff-file
     Flashes (v=verify) Filename using a Diff-file
   *  release
   *  ps3badblocks Filename
     Releases TRISTATE, so that the PS3 can boot
     Identifies bad blocks in Filename (raw dump)
   *  bootloader
   *  bootloader
     Enters Teensy's bootloader mode (for Teensy reprogramming)
     Enters Teensy's bootloader mode (for Teensy reprogramming)
     Notes: 1) All offsets and lengths are in hex
 
             2) The Diff-file is a file which lists all the changed
     Notes: 1) All offsets and lengths are in hex (number of blocks)
              offsets of a dump file. This should increase flashing
             2) The Diff-file is a file which lists all the changed offsets of a dump file. This will increase flashing time dramatically.
              time dramatically.


Examples:
Examples:
 
   NANDway.py COM1 0 info
   NANDWay.py COM1
   NANDway.py COM1 0 dump d:\myflash.bin
   NANDWay.py COM1 0 dump d:\myflash.bin
   NANDway.py COM1 1 dump d:\myflash.bin 3d a0
   NANDWay.py COM1 1 dump d:\myflash.bin 3D a0
   NANDway.py COM1 0 write d:\myflash.bin
   NANDWay.py COM1 0 write d:\myflash.bin
   NANDway.py COM3 1 write d:\myflash.bin 20 1c
   NANDWay.py COM3 1 write d:\myflash.bin
   NANDway.py COM3 0 vwrite d:\myflash.bin
   NANDWay.py COM3 1 vwrite d:\myflash.bin 8D A0000
  NANDway.py COM3 1 vwrite d:\myflash.bin 8d 20
   NANDWay.py COM4 0 diffwrite d:\myflash.bin d:\myflash_diff
   NANDway.py COM4 0 diffwrite d:\myflash.bin d:\myflash_diff.txt
   NANDWay.py COM3 1 vdiffwrite d:\myflash.bin d:\myflash_diff
   NANDway.py COM3 1 vdiffwrite d:\myflash.bin d:\myflash_diff.txt
   NANDWay.py COM1 0 release
   NANDway.py COM1 0 bootloader
</pre>
  NANDway.py ps3badblocks d:\myflash.bin
</syntaxhighlight>}}


Notes:
Notes:
Line 115: Line 139:
* Vcc: Teensy 3.3V regulator cannot power the NANDs on the PS3. The drain of the motherboard summed by the other peripherals draw too much current (~1.8A). The NANDs can be powered from external 3.3V power supply like ATX power supply (the orange 3.3V line of the ATX main connector).
* Vcc: Teensy 3.3V regulator cannot power the NANDs on the PS3. The drain of the motherboard summed by the other peripherals draw too much current (~1.8A). The NANDs can be powered from external 3.3V power supply like ATX power supply (the orange 3.3V line of the ATX main connector).


== WAY-launchers ==
=== Others ===
==== WAY-launchers ====
Simple GUI to run NORway, NANDway and SPIway.
Simple GUI to run NORway, NANDway and SPIway.


Line 126: Line 151:
*http://www.psx-place.com/forum/downgrading/launchers-325.html
*http://www.psx-place.com/forum/downgrading/launchers-325.html


= Installation Requirements =
==== norpatch.exe ====
Small tool to verify content of NOR dump (recognizes any OFW), replace ros0/ros1 with new core os (.NET 2.0 required)


You are going to need a lot parts to accomplish such a task.  This takes a lot of patience, and steady hands.<br>
==== Dump integrity validators ====
This is a difficult installation!  If a part is not needed below it will be specified per model so check there as well.<br>
See also: [[Validating flash dumps]]


== Parts ==
== Pre-Installation Requirements ==
The following is a list of good tools you could use to perform the installation of the Teensy++
 
=== Tools ==<!--section proposed for splitting, but by now is too much specific for teensy-->
The following is a list of suggested good tools and parts you could use to perform the installation of the Teensy++ 2.0 in a PS3


* PS3 disassembling tools:
* PS3 disassembling tools:
Line 153: Line 181:
**1x [https://en.wikipedia.org/wiki/Desoldering#Desoldering_braid Desoldering braid] (aka desoldering wick or solder wick) preferred more than 2 millimetre wide (to fix the mistakes by melting the tin and [https://en.wikipedia.org/wiki/Capillary_action wicking] it, to remove the factory lead-free solder, to clean solders joints where a bad tin alloy happened because residues or degradation of the tin, to remove bridges between pins or pads, etc.)
**1x [https://en.wikipedia.org/wiki/Desoldering#Desoldering_braid Desoldering braid] (aka desoldering wick or solder wick) preferred more than 2 millimetre wide (to fix the mistakes by melting the tin and [https://en.wikipedia.org/wiki/Capillary_action wicking] it, to remove the factory lead-free solder, to clean solders joints where a bad tin alloy happened because residues or degradation of the tin, to remove bridges between pins or pads, etc.)
**1x Single side thermal resistant tape over 300{{degree}}C, known as polyimide or [https://en.wikipedia.org/wiki/Kapton kapton] tape (to stick wires in place, and [http://ultrakeet.com.au/write-ups/kaptonMasking other uses])
**1x Single side thermal resistant tape over 300{{degree}}C, known as polyimide or [https://en.wikipedia.org/wiki/Kapton kapton] tape (to stick wires in place, and [http://ultrakeet.com.au/write-ups/kaptonMasking other uses])
**1x Single side aluminium tape (glued), or alufoil (not glued), to create [https://en.wikipedia.org/wiki/Electromagnetic_shielding interference shields] for data wires and to cover [https://en.wikipedia.org/wiki/Printed_circuit_board PCB's] (aluminium protects against interferences but is conductive for this reason is needed to isolate aluminium layers at top and bottom with non-conductive layers as kapton to avoid shorcuts, like a sandwich). Note for correct shielding of wires the shield needs to be connected to ground in both extremes of the "cable" and is posible to [https://www.youtube.com/watch?v=_mYkM9lHMho solder in aluminium tape]
**1x Single side aluminium tape (glued), or alufoil (not glued), to create interference shields [https://en.wikipedia.org/wiki/Shielded_cable 1] [https://en.wikipedia.org/wiki/Electromagnetic_shielding 2] for data wires and to cover [https://en.wikipedia.org/wiki/Printed_circuit_board PCB's] (aluminium protects against interferences but is conductive for this reason is needed to isolate aluminium layers at top and bottom with non-conductive layers as kapton to avoid shorcuts, like a sandwich). Note for correct shielding of wires the shield needs to be connected to ground in both extremes of the "cable" and is posible to [https://www.youtube.com/watch?v=_mYkM9lHMho solder in aluminium tape]
**1x Fiberglass Scratch Brush or alternatively sandpaper and a needle (to expose copper pads by removing the green varnish masking layer that covers both sides of the motherboard, needed for some alternative points in NAND motherboards installations)
**1x Fiberglass Scratch Brush or alternatively sandpaper and a needle (to expose [https://en.wikipedia.org/wiki/Via_(electronics) vias] by removing the green varnish masking layer that covers both sides of the motherboard, needed for some alternative points in NAND motherboards installations)
**1x Bottle of flux, lead-free, no-clean
**1x Bottle of flux, lead-free, no-clean
**1x Bottle of 99% Isopropyl alcohol, aka Isopropanol (to clean residues from rosin core of tin, or flux)
**1x Bottle of 99% Isopropyl alcohol, aka Isopropanol (to clean residues from rosin core of tin, or flux)
Line 168: Line 196:
As you can see it requires a lot of materials to perform this kind of job.  If you do not already have the parts for this kind of project, it will probably be cheaper to pay someone else to do it and ship it to and from them.  Also if you are not confident in your soldering technique, it is a very realistic possibility that you will damage your PlayStation 3 Console during this process as there are a LOT of soldering joints that need to be perfectly made.
As you can see it requires a lot of materials to perform this kind of job.  If you do not already have the parts for this kind of project, it will probably be cheaper to pay someone else to do it and ship it to and from them.  Also if you are not confident in your soldering technique, it is a very realistic possibility that you will damage your PlayStation 3 Console during this process as there are a LOT of soldering joints that need to be perfectly made.


== Teensy 2.0 ++ Powering options ==
=== Install options ===
Teensy can work in a wide range of voltages up to 5v, but the same voltages that feeds the teensy are used in the data lines (traveling along the wires connected to PS3 flash)
==== Powering options ====
<Gallery>
File:Atmel AT90USB128 bus powered with 3V IO.jpg|Atmel AT90USB128 typical bus powered application with 3V I/O
File:Atmel AT90USB128 bus powered with 5V IO.jpg|Atmel AT90USB128 typical bus powered application with 5V I/O
</Gallery>
 
The Atmel AT90USB1286 microcontroller on the teensy has a voltage operation range from 2.7v up to 5.5v, but the same voltages that feeds the teensy are used in the data lines (traveling along the wires connected to PS3 flash)


All PS3 flash models included NAND and NOR works at a range of around 3.3 volts
All PS3 flash models included NAND and NOR works at a range of around 3 volts


For this reason is mandatory to cut the 5v trace at the bottom of the teensy board and short the 3.3v pads to feed the teensy with 3.3v, this way teensy and the PS3 flash chips will work at the same 3.3 voltage levels
For this reason is mandatory to cut the 5v trace at the bottom of the teensy board to feed the teensy with 3.3v, this way teensy and the PS3 flash chips will work at the same 3.3 voltage levels


{| class="wikitable"
{| class="wikitable"
|-
|-
| [[File:Teensy adapter Board for NANDway - prepare the Teensy.jpg|300px|thumb|left|Prepare the Teensy]] || [[File:Teensy adapter Board for NANDway - cut 5V bridge.jpg|300px|thumb|left|First of all, we cut the following bridge on the bottom side of the Teensy so that the Teensy no longer works with 5V]] || [[File:Teensy adapter Board for NANDway - solder 3V bridge.jpg|300px|thumb|left|now, we solder a bridge between the middle common solder pad and the 3,3V pad]]
| [[File:Teensy adapter Board for NANDway - prepare the Teensy.jpg|350px|thumb|left|Prepare the Teensy and the cutting tool]] || [[File:Teensy adapter Board for NANDway - cut 5V bridge.jpg|350px|thumb|left|Cut the bridge on the bottom side of the Teensy, so the Teensy no longer gets a 5v input from the USB cable/PC]]  
|}
|}


=== Teensy powered by USB with the onboard voltage regulator ===
===== Teensy powered by USB with onboard voltage regulator =====
After cutting the 5v bridge and soldering the 3.3v bridge, we solder the voltage regulator on the Teensy
Cut the 5V bridge and solder the voltage regulator on the Teensy, then join the 3V bridge as shown in the picture.


This is the standard way of powering the teensy with 3.3v, by soldering a 3.3v regulator as explained in https://www.pjrc.com/teensy/3volt.html
With this method there is no need to provide the teensy with external power on the 5v pin next to B6 pin. It will get its power from the usb cable and convert it to 3.3v with the regulator to power the teensy logic.


DON'T CONNECT THE +5V SOLDER PAD IN A CORNER OF THE TEENSY TO ANYTHING !
<table style="width:100%;">[[File:Teensy adapter Board for NANDway - solder regulator on teensy.jpg|350px|thumb|left|Solder regulator on Teensy]]</table>


[[File:Teensy adapter Board for NANDway - solder regulator on teensy.jpg|300px|Teensy adapter Board for NANDway - solder regulator on Teensy]]
===== Teensy powered externally by PS3 or PSU/adaptor =====
After cutting the 5v bridge, solder the 3V bridge, in order to feed the teensy with the 3.3v are several options. Using either an external power supply taking a 3.3v line from the power supply or from a 3.3v point of the PS3 motherboard and connecting it to the +5V pad in a corner of the teensy. Note using a on/off switch in this wire is suggested otherway teensy will be powered up permanently.
<table style="width:100%;">[[File:Teensy adapter Board for NANDway - solder 3V bridge.jpg|350px|thumb|left|Solder a bridge between the middle common pad and the 3V pad]]</table>


=== Teensy powered externally by PS3 or adaptor ===
==== Tristate options ====
Same as before, first is needed to cut the 5v bridge and solder the 3.3v bridge, but here is not used a voltage regulator
Tristate, or as it is referred to in the service manuals SB_DISABLE exists solely for the purpose of placing the [[South Bridge]] pins into high-impedance (aka the [https://en.wikipedia.org/wiki/Three-state_logic third state logic]) so that we can access the flash without the [[South Bridge]] interfering.


To feed the teensy with the 3.3v are several options, as using an external power supply, taking a 3.3v line from the power supply or from some point of the motherboard... info about this methods can be moved here
When the southbridge pins are in tristate is like if southbridge (and all peripherals connected to it) where disconnected from the main circuit, the PS3 powers up normally (fans, etc) but it won't boot up to the XMB screen because some components of the motherboard are not found, it just sits there with a black screen


In all cases, there is a wire connected from the 3.3 voltage power source to the +5V pad in a corner of the teensy. Note using a on/off switch in this wire is suggested otherway teensy will be powered up permanentlly
Because the tristate pin is not connected to the [[Flash (Hardware) | Flash]] TSOP package, but to the [[South Bridge]] BGA package, this makes tracing the pin quite difficult. One should be able to locate it by having the running you could ground out the unknown pins whilst checking the continuity of a known address or data line against ground. These should enter high-impedance or no-continuity when you ground out SB_DISABLE.


DON'T INSTALL VOLTAGE REGULATOR!
===== Tristate Question ====<!--Taken from a conversation between judges and tiago95-->
Q: Just one thing, those anyone know if the teensy sets automatically Tristate to ground on version v0.64 without any usb plugged in?


'''Question (by tiago95)'''
A: No, NORway grounds tristate when you plug it into usb.
Just one thing, those anyone know if the teensy sets automatically Tristate to ground on version v0.64 without any usb plugged in?
   
   
'''Answer (by judges)'''
But depending on how you power Teensy you might observe some unwanted behaviour that can lead to interference with the console when Teensy is wired up:
No, NORway grounds tristate when you plug it into usb.
 
:1. Teensy is powered externally (by console, no vreg)
But depending on how you power Teensy you might observe some unwanted behaviour that can lead to interference with the console when Teensy is wired up:
::* When usb is connected, console won't boot, because tristate gets grounded (by design)
1) Teensy is powered externally (by console, no vreg)
::* When usb is disconnected, console will boot. Everything's peachy
    When usb is connected, console won't boot, because tristate gets grounded (by design)
:2. Teensy is powered by usb (vreg installed)
    When usb is disconnected, console will boot. Everythings peachy
::* When usb is connected, console won't boot, because tristate gets grounded (by design)
2) Teensy is powered by usb (vreg installed)
::* When usb is disconnected, Teensy isn't powered by usb anymore, but might receive some voltage through signal lines, which can lead to unpredictable behaviour because Teensy is running in an undefined state
    When usb is connected, console won't boot, because tristate gets grounded (by design)
 
    When usb is disconnected, Teensy isn't powered by usb anymore, but might receive some voltage through signal lines, which can lead to unpredictable behaviourbecause Teensy is running in an undefined state
==== LED options ====
http://www.psx-place.com/forum/downgrading/launchers-325-post25084.html#post25084
 
===== Removing onboard teensy LED =====
<div style="float:right">[[File:Teensy++ 2.0 schematic.jpg|210px|thumb|right|Teensy++ 2.0 schematic]]</div>
Teensy has an onboard led connected to D6 data line, the led blinks '''only''' when there is activity on the D6 line
 
There is no other software control over the onboard led, if teensy does a write/read on other data lines (not D6) the led is not going to blink
 
Following the schematics for the led is posible to add one more led for every data line. But this is not a good idea, has been discussed and reported that the onboard led is problematic and can cause reading/writing problems, so adding more leds is just going to cause even more problems, actually the best thing you can do with the onboard leds is to disable it
 
To disable the led is posible to desolder it, or desolder its resistor, but technically the best way is by cutting its trace because we dont want the led but we dont want the trace either (a trace that goes nowhere is a bad idea and can cause interferences)
 
The best place to make the cut is '''at bottom of teensy cutting around the D6 pad''', the trace that goes out of D6 pad at bottom is specific for the led. '''WARNING: dont cut the trace at top of the teensy that connects D6 pad with the atmel chip !'''
 
===== Adding an extra LED for teensy =====
Starting at norway v0.8 has been added a new function to controll an external led connected to pad B7 of teensy
 
This external LED emits blinks much more informative than the onboard LED, is intended to give much better feedback to the user, it does a flash blink when teensy connects to the PC client (norway.py) at the same time it shows the version on the PC, also the blinking when reading/writing operations are performed is now accurate
 
This new led functions mapped to pad B7 allows to move the led to any place, handy for permanent installations of teensy because you can place the led on the outside of the PS3 case to see how it blinks, or you can repurpose one/some of the original leds of the PS3 case to be controlled by teensy, as explained here: [[Switch_boards#HSW-001_Contour_backlight_controlled_by_teensy | HSW-001 Contour backlight controlled by teensy]]


== Teensy 2.0 ++ Pinout by flash type ==
=== Pinouts and schematics ===
==== Pinouts by flash type ====
See [[Hardware flashing]] page
See [[Hardware flashing]] page


{{Flash types and models used by PS3}}
{{Flash types and models used by PS3}}


=== Teensy NOR pinout ===
===== NORway =====
<table style="width:100%;">[[File:Teensy++ 2.0 to PS3 flash interface for NORway.jpg|850px|left]]</table>
<!--  OLD
{| class="wikitable"
{| class="wikitable"
|-
|-
| [[File:Teensy2.0++.jpg|500px|thumb|left|Teensy NOR pinout]] || [[File:TOSP1-56pin.png|500px|thumb|left|NOR Flash pinout]]  
| [[File:Teensy2.0++.jpg|500px|thumb|left|Teensy NOR pinout]] || [[File:TOSP1-56pin.png|500px|thumb|left|NOR Flash pinout]]  
|}
|}
-->


=== Teensy NAND Pinout ===
===== NANDway Dual NAND Edition =====
<table style="width:100%;">[[File:Teensy++ 2.0 to PS3 flash interface for NANDway dual NAND edition.jpg|850px|left]]</table>
<!--  OLD
{| class="wikitable"
{| class="wikitable"
|-
|-
| [[File:TeensyNAND.png|500px|thumb|left|Teensy DUAL NAND pinout]] || [[File:NANDway-dualNAND-diagram.jpg|500px|thumb|left|Dual NAND flash pinout]]
| [[File:TeensyNAND.png|500px|thumb|left|Teensy DUAL NAND pinout]] || [[File:NANDway-dualNAND-diagram.jpg|500px|thumb|left|Dual NAND flash pinout]]
|}
|}
-->


===== NANDway Signal Booster Edition =====
<table style="width:100%;">[[File:Teensy++ 2.0 to PS3 flash interface for NANDway signal booster edition.jpg|850px|left]]</table>
<!--  OLD
{| class="wikitable"
{| class="wikitable"
|-
|-
| [[File:NANDway-SignalBoosterEdition.jpg|500px|thumb|left|Teensy NAND Booster edition pinout]] || [[File:TOSP1-48pin.png|500px|thumb|left|NAND flash pinout]]
| [[File:NANDway-SignalBoosterEdition.jpg|500px|thumb|left|Teensy NAND Booster edition pinout]] || [[File:TOSP1-48pin.png|500px|thumb|left|NAND flash pinout]]
|}
|}
-->
==== Schematics by motherboard (retail) ====
The official purpose of this testpoints is to connect the motherboard to a ''JIG machine'' that uses adapters with [https://en.wikipedia.org/wiki/Pogo_pin Pogo pins]


= Teensy Solder Install Notes by Motherboard Model =
===== NAND layout 1 =====
'''Labeled with motherboard testpoint names'''
<Gallery>
File:COK-001 NAND traces.jpg|COK-001 boardtraces (NAND board) confirmed
File:COK-002 NAND traces.jpg|COK-002 boardtraces (NAND board) confirmed
File:SEM-001 NAND traces.jpg|SEM-001 boardtraces (NAND board) confirmed
</Gallery>
 
===== NOR layout 1 =====
'''Labeled with motherboard testpoint names'''
<Gallery>
File:DIA-001_NOR.JPG|DIA-001 NOR Testpoints (NOR layout 1)
File:DIA-002_by_DiscoBear.jpg|DIA-002 NOR Testpoints (NOR layout 1)
</Gallery>
 
===== NOR layout 2 =====
'''Labeled with teensy pad names'''
<Gallery>
File:VER-001_TEENSY_External_Power.jpg|Schematic for VER-001 - Teensy 2++  with '''External Power Only'''
</Gallery>
'''Labeled with motherboard testpoint names'''
<Gallery>
File:VER-001_NOR-3.3V.JPG|VER-001 NOR Testpoints (NOR layout 2)
File:Ver-001 nor-rev.jpg|VER-001 NOR Testpoints - trisaster.de, '''missing Tristate''' (NOR layout 2)
</Gallery>
===== NOR layout 3 =====
'''Labeled with motherboard testpoint names'''
<Gallery>
File:DYN-001_NOR.JPG|DYN-001 NOR Testpoints (NOR layout 3)
File:DYN-001_NOR_-_E3-dual-boot.jpg|DYN-001 NOR Testpoints + dualboot 'AB mod' (NOR layout 3)
File:Dyn 001-progskeet.jpg|DYN-001 NOR Testpoints with progskeet labeling (NOR layout 3)
</Gallery>
===== NOR layout 4 =====
'''Labeled with teensy pad names'''
<Gallery>
File:Teensy++2.0 NOR testpoints layout 4.png|Teensy++2.0 NOR testpoints layout 4
File:Teensy++2.0 SUR-001 NOR testpoints.png|Teensy++2.0 SUR-001 NOR testpoints
File:Teensy++2.0 JTP-001 NOR testpoints.png|Teensy++2.0 JTP-001 NOR testpoints
File:Teensy++2.0 JSD-001 NOR testpoints.png|Teensy++2.0 JSD-001 NOR testpoints
File:Teensy++2.0 KTE-001 NOR testpoints.png|Teensy++2.0 KTE-001 NOR testpoints
File:JSD-001, Teensy2.0++ Connection Diagram.jpg|JSD-001, Teensy++ 2.0 Connection Diagram
</Gallery>
'''Labeled with motherboard testpoint names'''
<Gallery>
File:Jtp jsd kte-progskeet.jpg|JSD-001, JTP-001, KTE-001 NOR Testpoints with Progskeet labeling (NOR layout 4)
File:Progskeet-1.2 - JTP001-JSD001-KTE001.jpg|JSD-001, JTP-001, KTE-001 NOR Testpoints with Progskeet 1.2 labeling (NOR layout 4)
File:JSD-001_NOR.JPG|JSD-001 NOR Testpoints (NOR layout 4)
File:JSD-001_NOR_-_nor_testpoints.png|JSD-001 Testpoints - orig. marcan/noraliser (NOR layout 4)
</Gallery>
 
==== Schematics by motherboard (non retail) ====
===== NOR DEB-001 =====
<Gallery>
File:Teensy++_2.0_DEB-001_NOR_testpoints.jpg|Teensy++ 2.0 DEB-001 NOR testpoints
</Gallery>
 
== Teensy Solder Install Notes by Motherboard Model ==
First open the PS3.  Follow youtube videos to learn how (Just search).
First open the PS3.  Follow youtube videos to learn how (Just search).


Line 245: Line 371:
2.) Internal Case Modifications.  This is the best way to go as you can install the teensy inside of the PS3 for later use.  This is the advantage of using a Teensy 2.0++ because it's just small enough to install inside the PS3 with a little case modification.  Other flashers are generally too large to do this with the PS3 closed up.  You will find there is just no room for it.
2.) Internal Case Modifications.  This is the best way to go as you can install the teensy inside of the PS3 for later use.  This is the advantage of using a Teensy 2.0++ because it's just small enough to install inside the PS3 with a little case modification.  Other flashers are generally too large to do this with the PS3 closed up.  You will find there is just no room for it.


== COK-001, COK-002, COK-002W, SEM-001 ==
=== COK-001, COK-002, COK-002W, SEM-001 ===


I used the image for the Progskeet, along with an image of which Progskeet pin(GP1 etc.) corresponds to which NAND chip pin name (WP, ALE, CLE, I/O1 etc.) to create a diagram of which testpoint on the mainboard goes to which leg of the NAND chips made by Samsung.
I used the image for the Progskeet, along with an image of which Progskeet pin(GP1 etc.) corresponds to which NAND chip pin name (WP, ALE, CLE, I/O1 etc.) to create a diagram of which testpoint on the mainboard goes to which leg of the NAND chips made by Samsung.


[http://ptodorov.com/files/diy/cok002-NAND-TEENSY.jpg Diagram for wiring Teensy++ 2.0 to a PS3 COK-002 mainboard]
<table style="width:100%;">
  <tr>
      <td>[[File:Cok002-NAND-TEENSY.jpg|250px|thumb|left|Diagram for wiring Teensy++ 2.0 to a PS3 COK-002 mainboard.]]</td>
  </tr>
</table>


So now you can use this diagram not only for downgrading/dumping/writing the NANDs with a Teensy++ 2.0 board, but with any other board available on the Internet.
So now you can use this diagram not only for downgrading/dumping/writing the NANDs with a Teensy++ 2.0 board, but with any other board available on the Internet.
Line 255: Line 385:
'''Important:''' You must provide a stable 3.3V PSU to both the PS3 board and the Teensy, and don’t forget to unite the GNDs. You can use any PSU which outputs 3.3V @ 1.8A+, the easiest option will be to use a PC PSU.
'''Important:''' You must provide a stable 3.3V PSU to both the PS3 board and the Teensy, and don’t forget to unite the GNDs. You can use any PSU which outputs 3.3V @ 1.8A+, the easiest option will be to use a PC PSU.


== DIA-001, DIA-002 ==
=== DIA-001, DIA-002 ===
Parts not needed?  Submitter please list here.<br>
Parts not needed?  Submitter please list here.<br>




=== Installation and Case Modification ===
==== Installation and Case Modification ====
This installation the case was not modified.  It was flashed while opened, and removed.
This installation the case was not modified.  It was flashed while opened, and removed.
<table style="width:100%;">
<table style="width:100%;">
Line 268: Line 398:
</table>
</table>


== VER-001 ==
=== VER-001 ===


Usage :
Usage :
Line 280: Line 410:
</gallery>
</gallery>


=== Installation and case modification ===
==== Installation and case modification ====
In this installation, the cables were strategically soldered to fit better and not break or short when the power supply was placed, so no external power was needed.
In this installation, the cables were strategically soldered to fit better and not break or short when the power supply was placed, so no external power was needed.
<table style="width:100%;">
<table style="width:100%;">
Line 291: Line 421:
</table>
</table>


== DYN-001 ==
=== DYN-001 ===


Parts not needed - Torque T-10 Screwdriver.  (T-8 IS still needed!)<br>
Parts not needed - Torque T-10 Screwdriver.  (T-8 IS still needed!)<br>
<br>
<br>


=== Installation and Case Modifications ===
==== Installation and Case Modifications ====


Be sure to make a screw map when disassembling the PS3, there are a lot of screws, and you will not remember where they go.
Be sure to make a screw map when disassembling the PS3, there are a lot of screws, and you will not remember where they go.
Line 341: Line 471:
You can test your work before putting the cover top back on.  Just make sure blu-ray and power-supply are connected and everything else before trying.  This is so you know that everything is fitting okay and that the install has worked for you.  Take 3 dumps (Read above on how to take a dump of NOR) and compare them.  Do md5sum and sha1sum, and then try and unpack them with norunpack from f0f tools.  If they all match, and it unpackages, congratulations you have a good dump!
You can test your work before putting the cover top back on.  Just make sure blu-ray and power-supply are connected and everything else before trying.  This is so you know that everything is fitting okay and that the install has worked for you.  Take 3 dumps (Read above on how to take a dump of NOR) and compare them.  Do md5sum and sha1sum, and then try and unpack them with norunpack from f0f tools.  If they all match, and it unpackages, congratulations you have a good dump!


== JSD-001 ==
=== JSD-001 ===
No dremel required.  Design of this CECH 2500 series has an opened hole area to put wires through.<br>
No dremel required.  Design of this CECH 2500 series has an opened hole area to put wires through.<br>




=== Installation and Case Modification ===
==== Installation and Case Modification ====
<table style="width:100%;">
<table style="width:100%;">
   <tr>
   <tr>
Line 352: Line 482:
       <td>[[File:install-3.jpg|250px|thumb|left|JSD-001 Post wire job from motherboard view with wire wrap.]]<br />
       <td>[[File:install-3.jpg|250px|thumb|left|JSD-001 Post wire job from motherboard view with wire wrap.]]<br />
           [[File:install-4.jpg|250px|thumb|left|JSD-001 Teensy placement and wired up. Notice open space.]]</td>
           [[File:install-4.jpg|250px|thumb|left|JSD-001 Teensy placement and wired up. Notice open space.]]</td>
      <td>[[File:JSD-001 testpoints.png|250px|thumb|left|JSD-001 Motherboard NOR Test Points.]]<br />
          [[File:JSD-001, Teensy2.0++ Connection Diagram.jpg|250px|thumb|left|JSD-001, Teensy2.0++ Connection Diagram]]</td>
   </tr>
   </tr>
</table>
</table>


== SUR-001/JTP-001/KTE-001 ==
=== SUR-001/JTP-001/KTE-001 ===


*** Need submissions...
*** Need submissions...


= Teensy Flash Clip adapters =
== Teensy Flash Clip adapters ==


== Teensy clip adapter Board for NANDway v1 ==
=== Teensy clip adapter Board for NANDway v1 ===
Layout for a PCB without external Voltage-source (this was the first version without capacitors, Voltageregulator and two bridges)
Layout for a PCB without external Voltage-source (this was the first version without capacitors, Voltageregulator and two bridges)


deprecated, use v2 instead
deprecated, use v2 instead


=== Gallery ===
==== Gallery ====
<gallery>
<gallery>
File:Teensy adapter Board for NANDway v1 - top.jpg|Teensy adapter Board for NANDway v1 - top
File:Teensy adapter Board for NANDway v1 - top.jpg|Teensy adapter Board for NANDway v1 - top
Line 374: Line 502:
</gallery>
</gallery>


=== Download ===
==== Download ====
[http://playstationhax.it/forums/index.php?app=core&module=attach&section=attach&attach_id=53 Teensy2Clip - Folie.pdf] [https://mega.co.nz/#!Dls10aqQ!yawLBI-hRRksCJmExqwi4B6MQV7Hk8NEfspxAnOu-EQ mirror]
[http://playstationhax.it/forums/index.php?app=core&module=attach&section=attach&attach_id=53 Teensy2Clip - Folie.pdf] [https://mega.co.nz/#!Dls10aqQ!yawLBI-hRRksCJmExqwi4B6MQV7Hk8NEfspxAnOu-EQ mirror]


== Teensy clip adapter Board for NANDway v2.1 ==
=== Teensy clip adapter Board for NANDway v2.1 ===
[[File:Teensy adapter Board for NANDway - intro.jpg|Teensy adapter Board for NANDway]]<br />
Allows to connect a [http://www.pjrc.com/store/teensypp.html Teensy++ 2.0] to a [http://www.360-clip.com/ 360-NAND Clip]<br />
'''Source article:''' http://playstationhax.it/forums/topic/1149-teensy-adapter-board-for-nandway/
'''Source article:''' http://playstationhax.it/forums/topic/1149-teensy-adapter-board-for-nandway/<br />
[[File:Teensy adapter Board for NANDway - intro.jpg|Teensy adapter Board for NANDway]][[File:360-clip-nand.jpg|360-clip for NAND flash]]
   
   
Hey. in the past, i create a simple adapter board to connect the Teensy to a "360-clip NAND Clip" (the classic kind of NAND Clips). It's easier and faster to solder a board than [[:File:Teensy NANDway - wired Clip.jpg|wire the cables]], no more problems with cable breaks and a good connection. An english speaking user ask me for a solder tutorial, so I thought on this occasion, i can write directly to the community. :)
Hey. in the past, i create a simple adapter board to connect the Teensy to a "360-clip NAND Clip" (the classic kind of NAND Clips). It's easier and faster to solder a board than [[:File:Teensy NANDway - wired Clip.jpg|wire the cables]], no more problems with cable breaks and a good connection. An english speaking user ask me for a solder tutorial, so I thought on this occasion, i can write directly to the community. :)
Line 390: Line 519:
But now the tutorial with some words (the most things should be self-explanatory).
But now the tutorial with some words (the most things should be self-explanatory).
   
   
=== What you need ===
==== What you need ====
[[File:Teensy adapter Board for NANDway - what you need.jpg|300px|Teensy adapter Board for NANDway - what you need]]
[[File:Teensy adapter Board for NANDway - what you need.jpg|300px|Teensy adapter Board for NANDway - what you need]]


Line 396: Line 525:
* 1x Teensy++ 2.0
* 1x Teensy++ 2.0
* 1x 5V to 3,3V Voltage Regulator for the Teensy ([https://www.pjrc.com/store/mcp1825.html MCP1825], [https://www.reichelt.de/ICs-LM-2000-LM-25576/LM-3940-IMP-3-3/3/index.html?&ACTION=3&LA=5000&GROUP=A2153&GROUPID=5466&ARTICLE=109407&START=0&SORT=preis&OFFSET=500 LM3940] or Pin-compatible)
* 1x 5V to 3,3V Voltage Regulator for the Teensy ([https://www.pjrc.com/store/mcp1825.html MCP1825], [https://www.reichelt.de/ICs-LM-2000-LM-25576/LM-3940-IMP-3-3/3/index.html?&ACTION=3&LA=5000&GROUP=A2153&GROUPID=5466&ARTICLE=109407&START=0&SORT=preis&OFFSET=500 LM3940] or Pin-compatible)
* 1x [http://wii-clip.com/360/360-CLIP_12.jpg TSSOP 32 NAND-Clip] (360-Clip) with equipment (Flat-cable, Pin-header (2x11) and the red adapter board (you get always all these things when you buy a new NAND Clip))
* 1x [http://www.360-clip.com/360-CLIP_12.jpg TSSOP 48 NAND-Clip] (360-Clip) with equipment (Flat-cable, Pin-header (2x11) and the red adapter board (you get always all these things when you buy a new NAND Clip)
* 2x [https://www.reichelt.de/Stiftleisten/MPE-087-1-020/3/index.html?&ACTION=3&LA=5000&GROUP=C141&GROUPID=3220&ARTICLE=119888&START=0&SORT=preis&OFFSET=500 Pin-header (1x20)]
* 2x [https://www.reichelt.de/Stiftleisten/MPE-087-1-020/3/index.html?&ACTION=3&LA=5000&GROUP=C141&GROUPID=3220&ARTICLE=119888&START=0&SORT=preis&OFFSET=500 Pin-header (1x20)]
* 1x [https://www.reichelt.de/Stiftleisten/MPE-087-2-008/3/index.html?&ACTION=3&LA=5000&GROUP=C141&GROUPID=3220&ARTICLE=119894&START=0&SORT=preis&OFFSET=500 Pin-header (2x4)]
* 1x [https://www.reichelt.de/Stiftleisten/MPE-087-2-008/3/index.html?&ACTION=3&LA=5000&GROUP=C141&GROUPID=3220&ARTICLE=119894&START=0&SORT=preis&OFFSET=500 Pin-header (2x4)]
   
   
==== optional but recommendable ====
===== optional but recommendable =====
* 2x [https://www.reichelt.de/Buchsenleisten/BL-1X20G8-2-54/3/index.html?&ACTION=3&LA=5000&GROUP=C142&GROUPID=3221&ARTICLE=51827&START=0&SORT=preis&OFFSET=500 female connector (1x20)]
* 2x [https://www.reichelt.de/Buchsenleisten/BL-1X20G8-2-54/3/index.html?&ACTION=3&LA=5000&GROUP=C142&GROUPID=3221&ARTICLE=51827&START=0&SORT=preis&OFFSET=500 female connector (1x20)]
* 1x [https://www.reichelt.de/Buchsenleisten/MPE-094-2-008/3/index.html?&ACTION=3&LA=5000&GROUP=C142&GROUPID=3221&ARTICLE=119928&START=0&SORT=preis&OFFSET=500 female connector (2x4)]
* 1x [https://www.reichelt.de/Buchsenleisten/MPE-094-2-008/3/index.html?&ACTION=3&LA=5000&GROUP=C142&GROUPID=3221&ARTICLE=119928&START=0&SORT=preis&OFFSET=500 female connector (2x4)]
Line 408: Line 537:
* 1x Capacitor 10µF SMD-0805
* 1x Capacitor 10µF SMD-0805
   
   
==== Optional (if you want power the NAND with external Power) ====
===== Optional (if you want power the NAND with external Power) =====
* 1x 5V to 3,3V Voltage Regulator ([https://www.reichelt.de/ICs-LMC-LS-/LMS-1587-CS-3-3/3/index.html?&ACTION=3&LA=5000&GROUP=A2154&GROUPID=5467&ARTICLE=109422&START=0&SORT=preis&OFFSET=500 LMS1587CS-3.3] or Pin-compatible)
* 1x 5V to 3,3V Voltage Regulator ([https://www.reichelt.de/ICs-LMC-LS-/LMS-1587-CS-3-3/3/index.html?&ACTION=3&LA=5000&GROUP=A2154&GROUPID=5467&ARTICLE=109422&START=0&SORT=preis&OFFSET=500 LMS1587CS-3.3] or Pin-compatible)
* 1x 5V Powersupply (minimum 3A)
* 1x 5V Powersupply (minimum 3A)


See section above to cut the 5v trace on teensy and how to solder the 3.3v regulator at the bottom of teensy board
See section above to cut the 5v trace on teensy and how to solder the 3.3v regulator at the bottom of teensy board
 
=== Solder the adapter board ===
==== Solder the adapter board ====
==== Solder pinheaders on adapterboard ====
===== Solder pinheaders on adapterboard =====
Solder the pin-header on the board (be careful, the plastic of the pin-header could melt fast)<br />
Solder the pin-header on the board (be careful, the plastic of the pin-header could melt fast)<br />


Line 422: Line 551:
now, plug the red adapter board (which was at the NAND-clip) on the pin-header, solder the pins and cut them if they are too long.<br />
now, plug the red adapter board (which was at the NAND-clip) on the pin-header, solder the pins and cut them if they are too long.<br />


==== Solder adapterboard on pinheader ====
===== Solder adapterboard on pinheader =====
[[File:Teensy adapter Board for NANDway - solder adapterboard on pinheader.jpg|300px|Teensy adapter Board for NANDway - solder adapterboard on pinheader]]
[[File:Teensy adapter Board for NANDway - solder adapterboard on pinheader.jpg|300px|Teensy adapter Board for NANDway - solder adapterboard on pinheader]]


==== Mount Teensy to board ====
===== Mount Teensy to board =====
You can choose, if you want solder the Teensy fixed on the board....<br />
You can choose, if you want solder the Teensy fixed on the board....<br />


Line 434: Line 563:
[[File:Teensy adapter Board for NANDway - solder teensy on female pinheader.jpg|300px|Teensy adapter Board for NANDway - solder teensy on female pinheader]]
[[File:Teensy adapter Board for NANDway - solder teensy on female pinheader.jpg|300px|Teensy adapter Board for NANDway - solder teensy on female pinheader]]


==== Powersource 1x3 pinheader ====
===== Powersource 1x3 pinheader =====
with the following 1x3 pin-header, you can choose the Powersource for the NAND (external, or USB) (sometimes it can cause problems, when you use the USB as Power Supply)<br />
with the following 1x3 pin-header, you can choose the Powersource for the NAND (external, or USB) (sometimes it can cause problems, when you use the USB as Power Supply)<br />


Line 443: Line 572:
[[File:Teensy adapter Board for NANDway - 1x3 Pinheader Powersource by USB.jpg|300px|Teensy adapter Board for NANDway - 1x3 Pinheader Powersource by USB]]
[[File:Teensy adapter Board for NANDway - 1x3 Pinheader Powersource by USB.jpg|300px|Teensy adapter Board for NANDway - 1x3 Pinheader Powersource by USB]]
   
   
==== Optional things: ====
===== Optional things: =====
===== Filtering =====
====== Filtering ======
for a cleaner voltage, you should solder the capacitors<br />
for a cleaner voltage, you should solder the capacitors<br />


Line 451: Line 580:
[[File:Teensy adapter Board for NANDway - Soldered capacitors for cleaner voltage.jpg|300px|Teensy adapter Board for NANDway - Soldered capacitors for cleaner voltage]]
[[File:Teensy adapter Board for NANDway - Soldered capacitors for cleaner voltage.jpg|300px|Teensy adapter Board for NANDway - Soldered capacitors for cleaner voltage]]
    
    
===== External regulator =====
====== External regulator ======
you can also solder a stronger voltage-regulator (than the one on the Teensy)  to connect a stronger 5V power supply (than your USB Port).
you can also solder a stronger voltage-regulator (than the one on the Teensy)  to connect a stronger 5V power supply (than your USB Port).


Line 460: Line 589:
[[File:Teensy adapter Board for NANDway - Soldered Regulator.jpg|300px|Teensy adapter Board for NANDway - Soldered Regulator]]
[[File:Teensy adapter Board for NANDway - Soldered Regulator.jpg|300px|Teensy adapter Board for NANDway - Soldered Regulator]]


===== DC connector =====
====== DC connector ======
you can connect your 5V Power supply on the marked solder points. I used a DC-coupling for a better handling<br />
you can connect your 5V Power supply on the marked solder points. I used a DC-coupling for a better handling<br />


Line 467: Line 596:
when you want use the external voltage, you must reposition the jumper (like you can see on the picture), but you can always change the powersource with the jumper
when you want use the external voltage, you must reposition the jumper (like you can see on the picture), but you can always change the powersource with the jumper


=== Where you can buy this boards? ===
==== Where you can buy this boards? ====
You can find a zip-file to download below. in this file, you find the complete project folder. You can use the files to view and change the Layout or the circuit diagram, but if you only want a board, you can send this zip-file to a PCB service. I order my boards always at [http://elecrow.com/ elecrow.com]. The board has a size of 55mm x 45mm, so you must order the boards on [http://www.elecrow.com/2-layer-10cm-10cm-max-pcb-510pcs-color-free-p-328.html this page].
You can find a zip-file to download below. in this file, you find the complete project folder. You can use the files to view and change the Layout or the circuit diagram, but if you only want a board, you can send this zip-file to a PCB service. I order my boards always at [http://elecrow.com/ elecrow.com]. The board has a size of 55mm x 45mm, so you must order the boards on [http://www.elecrow.com/2-layer-10cm-10cm-max-pcb-510pcs-color-free-p-328.html this page].


Line 474: Line 603:
[[File:Teensy adapter Board for NANDway - Elecrow.jpg|300px|Teensy adapter Board for NANDway - Elecrow]]
[[File:Teensy adapter Board for NANDway - Elecrow.jpg|300px|Teensy adapter Board for NANDway - Elecrow]]


==== Download ====  
===== Download ====  
[http://playstationhax.it/forums/index.php?app=core&module=attach&section=attach&attach_id=46 Teensy Adapter Platine V2.zip] / [https://mega.co.nz/#!bs00XYCY!9o5YOJ4ellYZmH2Imnep5eNpJl3lNal_ngf_2Z0VOg8 mirror]
[http://playstationhax.it/forums/index.php?app=core&module=attach&section=attach&attach_id=46 Teensy Adapter Platine V2.zip] / [https://mega.co.nz/#!bs00XYCY!9o5YOJ4ellYZmH2Imnep5eNpJl3lNal_ngf_2Z0VOg8 mirror]


Line 488: Line 617:
[http://playstationhax.it/forums/index.php?app=core&module=attach&section=attach&attach_id=47 Teensy Adapter Platine V2.pdf] [https://mega.co.nz/#!vpsj0SCK!7R9SxOU162E7HvG0Utack2slqYetKpr3oJoYrwgeRuc mirror]
[http://playstationhax.it/forums/index.php?app=core&module=attach&section=attach&attach_id=47 Teensy Adapter Platine V2.pdf] [https://mega.co.nz/#!vpsj0SCK!7R9SxOU162E7HvG0Utack2slqYetKpr3oJoYrwgeRuc mirror]


== TEENSY2PS3 ==
=== TEENSY2PS3 ===
http://www.psx-place.com/forum/downgrading/teensy2ps3-pcb-linker-teensy-2-0-ps3-1728.html
http://www.psx-place.com/forum/downgrading/teensy2ps3-pcb-linker-teensy-2-0-ps3-1728.html


Line 494: Line 623:


http://www.mediafire.com/download/i9tma7gkft84442/TEENSY2PS3_v1.00.zip  
http://www.mediafire.com/download/i9tma7gkft84442/TEENSY2PS3_v1.00.zip  
== Offboard flashing ==
Using flash [https://en.wikipedia.org/wiki/Zero_insertion_force ZIF] sockets
=== TSOP48 ZIF socket (for NAND) ===
=== TSOP56 ZIF socket (for NOR) ===
*REMARK >> WP(pin 16) to Vcc  and BYTE(pin 53) to Vcc
== Teensy Official Distributors ==
https://forum.pjrc.com/threads/23601-Official-Distributors
* PJRC (USA, Oregon) : http://www.pjrc.com/store/teensypp.html + http://www.pjrc.com/store/mcp1825.html
* Adafruit (USA, New York) : http://www.adafruit.com/products/731 +
* Floris.cc (Netherlands) : http://floris.cc/shop/en/teensy/951-teensy-20-usb-development-board.html + http://floris.cc/shop/en/teensy/89-mcp1825s-33-volt-voltage-regulator-for-teensy-2.html
* MindKits (New Zealand) : http://www.mindkits.co.nz/store/arduino-compatible/teensy-2-0 + ? http://www.mindkits.co.nz/store/components-ics-breakout-boards/voltage-regulator-3v3 (not SOT-223) or http://www.mindkits.co.nz/store/components-ics-breakout-boards/voltage-regulator-adjustable-lm1117-smd (not fixated: requires two external resistors for trimming it to 3.3V)
* HiTech Store (Germany) : http://www.hitechstore.de/produkt/teensypp/ + http://www.hitechstore.de/produkt/mcp1825s33/
* Watterott (Germany) http://www.watterott.com/de/Teensy-v20-AT90USB1286
* Boxtec (Switzerland) : http://shop.boxtec.ch/teensy-board-p-40725.html + ? http://shop.boxtec.ch/ams1117-voltage-regulator-p-40516.html  '''out of catalog'''
* Teague (as part of Teagueduino) : '''no stock'''
* Sound Art Lab (South Korea) : '''no stock'''
* Little Bird Electronics (Australia) : http://littlebirdelectronics.com.au/products/teensy-2-0
* Hobbytronics (UK) : http://www.hobbytronics.co.uk/teensy-pp2
* Proto-pic (UK) : http://proto-pic.co.uk/teensy-2-0/
* PT-robotics (Portugal) : http://www.ptrobotics.com/modulos-teensy/2539-teensy-20.html
{{Hardware Flashers}}<noinclude>[[Category:Main]]</noinclude>
{{Hardware Flashers}}<noinclude>[[Category:Main]]</noinclude>

Latest revision as of 16:16, 16 September 2021

Teensy++ 2.0 perspective view

Teensy++ 2.0 top view

Teensy++ 2.0 bottom view

Teensy++ 2.0 schematic

Atmel AT90USB128 pinout

USB pinout

Description[edit | edit source]

The Teensy is a complete USB-based microcontroller development system, in a very small footprint, capable of implementing many types of projects. All programming is done via the USB port. No special programmer is needed

To use it as a PS3 flasher is needed to program it with either NORway.hex or NANDway.hex, explained below

  • Teensy++ 2.0 dimensions: (1 decimal rounded)
    • PCB length - 5 centimeter (2.0 inch)
    • PCB width - 1.7 centimeter (0.7 inch)
    • PCB thick - 1.5 milimeter
    • PCB + Atmel thick - 2.4 milimeter
    • PCB + button thick - 3.6 milimeter
    • PCB + USB connector thick - 5.7 milimeter
    • PCB + USB connector + regulator thick - 7.2 milimeter


Teensy Related Software[edit | edit source]

Teensy drivers[edit | edit source]

Teensy 2.0++ needs windows drivers and linux udev rules to be recognized fully as it was meant to, as explained here http://www.pjrc.com/teensy/usb_serial.html

Teensy loader[edit | edit source]

Program used to load the compiled hex-file for the Teensy++ 2.0 microcontroller (AT90USB1286), as explained here: http://www.pjrc.com/teensy/loader.html

Loading programs to teensy microcontroller[edit | edit source]

See the project home: NORway git, (previously NORway-and-NANDway but now merged in main git)

And download the whole git project from: master.zip

Choose one of the programs needed to be loaded to the teensy to use it as a PS3 flasher (based on your flash type and/or installation type and wiring):

  • NORway.hex (for NOR flash PS3 models)
  • NANDway_DualNANDEdition.hex (for NAND flash PS3 models with both NANDS connected to teensy)
  • NANDway_SignalBoosterEdition.hex (for NAND flash PS3 models with a single NAND connected to teensy)

PC Clients[edit | edit source]

NORway.py[edit | edit source]

Usage:

Type This
C:\>NORway.py
NORway.py v0.8 - Teensy++ 2.0 NOR flasher for PS3 ([email protected])
(Original noralizer.py by Hector Martin "marcan" <[email protected]>)

Usage:
C:\NORway.py serialport [command] [filename] [address]

  serialport             Name of serial port to open (eg. COM1, COM2, /dev/ttyACM0, etc)
  command  dump          Reads entire NOR to [filename]
           erase         Erases one sector/block (128KB/64KB/8KB) at [address]
           erasechip     Erases entire NOR
           write         Flashes (read-erase-modify-write) [filename] at [address] to NOR (buffered programming mode)
           writeword     Flashes (read-erase-modify-write) [filename] at [address] to NOR (word programming mode)
           writewordubm  Flashes (read-erase-modify-write) [filename] at [address] to NOR (word programming/unlock bypass mode)
           vwrite        Flashes (read-erase-modify-write-verify) [filename] at [address] to NOR (buffered programming mode)
           vwriteword    Flashes (read-erase-modify-write-verify) [filename] at [address] to NOR (word programming mode)
           vwritewordubm Flashes (read-erase-modify-write-verify) [filename] at [address] to NOR (word programming/unlock bypass mode)
           verify        Verifies NOR content with [filename] at [address]
           release       Releases NOR interface, so the PS3 can boot
           bootloader    Enters Teensy's bootloader mode
  filename               Filename for [dump|(v)write|(v)writeword|(v)writewordubm|verify]
  address                Address for [erase|(v)write|(v)writeword|(v)writewordubm|verify]. Default is 0x0, address must be aligned (multiple of 0x20000)

Examples:
  C:\NORway.py COM1
  C:\NORway.py COM1 dump d:\myflash.bin
  C:\NORway.py COM1 erase 0x20000
  C:\NORway.py COM1 erasechip
  C:\NORway.py COM1 write d:\myflash.bin
  C:\NORway.py COM1 write d:\myflash.bin 0xA0000
  C:\NORway.py COM1 writeword d:\myflash.bin
  C:\NORway.py COM1 writewordubm d:\myflash.bin 0x40000
  C:\NORway.py COM1 verify d:\myflash.bin
  C:\NORway.py COM1 release
  • For Mac OS-X users with problems of timeouts there is an unnofficial patch available in Discussion page

NANDway.py[edit | edit source]

Usage:

Type This
C:\>NANDway.py
NANDway v0.64 - Teensy++ 2.0 NAND Flasher for PS3/Xbox/Wii
(Original NORway.py by judges <[email protected]>)
(Original noralizer.py by Hector Martin "marcan" <[email protected]>)

Usage:
NANDway.py Serial-Port 0/1 Command

  Serial-Port  Name of serial port to open (eg. COM1, COM2, /dev/ttyACM0, etc)
  0/1  NAND id number: 0-NAND0, 1-NAND1
  Commands:
  *  info
     Displays information about NAND
  *  dump Filename [Offset] [Length]
     Dumps to Filename at [Offset] and [Length]
  *  vwrite/write Filename [Offset] [Length]
     Flashes (v=verify) Filename at [Offset] and [Length]
  *  vdiffwrite/diffwrite Filename Diff-file
     Flashes (v=verify) Filename using a Diff-file
  *  ps3badblocks Filename
     Identifies bad blocks in Filename (raw dump)
  *  bootloader
     Enters Teensy's bootloader mode (for Teensy reprogramming)

     Notes: 1) All offsets and lengths are in hex (number of blocks)
            2) The Diff-file is a file which lists all the changed offsets of a dump file. This will increase flashing time dramatically.

Examples:
  NANDway.py COM1 0 info
  NANDway.py COM1 0 dump d:\myflash.bin
  NANDway.py COM1 1 dump d:\myflash.bin 3d a0
  NANDway.py COM1 0 write d:\myflash.bin
  NANDway.py COM3 1 write d:\myflash.bin 20 1c
  NANDway.py COM3 0 vwrite d:\myflash.bin
  NANDway.py COM3 1 vwrite d:\myflash.bin 8d 20
  NANDway.py COM4 0 diffwrite d:\myflash.bin d:\myflash_diff.txt
  NANDway.py COM3 1 vdiffwrite d:\myflash.bin d:\myflash_diff.txt
  NANDway.py COM1 0 bootloader
  NANDway.py ps3badblocks d:\myflash.bin

Notes:

  • WP: When the NANDs are mounted on the PS3 motherboard - the WP controllines are already connected to +3.3V. If Teensy is used for NANDs on the PS3 motherboard - the WP wire for each NAND can be discarded.
  • Vcc: Teensy 3.3V regulator cannot power the NANDs on the PS3. The drain of the motherboard summed by the other peripherals draw too much current (~1.8A). The NANDs can be powered from external 3.3V power supply like ATX power supply (the orange 3.3V line of the ATX main connector).

Others[edit | edit source]

WAY-launchers[edit | edit source]

Simple GUI to run NORway, NANDway and SPIway.

Project home:

Forum threads:

norpatch.exe[edit | edit source]

Small tool to verify content of NOR dump (recognizes any OFW), replace ros0/ros1 with new core os (.NET 2.0 required)

Dump integrity validators[edit | edit source]

See also: Validating flash dumps

Pre-Installation Requirements[edit | edit source]

= Tools[edit | edit source]

The following is a list of suggested good tools and parts you could use to perform the installation of the Teensy++ 2.0 in a PS3

  • PS3 disassembling tools:
    • 1x Regular Philips head screwdriver
    • 1x Torx T-10 or T-8 screwdriver (depending on PS3 model)
  • Case modification tools:
    • 1x Cutting knife (to make straight cuts in the plastic)
    • 1x Drill and small drill bits set
    • 1x Needle file set (also known as diamond files for jewellry or hobbyists) with shapes as rounded, squared, triangular, etc. (to make holes in the plastic case or metals with different shapes)
    • 1x Dremel tool or similar (to make long straight cuts, not needed on some models)
    • 1x Roll of double sided foam tape, or double side thermal resistant tape over 300°C (known as polyimide or kapton tape)
  • Soldering work tools:
    • 1x Soldering iron (15-30 Watt, or around 230°C) with a 1 millimetre tip
    • 1x Tin solder (60/40 or a low melting point 63/37 alloy) with a high percentage of flux core like 2%)
    • 1x 30AWG or 26 AWG silver-plated solid core and thermal resistant insulated wrapping wire, also known as kynar wire. (Few have reported 30AWG may be too small and has interference but does work if done well.)
    • 1x Cutting knife (to peel wire tips by cutting around them), or a wire stripper tool
    • 1x Multimeter (to identify shorts, to identify bad cold solder joints, to find where copper traces in the motherboard are connected, etc.)
    • 1x Desoldering braid (aka desoldering wick or solder wick) preferred more than 2 millimetre wide (to fix the mistakes by melting the tin and wicking it, to remove the factory lead-free solder, to clean solders joints where a bad tin alloy happened because residues or degradation of the tin, to remove bridges between pins or pads, etc.)
    • 1x Single side thermal resistant tape over 300°C, known as polyimide or kapton tape (to stick wires in place, and other uses)
    • 1x Single side aluminium tape (glued), or alufoil (not glued), to create interference shields 1 2 for data wires and to cover PCB's (aluminium protects against interferences but is conductive for this reason is needed to isolate aluminium layers at top and bottom with non-conductive layers as kapton to avoid shorcuts, like a sandwich). Note for correct shielding of wires the shield needs to be connected to ground in both extremes of the "cable" and is posible to solder in aluminium tape
    • 1x Fiberglass Scratch Brush or alternatively sandpaper and a needle (to expose vias by removing the green varnish masking layer that covers both sides of the motherboard, needed for some alternative points in NAND motherboards installations)
    • 1x Bottle of flux, lead-free, no-clean
    • 1x Bottle of 99% Isopropyl alcohol, aka Isopropanol (to clean residues from rosin core of tin, or flux)
    • 1x Box of cotton swabs / Q-tips (to spread flux, or clean with alcohol where needed.)
  • Other helpers:
    • 1x Good lighting (either very well lighted room or a lamp. You need to be able to check your work.)
    • 1x Magnifying glass, or jewellry magnifier, preferred 50x zoom (to check your soldering joints for bad cold solders.)
    • 1x Small tweezers with a wide tip (to grab wires very close to the tip while soldering them and not burning your fingers in the process, only needed when the solder joint requires extreme precision)
    • 1x Pair of steady hands (not joking. tremor fingers will not cut it. You are soldering 40+ points and all must be done very well.)
    • 20x of patience, if you are having lot of problems is a good idea to stop and continue another day

As you can see it requires a lot of materials to perform this kind of job. If you do not already have the parts for this kind of project, it will probably be cheaper to pay someone else to do it and ship it to and from them. Also if you are not confident in your soldering technique, it is a very realistic possibility that you will damage your PlayStation 3 Console during this process as there are a LOT of soldering joints that need to be perfectly made.

Install options[edit | edit source]

Powering options[edit | edit source]

The Atmel AT90USB1286 microcontroller on the teensy has a voltage operation range from 2.7v up to 5.5v, but the same voltages that feeds the teensy are used in the data lines (traveling along the wires connected to PS3 flash)

All PS3 flash models included NAND and NOR works at a range of around 3 volts

For this reason is mandatory to cut the 5v trace at the bottom of the teensy board to feed the teensy with 3.3v, this way teensy and the PS3 flash chips will work at the same 3.3 voltage levels

Prepare the Teensy and the cutting tool
Cut the bridge on the bottom side of the Teensy, so the Teensy no longer gets a 5v input from the USB cable/PC
Teensy powered by USB with onboard voltage regulator[edit | edit source]

Cut the 5V bridge and solder the voltage regulator on the Teensy, then join the 3V bridge as shown in the picture.

With this method there is no need to provide the teensy with external power on the 5v pin next to B6 pin. It will get its power from the usb cable and convert it to 3.3v with the regulator to power the teensy logic.

Solder regulator on Teensy
Teensy powered externally by PS3 or PSU/adaptor[edit | edit source]

After cutting the 5v bridge, solder the 3V bridge, in order to feed the teensy with the 3.3v are several options. Using either an external power supply taking a 3.3v line from the power supply or from a 3.3v point of the PS3 motherboard and connecting it to the +5V pad in a corner of the teensy. Note using a on/off switch in this wire is suggested otherway teensy will be powered up permanently.

Solder a bridge between the middle common pad and the 3V pad

Tristate options[edit | edit source]

Tristate, or as it is referred to in the service manuals SB_DISABLE exists solely for the purpose of placing the South Bridge pins into high-impedance (aka the third state logic) so that we can access the flash without the South Bridge interfering.

When the southbridge pins are in tristate is like if southbridge (and all peripherals connected to it) where disconnected from the main circuit, the PS3 powers up normally (fans, etc) but it won't boot up to the XMB screen because some components of the motherboard are not found, it just sits there with a black screen

Because the tristate pin is not connected to the Flash TSOP package, but to the South Bridge BGA package, this makes tracing the pin quite difficult. One should be able to locate it by having the running you could ground out the unknown pins whilst checking the continuity of a known address or data line against ground. These should enter high-impedance or no-continuity when you ground out SB_DISABLE.

= Tristate Question[edit | edit source]

Q: Just one thing, those anyone know if the teensy sets automatically Tristate to ground on version v0.64 without any usb plugged in?

A: No, NORway grounds tristate when you plug it into usb.

But depending on how you power Teensy you might observe some unwanted behaviour that can lead to interference with the console when Teensy is wired up:

1. Teensy is powered externally (by console, no vreg)
  • When usb is connected, console won't boot, because tristate gets grounded (by design)
  • When usb is disconnected, console will boot. Everything's peachy
2. Teensy is powered by usb (vreg installed)
  • When usb is connected, console won't boot, because tristate gets grounded (by design)
  • When usb is disconnected, Teensy isn't powered by usb anymore, but might receive some voltage through signal lines, which can lead to unpredictable behaviour because Teensy is running in an undefined state

LED options[edit | edit source]

http://www.psx-place.com/forum/downgrading/launchers-325-post25084.html#post25084

Removing onboard teensy LED[edit | edit source]
Teensy++ 2.0 schematic

Teensy has an onboard led connected to D6 data line, the led blinks only when there is activity on the D6 line

There is no other software control over the onboard led, if teensy does a write/read on other data lines (not D6) the led is not going to blink

Following the schematics for the led is posible to add one more led for every data line. But this is not a good idea, has been discussed and reported that the onboard led is problematic and can cause reading/writing problems, so adding more leds is just going to cause even more problems, actually the best thing you can do with the onboard leds is to disable it

To disable the led is posible to desolder it, or desolder its resistor, but technically the best way is by cutting its trace because we dont want the led but we dont want the trace either (a trace that goes nowhere is a bad idea and can cause interferences)

The best place to make the cut is at bottom of teensy cutting around the D6 pad, the trace that goes out of D6 pad at bottom is specific for the led. WARNING: dont cut the trace at top of the teensy that connects D6 pad with the atmel chip !

Adding an extra LED for teensy[edit | edit source]

Starting at norway v0.8 has been added a new function to controll an external led connected to pad B7 of teensy

This external LED emits blinks much more informative than the onboard LED, is intended to give much better feedback to the user, it does a flash blink when teensy connects to the PC client (norway.py) at the same time it shows the version on the PC, also the blinking when reading/writing operations are performed is now accurate

This new led functions mapped to pad B7 allows to move the led to any place, handy for permanent installations of teensy because you can place the led on the outside of the PS3 case to see how it blinks, or you can repurpose one/some of the original leds of the PS3 case to be controlled by teensy, as explained here: HSW-001 Contour backlight controlled by teensy

Pinouts and schematics[edit | edit source]

Pinouts by flash type[edit | edit source]

See Hardware flashing page

Flash types and models used by PS3
Flash Type / Model PS3 Fat PS3 Slim PS3 SuperSlim notes
CECHA
CECHB
CECHC
CECHE
CECHE CECHG CECHH
CECHM
CECHQ
CECHJ
CECHK
CECHL
CECHP
CECH-20xx CECH-21xx CECH-25xx CECH-25xx CECH-30xx CECH-40xxB/C CECH-40xxB/C CECH-40xxA
'12GB' noHDD
COK
001
COK
002
COK
002W
SEM
001
DIA
001
DIA
002
VER
001
DYN
001
SUR
001
JTP
001
JSD
001
KTE
001
MSX
001
MPX
001
MPX
001
NAND 2x Samsung K9F1G08U0A-PIB0 Yes Yes Yes - No No No No No No No No No No No
2x Samsung K9F1G08U0B-PIB0 - - - Yes No No No No No No No No No No No
NOR 1x Spansion S29GL128N90TFIR2 No No No No Yes Yes Yes Yes - - - - - - No
1x Samsung K8Q2815UQB-PI4B No No No No - - Yes Yes Yes - - - - - No
1x Spansion S29GL128P90TFIR2 No No No No - - Yes Yes Yes Yes Yes Yes Yes Yes No
1x Macronix MX29GL128ELT2I-90G No No No No - - - Yes Yes Yes yes ? Yes No
1x Samsung K8P2716UZC-QI4D No No No No Yes - - - - Yes Yes Yes No
1x Macronix MX29GL128FLT2I-90G No No No No - - - - - - - - Yes Yes No
eMMC 1x Panasonic MN66840 +
1x Samsung KLMAG2GE4A-A001
No No No No No No No No No No No No No No Yes
connection type NAND layout 1 NOR layout 1 NOR layout 2 NOR layout 3 NOR layout 4 NOR layout 5 eMMC layout


NORway[edit | edit source]
Teensy++ 2.0 to PS3 flash interface for NORway.jpg
NANDway Dual NAND Edition[edit | edit source]
Teensy++ 2.0 to PS3 flash interface for NANDway dual NAND edition.jpg
NANDway Signal Booster Edition[edit | edit source]
Teensy++ 2.0 to PS3 flash interface for NANDway signal booster edition.jpg

Schematics by motherboard (retail)[edit | edit source]

The official purpose of this testpoints is to connect the motherboard to a JIG machine that uses adapters with Pogo pins

NAND layout 1[edit | edit source]

Labeled with motherboard testpoint names

NOR layout 1[edit | edit source]

Labeled with motherboard testpoint names

NOR layout 2[edit | edit source]

Labeled with teensy pad names

Labeled with motherboard testpoint names

NOR layout 3[edit | edit source]

Labeled with motherboard testpoint names

NOR layout 4[edit | edit source]

Labeled with teensy pad names

Labeled with motherboard testpoint names

Schematics by motherboard (non retail)[edit | edit source]

NOR DEB-001[edit | edit source]

Teensy Solder Install Notes by Motherboard Model[edit | edit source]

First open the PS3. Follow youtube videos to learn how (Just search).

Once opened, look at the motherboard model printed there. Depending on which model you have follow the case modifications below to install teensy.

There are two methods to use a Teensy 2.0++ Flasher.

1.) Install while the PS3 is somewhat opened still with everything plugged in. (Be careful of shorts.)

2.) Internal Case Modifications. This is the best way to go as you can install the teensy inside of the PS3 for later use. This is the advantage of using a Teensy 2.0++ because it's just small enough to install inside the PS3 with a little case modification. Other flashers are generally too large to do this with the PS3 closed up. You will find there is just no room for it.

COK-001, COK-002, COK-002W, SEM-001[edit | edit source]

I used the image for the Progskeet, along with an image of which Progskeet pin(GP1 etc.) corresponds to which NAND chip pin name (WP, ALE, CLE, I/O1 etc.) to create a diagram of which testpoint on the mainboard goes to which leg of the NAND chips made by Samsung.

Diagram for wiring Teensy++ 2.0 to a PS3 COK-002 mainboard.

So now you can use this diagram not only for downgrading/dumping/writing the NANDs with a Teensy++ 2.0 board, but with any other board available on the Internet.

Important: You must provide a stable 3.3V PSU to both the PS3 board and the Teensy, and don’t forget to unite the GNDs. You can use any PSU which outputs 3.3V @ 1.8A+, the easiest option will be to use a PC PSU.

DIA-001, DIA-002[edit | edit source]

Parts not needed? Submitter please list here.


Installation and Case Modification[edit | edit source]

This installation the case was not modified. It was flashed while opened, and removed.

Teensy++ tucked away below where the psu sits, usb cable hanging out.
Teensy++ soldered to NOR testpoints

VER-001[edit | edit source]

Usage :

1 - Connect first SB VCC 2v Max

2 - Connect in second step Vcc Teensy2++ 3.3v

Installation and case modification[edit | edit source]

In this installation, the cables were strategically soldered to fit better and not break or short when the power supply was placed, so no external power was needed.

The shielding was cut with a small dremel to have a more permanent install.
Teensy++ soldered to NOR testpoints
Each pin was carefully bent and were soldered with an idea of where they'd fit between the BD and PSU. Double sided tape was used to hold the teensy 2.0++ in place.
A small port was made for the usd, and a button was later placed next to it for teensy programing

DYN-001[edit | edit source]

Parts not needed - Torque T-10 Screwdriver. (T-8 IS still needed!)

Installation and Case Modifications[edit | edit source]

Be sure to make a screw map when disassembling the PS3, there are a lot of screws, and you will not remember where they go.

First and Second dremel area. These 4 pictures show before and after affects and where to dremel on the top side shielding.

DYN-001 Placement Area and first dremel
DYN-001 Wire direction and second dremel
DYN-001 Post dremel for Teensy placement
DYN-001 Teensy fits. Need to wait until MB is back in shielding before final placement.

Third dremel area. These pictures show before and after affects and where to dremel on the bottom side shielding.
This helps with interference by running wires outside the shielding instead of inside. This method has to be done
on these models as unlike JSD-001 Models there are no holes or spaces between the HDD and shielding. It's connected
on DYN-001 Models.

NOTE: When placing teensy, DO NOT PLACE directly on the shielding. Make sure you use a strip of double sided foam tape. to act between the shielding and teensy.

DYN-001 Wire direction and third dremel
DYN-001 Post dremel of bottom shield
DYN-001 Reconstruct shielding and Chip Mounts
DYN-001 Post Wire Job Topside.
DYN-001 Post Wire Job Underside.

Forth and last dremel area. This is done on the case itself. The port for the teensy is covered by the HDD cover area. You will have to take care in cutting open the area. If you did not spread your wires out evenly on the underside of the shielding, it will create a raised section and the port itself will be too high to reach and may have to dremel higher.

DYN-001 Open Port
DYN-001 USB Cable plugged into flasher
DYN-001 HDD + Teensy Cover :)

Notes on Reassembly: Before putting back the blu-ray drive, carefully bend each wire on the topside flat by hand ONE AT A TIME so you do not break the solder joints on the teensy. If you do not bend them flat by hand one at a time carefully, the drive could easily undo one of your soldering joints and you will have to start again. (I managed to do it on the first try. Did I say that you needed 1x of Patience?

Testing: You can test your work before putting the cover top back on. Just make sure blu-ray and power-supply are connected and everything else before trying. This is so you know that everything is fitting okay and that the install has worked for you. Take 3 dumps (Read above on how to take a dump of NOR) and compare them. Do md5sum and sha1sum, and then try and unpack them with norunpack from f0f tools. If they all match, and it unpackages, congratulations you have a good dump!

JSD-001[edit | edit source]

No dremel required. Design of this CECH 2500 series has an opened hole area to put wires through.


Installation and Case Modification[edit | edit source]

JSD-001 Teensy Placement. Mounted using double sided foam tape.

JSD-001 Port cut and drilled to view teensy usb port from outside.
JSD-001 Post wire job from motherboard view with wire wrap.

JSD-001 Teensy placement and wired up. Notice open space.

SUR-001/JTP-001/KTE-001[edit | edit source]

      • Need submissions...

Teensy Flash Clip adapters[edit | edit source]

Teensy clip adapter Board for NANDway v1[edit | edit source]

Layout for a PCB without external Voltage-source (this was the first version without capacitors, Voltageregulator and two bridges)

deprecated, use v2 instead

Gallery[edit | edit source]

Download[edit | edit source]

Teensy2Clip - Folie.pdf mirror

Teensy clip adapter Board for NANDway v2.1[edit | edit source]

Allows to connect a Teensy++ 2.0 to a 360-NAND Clip
Source article: http://playstationhax.it/forums/topic/1149-teensy-adapter-board-for-nandway/
Teensy adapter Board for NANDway360-clip for NAND flash

Hey. in the past, i create a simple adapter board to connect the Teensy to a "360-clip NAND Clip" (the classic kind of NAND Clips). It's easier and faster to solder a board than wire the cables, no more problems with cable breaks and a good connection. An english speaking user ask me for a solder tutorial, so I thought on this occasion, i can write directly to the community. :) Of course, you can find all what you need below to order your own boards.

I hope i could help someone
with kind regards
esprit1711 from psXtools Team :)

But now the tutorial with some words (the most things should be self-explanatory).

What you need[edit | edit source]

Teensy adapter Board for NANDway - what you need

  • 1x adapter board
  • 1x Teensy++ 2.0
  • 1x 5V to 3,3V Voltage Regulator for the Teensy (MCP1825, LM3940 or Pin-compatible)
  • 1x TSSOP 48 NAND-Clip (360-Clip) with equipment (Flat-cable, Pin-header (2x11) and the red adapter board (you get always all these things when you buy a new NAND Clip)
  • 2x Pin-header (1x20)
  • 1x Pin-header (2x4)
optional but recommendable[edit | edit source]
Optional (if you want power the NAND with external Power)[edit | edit source]
  • 1x 5V to 3,3V Voltage Regulator (LMS1587CS-3.3 or Pin-compatible)
  • 1x 5V Powersupply (minimum 3A)

See section above to cut the 5v trace on teensy and how to solder the 3.3v regulator at the bottom of teensy board

Solder the adapter board[edit | edit source]

Solder pinheaders on adapterboard[edit | edit source]

Solder the pin-header on the board (be careful, the plastic of the pin-header could melt fast)

Teensy adapter Board for NANDway - solder pinheaders on adapterboard

now, plug the red adapter board (which was at the NAND-clip) on the pin-header, solder the pins and cut them if they are too long.

Solder adapterboard on pinheader[edit | edit source]

Teensy adapter Board for NANDway - solder adapterboard on pinheader

Mount Teensy to board[edit | edit source]

You can choose, if you want solder the Teensy fixed on the board....

Teensy adapter Board for NANDway - solder teensy on pinheader

... or solder the Teensy on female connector to unplug him any time

Teensy adapter Board for NANDway - solder teensy on female pinheader

Powersource 1x3 pinheader[edit | edit source]

with the following 1x3 pin-header, you can choose the Powersource for the NAND (external, or USB) (sometimes it can cause problems, when you use the USB as Power Supply)

Teensy adapter Board for NANDway - 1x3 Pinheader Powersource

when you Power the NAND by USB, the final step is to connect the common header-pin with outermost pin

Teensy adapter Board for NANDway - 1x3 Pinheader Powersource by USB

Optional things:[edit | edit source]
Filtering[edit | edit source]

for a cleaner voltage, you should solder the capacitors

Teensy adapter Board for NANDway - Solder capacitors for cleaner voltage

Teensy adapter Board for NANDway - Soldered capacitors for cleaner voltage

External regulator[edit | edit source]

you can also solder a stronger voltage-regulator (than the one on the Teensy) to connect a stronger 5V power supply (than your USB Port).

Before you solder the regulator on the board, you should prepare the large pad of the Regulator and the Board with a layer of tin.

Teensy adapter Board for NANDway - Prepare regulator

Teensy adapter Board for NANDway - Soldered Regulator

DC connector[edit | edit source]

you can connect your 5V Power supply on the marked solder points. I used a DC-coupling for a better handling

Teensy adapter Board for NANDway - DC connector for external 5V supply

when you want use the external voltage, you must reposition the jumper (like you can see on the picture), but you can always change the powersource with the jumper

Where you can buy this boards?[edit | edit source]

You can find a zip-file to download below. in this file, you find the complete project folder. You can use the files to view and change the Layout or the circuit diagram, but if you only want a board, you can send this zip-file to a PCB service. I order my boards always at elecrow.com. The board has a size of 55mm x 45mm, so you must order the boards on this page.

Before you add your order to the cart, the options should (except the colour, this is your choice) look like on the following picture (a change of the order quantity only changed the weight and the transportation costs, so i order always 10 boards)

Teensy adapter Board for NANDway - Elecrow

= Download[edit | edit source]

Teensy Adapter Platine V2.zip / mirror

 EDIT 2015-06-10
 V2.1 available / 2.1 mirror.
 Fixed a layout mistake (twisted the 2x4 pin header at the Teensy socket (thank to Th3Knights for the report)
 and change the silkscreen. If you have a V2, you can use it without any problem. the V2 use only 2 of 5 lines 
 for RE, but this is not a critical problem.


You can open the project file with Target3001 (the simplest variant of this tool is free), but below, you find a pdf of the schematic, too

Teensy Adapter Platine V2.pdf mirror

TEENSY2PS3[edit | edit source]

http://www.psx-place.com/forum/downgrading/teensy2ps3-pcb-linker-teensy-2-0-ps3-1728.html

http://www.psx-place.com/ps3-news/1795/littlebalups-teensy2ps3-pcb-quotlinkerquot-teensy20-ltgt-ps3.html

http://www.mediafire.com/download/i9tma7gkft84442/TEENSY2PS3_v1.00.zip

Offboard flashing[edit | edit source]

Using flash ZIF sockets

TSOP48 ZIF socket (for NAND)[edit | edit source]

TSOP56 ZIF socket (for NOR)[edit | edit source]

  • REMARK >> WP(pin 16) to Vcc and BYTE(pin 53) to Vcc

Teensy Official Distributors[edit | edit source]

https://forum.pjrc.com/threads/23601-Official-Distributors