Editing Teensy++ 2.0

Jump to navigation Jump to search
Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then publish the changes below to finish undoing the edit.

Latest revision Your text
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]]<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>
= Teensy 2.0 ++ Information =
* [http://git.dashhacks.com/norway NORway] (not working link, need working mirror)


== Description ==
== Hardware Picture ==
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
== Hardware Installations (Case Modifications by CECH Model) ==
 
*'''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
 
<!-- gap between motherboard, and motherboard metal shields varies, with 4 milimeter in some areas and 3.5 milimeter in others -->
 
== Teensy Related Software ==
 
=== 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]
* Linux UDEV rules: [https://www.pjrc.com/teensy/49-teensy.rules 49-teensy.rules]
* FreeBSD device conf: [https://www.pjrc.com/teensy/freebsd-teensy.conf freebsd-teensy.conf]
 
=== Teensy loader ===
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]
*Ubuntu linux x32: [https://www.pjrc.com/teensy/teensy.gz teensy.gz]
*Ubuntu linux x64: [https://www.pjrc.com/teensy/teensy.64bit.gz teensy.64bit.gz]
*Mac OS-X: [https://www.pjrc.com/teensy/teensy.dmg teensy.dmg]
*Raspberry Pi (experimental): [https://www.pjrc.com/teensy/teensy_raspberrypi.tar.gz teensy_raspberrypi.tar.gz]
*Command line source code on github: https://github.com/PaulStoffregen/teensy_loader_cli
 
==== Loading programs to teensy microcontroller ====
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)
 
And download the whole git project from: [https://github.com/hjudges/NORway/archive/master.zip 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 ===
*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]
 
==== NORway.py ====
Usage:
{{Keyboard|content=<syntaxhighlight lang="bash">
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
</syntaxhighlight>}}
 
*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
 
==== 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 <[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
</syntaxhighlight>}}
 
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 ===
==== WAY-launchers ====
Simple GUI to run NORway, NANDway and SPIway.
 
Project home:
* https://github.com/littlebalup/WAY-launchers
 
Forum threads:
*http://www.psx-place.com/ps3-news/1793/waylaunchers-now-with-linux-amp-mac-support-by-littlebalup.html
*http://www.psx-place.com/ps3-news/329/waylaunchers-v202-a-gui-to-run-norway-nandway-amp-spiway-scripts.html
*http://www.psx-place.com/forum/downgrading/launchers-325.html
 
==== norpatch.exe ====
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 ====
See also: [[Validating flash dumps]]
 
== Pre-Installation Requirements ==
 
=== 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:
**1x Regular Philips head screwdriver
**1x [https://en.wikipedia.org/wiki/Torx 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{{degree}}C (known as polyimide or [https://en.wikipedia.org/wiki/Kapton kapton] tape)
 
* Soldering work tools:
**1x Soldering iron (15-30 Watt, or around 230{{degree}}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 [https://en.wikipedia.org/wiki/Wire_wrap wrapping wire], also known as [https://en.wikipedia.org/wiki/Kynar#Applications 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 [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 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 [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 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 ===
==== 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 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
 
{| class="wikitable"
|-
| [[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 onboard voltage regulator =====
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.
 
<table style="width:100%;">[[File:Teensy adapter Board for NANDway - solder regulator on teensy.jpg|350px|thumb|left|Solder regulator on Teensy]]</table>
 
===== 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>
 
==== Tristate options ====
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.
 
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 (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.
 
===== 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?
 
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 ====
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]]
 
=== Pinouts and schematics ===
==== Pinouts by flash type ====
See [[Hardware flashing]] page
 
{{Flash types and models used by PS3}}
 
===== NORway =====
<table style="width:100%;">[[File:Teensy++ 2.0 to PS3 flash interface for NORway.jpg|850px|left]]</table>
<!--  OLD
{| class="wikitable"
|-
| [[File:Teensy2.0++.jpg|500px|thumb|left|Teensy NOR pinout]] || [[File:TOSP1-56pin.png|500px|thumb|left|NOR Flash 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"
|-
| [[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"
|-
| [[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]
 
===== 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 370: Line 14:


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 ===
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.
<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.
'''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 ===
Parts not needed?  Submitter please list here.<br>
==== Installation and Case Modification ====
This installation the case was not modified.  It was flashed while opened, and removed.
<table style="width:100%;">
  <tr>
      <td>[[File:IMG 0194.JPG|250px|thumb|left|Teensy++ tucked away below where the psu sits, usb cable hanging out.]]</td>
      <td>[[File:IMG 0193.JPG|250px|thumb|left|Teensy++ soldered to NOR testpoints]]</td>
  </tr>
</table>
=== VER-001 ===
Usage :
1 - Connect first SB VCC 2v Max
2 - Connect in second step Vcc Teensy2++ 3.3v
<gallery>
File:VER-001_TEENSY_External_Power.jpg|Schematic for VER-001 - Teensy 2++  with '''External Power Only'''
</gallery>
==== 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.
<table style="width:100%;">
  <tr>
      <td>[[File:Soldered_to_teensy.JPG|250px|thumb|left|The shielding was cut with a small dremel to have a more permanent install.]]</td>
      <td>[[File:Soldered_to_teensy_1.JPG|250px|thumb|left|Teensy++ soldered to NOR testpoints]]</td>
      <td>[[File:Wire_placement.JPG|250px|thumb|left|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.]]</td>
      <td>[[File:Wire_mess.JPG|250px|thumb|left|A small port was made for the usd, and a button was later placed next to it for teensy programing]]</td>
  </tr>
</table>


=== DYN-001 ===
=== DYN-001 ===
This model requires the following:


Parts not needed - Torque T-10 Screwdriver.  (T-8 IS still needed!)<br>
1x Dremel Tool<br>
<br>
1x Drill<br>
 
1x Roll of Double Sided Foam Tape<br>
==== Installation and Case Modifications ====
1x 30AWG Kynar Wire or 26 AWG Kynar Wire.  (Few have reported 30AWG may be too small and has interference but does work if done well.)<br>
1x Torque 8 Screwdriver<br>
1x Regular Phillips Head Screwdriver<br>
1x Solder (Can be leaded or no-lead)<br>
1x Soldering Iron  (Radioshack 15-30 Watt Will Work.)<br>
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.)<br>
1x Good Lighting  (Either very well lighted room, or a Lamp.  You need to be able to check your work.)<br>
1x Magnifying Glass  (To check your soldering joints.)<br>
1x Patience.


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.
[[File:IMAG0109.jpg|250px|thumb|left|DYN-001 Placement Area and first dremel]]


