Talk:DualShock 4: Difference between revisions
m (moved) |
(→Hardware: Imgur to Gallery) |
||
(12 intermediate revisions by 3 users not shown) | |||
Line 12: | Line 12: | ||
---- | ---- | ||
See also http://blog.binaryninjas.org/?p=149 | |||
= Review: = | = Review: = | ||
Line 19: | Line 20: | ||
== Hardware == | == Hardware == | ||
Teardown photo album: http://imgur.com/a/ytRW5 | Teardown photo album: | ||
<gallery> | |||
File:08XyXC8.jpeg | |||
File:0xxrydw.jpeg | |||
File:1QbQhNT.jpeg | |||
File:2tP1Fkr.jpeg | |||
File:3pYanfF.jpeg | |||
File:3roUnDR.jpeg | |||
File:518jy4N.jpeg | |||
File:5Im3Fgp.jpeg | |||
File:65Ad9It.jpeg | |||
File:7863lo3.jpeg | |||
File:7j2y3oo.jpeg | |||
File:7KmRxHA.jpeg | |||
File:7P44HZO.jpeg | |||
File:7WKfCC3.jpeg | |||
File:8F49ttw.jpeg | |||
File:8FERmHB.jpeg | |||
File:9959nAv.jpeg | |||
File:A5iH1fU.jpeg | |||
File:AgSNuAc.jpeg | |||
File:AI7Rdbl.jpeg | |||
File:aTfnx2h.jpeg | |||
File:BSpanfM.jpeg | |||
File:bZ5cSTr.jpeg | |||
File:cQb6Hr1.jpeg | |||
File:cUnyoKl.jpeg | |||
File:cUYA7j0.jpeg | |||
File:dBsL3Kn.jpeg | |||
File:DJ72B6E.jpeg | |||
File:dlwiEcB.jpeg | |||
File:DsLZ3Xf.jpeg | |||
File:EK9DQlr.jpeg | |||
File:eWCknuC.jpeg | |||
File:FEZpxph.jpeg | |||
File:fpM5snu.jpeg | |||
File:Fu0xNxB.jpeg | |||
File:gF2Desn.jpeg | |||
File:GhxB4iO.jpeg | |||
File:GJAQ2eD.jpeg | |||
File:gRrEwoj.jpeg | |||
File:GT2AykA.jpeg | |||
File:h9Z3yTj.jpeg | |||
File:hJfdN6Y.jpeg | |||
File:HrtfxmV.jpeg | |||
File:i06VyHB.jpeg | |||
File:I0jeij5.jpeg | |||
File:I0joI3o.jpeg | |||
File:jeonlvc.jpeg | |||
File:jlWd7SD.jpeg | |||
File:JqFkPNl.jpeg | |||
File:KLiMprB.jpeg | |||
File:KlNxTRs.jpeg | |||
File:knOHMwu.jpeg | |||
File:Lz2nlfj.jpeg | |||
File:M4JZU4G.jpeg | |||
File:MhiDvQp.jpeg | |||
File:MnrEU9I.jpeg | |||
File:mqWy7Ba.jpeg | |||
File:obKO0F6.jpeg | |||
File:OfRdANo.jpeg | |||
File:oxeoZgI.jpeg | |||
File:pgYz4Xv.jpeg | |||
File:pNWE6LA.jpeg | |||
File:PQ8LAWP.jpeg | |||
File:PSvKqTz.jpeg | |||
File:pwxHJ40.jpeg | |||
File:q7gco24.jpeg | |||
File:qI4xNec.jpeg | |||
File:qyq5smd.jpeg | |||
File:qZZmJKF.jpeg | |||
File:rpzexY0.jpeg | |||
File:rURuqlE.jpeg | |||
File:rvMaQwI.jpeg | |||
File:s4jqagj.jpeg | |||
File:SihQjR8.jpeg | |||
File:TetUWkG.jpeg | |||
File:TFIhArd.jpeg | |||
File:TXHghgH.jpeg | |||
File:TYO2asR.jpeg | |||
File:U3rNHQz.jpeg | |||
File:UBLV6U4.jpeg | |||
File:Vyxc25e.jpeg | |||
File:Vyxr0fy.jpeg | |||
File:w3JMMiF.jpeg | |||
File:WeuZtOU.jpeg | |||
File:WK3b3Dr.jpeg | |||
File:WuRl1Ft.jpeg | |||
File:XChVTGI.jpeg | |||
File:XEmYZxP.jpeg | |||
File:Y2CjPuI.jpeg | |||
File:yeSWiWW.jpeg | |||
File:YgBOdWe.jpeg | |||
File:YJzxLnN.jpeg | |||
File:Z1H6a1K.jpeg | |||
File:zJw7iXa.jpeg | |||
File:ztfuGtq.jpeg | |||
</gallery> | |||
Source: http://imgur.com/a/ytRW5 | |||
The USB port and LED are on one separate board, connected using a [http://en.wikipedia.org/wiki/Flexible_flat_cable flat flexible cable], this cable is connected to a vertical FFC connector that does not have a locking mechanism. | The USB port and LED are on one separate board, connected using a [http://en.wikipedia.org/wiki/Flexible_flat_cable flat flexible cable], this cable is connected to a vertical FFC connector that does not have a locking mechanism. | ||
'''Main microcontroller:''' is a Spansion MB9BF002, a ARM Cortex M3 core, Ball Grid Array (BGA) package. The reset and SWD signals might be exposed to test points, I am not sure. | |||
'''Power Management IC (PMIC):''' There's a ROHM chip marked with "BD9200" (in QFN 32 pin footprint), it has some thick traces around it, plus a big inductor. One of the pins near it read 6V, might be for the motor. | |||
'''Bluetooth module:''' shows "8LA18366" and "GS-WCM-01" and "VR2.0". There is also a [http://en.wikipedia.org/wiki/QR_code QR code] that I can't decipher yet. There are a lot of test points near it. Underneath the EMI shields, it is confirmed to be a [http://www.qca.qualcomm.com/wp-content/uploads/2013/11/AR3002.pdf Qualcomm Atheros AR3002-BL3D]. | |||
'''Six-axis sensor:''' There's a rectangular, maybe Land grid array (LGA) chip on the bottom side on the left, marked with "134" "A1322" "333": [http://www.bosch-sensortec.com/en/homepage/products_3/6_axis_sensors_2/inertial_measurement_unit_1/bmi055_1/bmi055 Bosch-sensortec GMBH BMI055] inertial sensor used for the three-axis gyroscope and three-axis accelerometer. It's got some sort of latch signal around it, or maybe it's a weird clock. It's slow and doesn't seem like a bus. Or it could be a shift register and it's reading blank because I'm not pressing buttons. | |||
'''Touchpad sensor:''' (with Atmel 8-bit AVR Microcontroller ATiny2313) is also detachable, connected using a flat flexible cable, this cable is connected to the main PCB using a connector that has a flip-up locking mechanism. | |||
'''Speaker:''' (EAS1S181F) is a built-in [http://en.wikipedia.org/wiki/Loudspeaker#Piezoelectric_speakers Piezoelectric speaker] connected to the main PCB using some raised contacts. | |||
There's a | '''Audio codecs:''' There's a {{G|QFN}} 32 pin chip marked with "WM1801G" (Wolfson Microelectronics) "36A0LM6" dead center on the bottom side of the PCB. It is near the audio stuff but it is also near where all the buttons connect. There are 5 test points near it. It appears to be communicating with {{G|SPI BUS}} with constant activity. There's also two resistors that look like {{G|I²C}} pull-up resistors, and there appears to be constant I2C traffic. | ||
There's a | There's a shiny small square chip left of the left analog stick, it is marked with "7710" "325A1", I have no idea what this is, but there's some differential signals coming out of it, it might be USB, the activity stops when I disconnect the USB cable. I think this is connected to the USB port. I suspect this is a OTG chip. | ||
Some buttons are active low, some are active high (maybe only the thumbstick push buttons). The sheet of flexible circuit for the buttons are active low. | Some buttons are active low, some are active high (maybe only the thumbstick push buttons). The sheet of flexible circuit for the buttons are active low. | ||
<gallery mode="nolines" widths="120px" heights="120px"> | |||
File:ARM_Cortex-M3-MB9BF002.jpg|Main Micro-controller | |||
File:PMIC_BD9200.jpg|Power Management | |||
File:Atheros_AR3002.jpg|Bluetooth Module and on the left, the numbering for the flexible film. | |||
File:6-axis_bosch-bmi055.jpg|6-axis | |||
File:TouchPad-002-DS4.jpg|TouchPad | |||
File:TouchPad_AT2313.jpg|TouchPad | |||
File:Speaker-DS4-002.jpg|LoudSpeaker | |||
File:WM1801G.jpg|Audio Codecs | |||
</gallery> | |||
=== Flexible Film Pin Mapping === | === Flexible Film Pin Mapping === | ||
Line 50: | Line 160: | ||
See main page (skewed button connector) for pins purpose. | See main page (skewed button connector) for pins purpose. | ||
=== Replacing Parts / Mod === | |||
* http://www.neogaf.com/forum/showthread.php?t=867944 Dualshock 4 with Xbox One analog sticks | |||
* http://www.eurogamer.net/articles/digitalfoundry-2016-how-to-upgrade-your-dual-shock-4-with-xbox-one-parts | |||
* https://www.reddit.com/r/PS4/comments/2rtimv/diy_double_dualshock_4_battery_capacity_internal/ | |||
== Why no CUH-ZCT2 section? == | |||
Seems strange that there's nothing at all about the CUH-ZCT2 controllers |
Latest revision as of 05:42, 5 May 2023
Talk[edit source]
infos merged from:
Frank's Eleccelerator[edit source]
Hi, this is Frank, Eleccelerator is my website. I noticed the little message you've sent me (please use email next time, I don't check my own wiki edits, but I can't find your email either lol so I'm a hypocrite right now). Feel free to copy whatever information you want, I want the information to be public. Including a link to my website would be nice though.
Source: http://eleccelerator.com/wiki/index.php?title=DualShock_4 (full paste 17:50 UTC, 18 January 2014 )
Johndrinkwater's git[edit source]
- I’ve been decoding the USB reports independently and appear to have got further along, when I’m happy that most of the packet is described, I’ll integrate my findings, still a few nibbles unaccounted for though… https://gist.github.com/johndrinkwater/7708901 -- Johndrinkwater (talk) 05:22, 3 December 2013 (EST)
See also http://blog.binaryninjas.org/?p=149
Review:[edit source]
It feels really good to hold.
Hardware[edit source]
Teardown photo album:
Source: http://imgur.com/a/ytRW5
The USB port and LED are on one separate board, connected using a flat flexible cable, this cable is connected to a vertical FFC connector that does not have a locking mechanism.
Main microcontroller: is a Spansion MB9BF002, a ARM Cortex M3 core, Ball Grid Array (BGA) package. The reset and SWD signals might be exposed to test points, I am not sure.
Power Management IC (PMIC): There's a ROHM chip marked with "BD9200" (in QFN 32 pin footprint), it has some thick traces around it, plus a big inductor. One of the pins near it read 6V, might be for the motor.
Bluetooth module: shows "8LA18366" and "GS-WCM-01" and "VR2.0". There is also a QR code that I can't decipher yet. There are a lot of test points near it. Underneath the EMI shields, it is confirmed to be a Qualcomm Atheros AR3002-BL3D.
Six-axis sensor: There's a rectangular, maybe Land grid array (LGA) chip on the bottom side on the left, marked with "134" "A1322" "333": Bosch-sensortec GMBH BMI055 inertial sensor used for the three-axis gyroscope and three-axis accelerometer. It's got some sort of latch signal around it, or maybe it's a weird clock. It's slow and doesn't seem like a bus. Or it could be a shift register and it's reading blank because I'm not pressing buttons.
Touchpad sensor: (with Atmel 8-bit AVR Microcontroller ATiny2313) is also detachable, connected using a flat flexible cable, this cable is connected to the main PCB using a connector that has a flip-up locking mechanism.
Speaker: (EAS1S181F) is a built-in Piezoelectric speaker connected to the main PCB using some raised contacts.
Audio codecs: There's a QFN 32 pin chip marked with "WM1801G" (Wolfson Microelectronics) "36A0LM6" dead center on the bottom side of the PCB. It is near the audio stuff but it is also near where all the buttons connect. There are 5 test points near it. It appears to be communicating with SPI BUS with constant activity. There's also two resistors that look like I²C pull-up resistors, and there appears to be constant I2C traffic.
There's a shiny small square chip left of the left analog stick, it is marked with "7710" "325A1", I have no idea what this is, but there's some differential signals coming out of it, it might be USB, the activity stops when I disconnect the USB cable. I think this is connected to the USB port. I suspect this is a OTG chip.
Some buttons are active low, some are active high (maybe only the thumbstick push buttons). The sheet of flexible circuit for the buttons are active low.
Flexible Film Pin Mapping[edit source]
The buttons are all on a single sheet of flexible film. The contacts for the flexible film are numbered from 1 to 18, and the numbers are written on the PCB.
The triggers have a resistor printed directly on the film, this appears to form a Voltage divider voltage divider, so that the trigger can have an analog value. The ground side of the voltage divider appears to be oscillating, the frequency and duty cycle are not fixed or predictable.
See main page (skewed button connector) for pins purpose.
Replacing Parts / Mod[edit source]
- http://www.neogaf.com/forum/showthread.php?t=867944 Dualshock 4 with Xbox One analog sticks
- http://www.eurogamer.net/articles/digitalfoundry-2016-how-to-upgrade-your-dual-shock-4-with-xbox-one-parts
- https://www.reddit.com/r/PS4/comments/2rtimv/diy_double_dualshock_4_battery_capacity_internal/
Why no CUH-ZCT2 section?[edit source]
Seems strange that there's nothing at all about the CUH-ZCT2 controllers