First and Second dremel area.  These 4 pictures show before and after affects and where to dremel on the top side shielding.
[[File:IMAG0106.jpg|250px|thumb|right|DYN-001 Wire direction and second dremel]]
<table style="width:100%;">
  <tr>
      <td>[[File:IMAG0109.jpg|250px|thumb|left|DYN-001 Placement Area and first dremel]]</td>
      <td>[[File:IMAG0106.jpg|250px|thumb|left|DYN-001 Wire direction and second dremel]]</td>
      <td>[[File:IMAG0110.jpg|250px|thumb|left|DYN-001 Post dremel for Teensy placement]]</td>
      <td>[[File:IMAG0111.jpg|250px|thumb|left|DYN-001 Teensy fits.  Need to wait until MB is back in shielding before final placement.]]</td>
     
  </tr>
</table>
 
Third dremel area.  These pictures show before and after affects  and where to dremel on the bottom side shielding.<br>
This helps with interference by running wires outside the shielding instead of inside.  This method has to be done <br>
on these models as unlike JSD-001 Models there are no holes or spaces between the HDD and shielding.  It's connected<br>
on DYN-001 Models.<br><br>
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.
<table style = "width:100%;">
  <tr>
      <td>[[File:IMAG0113.jpg|250px|thumb|left|DYN-001 Wire direction and third dremel]]</td>
      <td>[[File:IMAG0117.jpg|250px|thumb|left|DYN-001 Post dremel of bottom shield]]</td>
      <td>[[File:IMAG0119.jpg|250px|thumb|left|DYN-001 Reconstruct shielding and Chip Mounts]]</td>
      <td>[[File:IMAG0123.jpg|250px|thumb|left|DYN-001 Post Wire Job Topside.]]</td>
      <td>[[File:IMAG0125.jpg|250px|thumb|left|DYN-001 Post Wire Job Underside.]]</td>
  </tr>
</table>
 
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. 
<table style = "width:100%;">
  <tr>
      <td>[[File:IMAG0136.jpg|400px|thumb|left|DYN-001 Open Port]]</td>
      <td>[[File:IMAG0132.jpg|400px|thumb|left|DYN-001 USB Cable plugged into flasher]]</td>
      <td>[[File:IMAG0143.jpg|400px|thumb|left|DYN-001 HDD + Teensy Cover :)]]</td>
  </tr>
</table>
 
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 ===
=== JSD-001 ===
No dremel required. Design of this CECH 2500 series has an opened hole area to put wires through.<br>
..
 
 
==== Installation and Case Modification ====
<table style="width:100%;">
  <tr>
      <td>[[File:install-1.jpg|250px|thumb|left|JSD-001 Teensy Placement.  Mounted using double sided foam tape.]]<br />
          [[File:install-2.jpg|250px|thumb|left|JSD-001 Port cut and drilled to view teensy usb port from outside.]]</td>
      <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>
  </tr>
</table>
 
=== SUR-001/JTP-001/KTE-001 ===
 
*** Need submissions...
 
== Teensy Flash Clip adapters ==
 
=== 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)
 
deprecated, use v2 instead
 
==== 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 - bottom.jpg|Teensy adapter Board for NANDway v1 - bottom
</gallery>
 
==== 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]
 
=== Teensy clip adapter Board for NANDway v2.1 ===
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/<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. :)
Of course, you can find all what you need below to order your own boards.
 
I hope i could help someone<br />
with kind regards<br />
[http://psxtools.de/index.php/User/16942-esprit1711/ esprit1711] from [http://psxtools.de/ psXtools] Team :)
But now the tutorial with some words (the most things should be self-explanatory).
==== What you need ====
[[File:Teensy adapter Board for NANDway - what you need.jpg|300px|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 ([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://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)]
* 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 =====
* 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 Pin-header (1x3)
* 1x Jumper
* 1x Capacitor 100nF SMD-0603
* 1x Capacitor 10µF SMD-0805
===== 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 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 ====
===== Solder pinheaders on adapterboard =====
Solder the pin-header on the board (be careful, the plastic of the pin-header could melt fast)<br />
 
[[File:Teensy adapter Board for NANDway - solder pinheaders on adapterboard.jpg|300px|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.<br />
 
===== 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 =====
You can choose, if you want solder the Teensy fixed on the board....<br />
 
[[File:Teensy adapter Board for NANDway - solder teensy on pinheader.jpg|300px|Teensy adapter Board for NANDway - solder teensy on pinheader]]
... or solder the Teensy on female connector to unplug him any time<br />
 
[[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 =====
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 />
 
[[File:Teensy adapter Board for NANDway - 1x3 Pinheader Powersource.jpg|300px|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<br />
 
[[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: =====
====== Filtering ======
for a cleaner voltage, you should solder the capacitors<br />
 
[[File:Teensy adapter Board for NANDway - Solder capacitors for cleaner voltage.jpg|300px|Teensy adapter Board for NANDway - Solder 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 ======
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.<br />
 
[[File:Teensy adapter Board for NANDway - Prepare regulator.jpg|300px|Teensy adapter Board for NANDway - Prepare regulator]]
 
[[File:Teensy adapter Board for NANDway - Soldered Regulator.jpg|300px|Teensy adapter Board for NANDway - Soldered Regulator]]
 
====== DC connector ======
you can connect your 5V Power supply on the marked solder points. I used a DC-coupling for a better handling<br />
 
[[File:Teensy adapter Board for NANDway - DC connector for external 5V supply.jpg|300px|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? ====
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].
 
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)
 
[[File:Teensy adapter Board for NANDway - Elecrow.jpg|300px|Teensy adapter Board for NANDway - Elecrow]]
 
===== 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]
 
  EDIT 2015-06-10
  [http://playstationhax.it/forums/index.php?app=core&module=attach&section=attach&attach_id=94 V2.1 available] / [https://mega.co.nz/#!yt8hDCIK!Sy83q3ZURaR-QeF5srpiCYpVkdXkqB2kn-FTOx-3UQg 2.1 mirror].
  Fixed a layout mistake ([http://oi57.tinypic.com/24lu07r.jpg 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 [http://server.ibfriedrich.com/wiki/ibfwikien/index.php/Download Target3001] (the simplest variant of this tool is free), but below, you find a pdf of the schematic, too
 
[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 ===
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 ==
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>
Please note that all contributions to PS3 Developer wiki are considered to be released under the GNU Free Documentation License 1.2 (see PS3 Developer wiki:Copyrights for details). If you do not want your writing to be edited mercilessly and redistributed at will, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource. Do not submit copyrighted work without permission!

To protect the wiki against automated edit spam, we kindly ask you to solve the following hCaptcha:

Cancel Editing help (opens in new window)