Editing Wireless

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:
[[File:SAB-K02-Antenna_and_module_Position.png|200px|thumb|right|wireless communication antennas and module [[J20H071]] ([[CUH-1115A]])]]
<div style="float:right">[[File:Marvell 88W8797.jpg|200px|thumb|left|Marvell 88W8797]]</div>


= Wireless communication module =
== Marvell Wireless Avastar 88W8797 ==
Combined Bluetooth/WiFi controller


The PS4 Wireless communication module supports [[Wi-Fi]] and [[Bluetooth]].
http://www.marvell.com/wireless/avastar/88W8797/
 
== Wireless communication module Label Diagram ==
 
See [https://fccid.io/AK8M18DFT1/Label/06-Label-and-Location-3783449 diagram on FCC ID.io].
 
== PS4 Prototype ==
 
To be documented.
 
== PS4 First Series ==
 
On PS4 First Series, the Wireless communication module is a Sony [[J20H071]].
 
== PS4 Slim and Pro ==
 
On PS4 Slim and Pro, the Wireless communication module has become [[J20H091]], [[J20H096]] or [[AW-CB319]] which are improved: they supports Wi-Fi ac and Bluetooth 5.0.
 
= Wireless communication module firmware =
 
* [https://github.com/x0rloser/ps4_wifi_bt PS4 Wireless communication module Reverse Engineering tools].
* [https://github.com/LairdCP/lrdmwl Torus interface driver source code]
* [https://github.com/LairdCP/lrdmwl/commit/9a495cd65fc751602805a0e8a6bd1bf019518de7 Marvell Avastar Firmware binaries (non-PS4)]
 
== Wireless communication module firmware corruption ==
 
The Wireless communication module firmware is stored within the [[Flash-Main]] of the PS4 in a file designated C0020001. It is updated during the firmware updates of the PS4. This firmware is known to get corrupt ?how?, rendering the Wi-Fi and Bluetooth broken. This means that the DualShock controller cannot function in the XMB. However, the controller can still be used in safe mode as this is the only software of the PS4 that does not utilize the Wireless communication module firmware at all, rather it only connects to the controller via USB. This problem is repairable, given you have a copy of the same firmware for your module.
 
How to know if the PS4 Wireless communication module firmware is corrupted? If your PS4 wireless controller (DualShock 4) does not synchronizes anywhere but in the safe mode (by USB).
 
Note: If your controller does not sync in safe mode, there is a Southbridge/USB port issue so you should fix Southbridge/USB before.
 
=== PS4-BT_WIFI-PATCHER by pearlxcore ===
 
* [https://github.com/pearlxcore/PS4-BT_WIFI-PATCHER]
 
=== PS4 WiFi/BT Patcher & Extractor by BwE ===
 
[[File:Screenshot2.png|300px|thumb|left|Wi-Fi/BT Results]]
 
[[User:BwE]] has developped a PC program to aid in the validation, repair and extraction of the Wireless communication module firmware. It will use MD5, entropy and pattern analysis to determine if and where the module is corrupted. From here it will determine a valid replacement based on the PS4's expected module version and size. Should there be no matching version available the program will offer you the ability to patch a new header and new module. This methodology is risky, but if this is your only option then it is worth a try.
 
BwE has included a small sample of valid patches for you to use, but you may have to source more yourself. Just place them in the /Patches/ directory with any file name. If your patch is not listed and you enjoy risk, the program allows patching a the firmware of your choice.
 
* [https://www.psxhax.com/threads/bwe-ps4-wifi-bt-patcher-extractor-v1-00-by-betterwayelectronics.5936/ Support/Information Forum about BwE PS4 WiFi/BT Patcher Extractor v1.00]
* [https://github.com/BetterWayElectronics/ps4-wifibt-patcher-extractor ps4-wifibt-patcher-extractor on github]
 
= Wireless communication antennas =
 
To be documented.
 
= Overlapping channels BT/Wi-Fi =
 
{| class="wikitable"
|-
! Center Frequency<br />(2.4xx Ghz) !! BT 2.0<br />Channel !! BT 4.0<br />Channel !! colspan="5" | Wi-Fi channel<br />(center freq. in GHz)
|-
| 00 || rowspan="2" | Guard || rowspan="2" | Guard
|-
| 01 || rowspan="23" style="background-color: #afafaf;" | 1<br />(2.412)
|-
| 02 || 0 || rowspan="2" style="background-color: #6666ff;" | 0
|-
| 03 || 1
|-
| 04 || 2 || rowspan="2" style="background-color: #6666ff;" | 1
|-
| 05 || 3
|-
| 06 || 4 || rowspan="2" style="background-color: #6666ff;" | 2 || rowspan="23" style="background-color: #afafaf;" | 2<br />(2.417)
|-
| 07 || 5
|-
| 08 || 6 || rowspan="2" style="background-color: #6666ff;" | 3
|-
| 09 || 7
|-
| 10 || 8 || rowspan="2" style="background-color: #6666ff;" | 4
|-
| 11 || 9 || rowspan="23" style="background-color: #afafaf;" | 3<br />(2.422)
|-
| 12 || 10 || rowspan="2" style="background-color: #6666ff;" | 5
|-
| 13 || 11
|-
| 14 || 12 || rowspan="2" style="background-color: #6666ff;" | 6
|-
| 15 || 13
|-
| 16 || 14 || rowspan="2" style="background-color: #6666ff;" | 7 || rowspan="23" style="background-color: #afafaf;" | 4<br />(2.427)
|-
| 17 || 15
|-
| 18 || 16 || rowspan="2" style="background-color: #6666ff;" | 8
|-
| 19 || 17
|-
| 20 || 18 || rowspan="2" style="background-color: #6666ff;" | 9
|-
| 21 || 19 || rowspan="23" style="background-color: #afafaf;" | 5<br />(2.432)
|-
| 22 || 20 || rowspan="2" style="background-color: #6666ff;" | 10
|-
| 23 || 21
|-
| 24 || 22 || rowspan="2" style="background-color: #6666ff;" | 11
|-
| 25 || 23
|-
| 26 || 24 || rowspan="2" style="background-color: #6666ff;" | 12 || rowspan="23" style="background-color: #afafaf;" | 6<br />(2.437)
|-
| 27 || 25
|-
| 28 || 26 || rowspan="2" style="background-color: #6666ff;" | 13
|-
| 29 || 27
|-
| 30 || 28 || rowspan="2" style="background-color: #6666ff;" | 14
|-
| 31 || 29 || rowspan="23" style="background-color: #afafaf;" | 7<br />(2.442)
|-
| 32 || 30 || rowspan="2" style="background-color: #6666ff;" | 15
|-
| 33 || 31
|-
| 34 || 32 || rowspan="2" style="background-color: #6666ff;" | 16
|-
| 35 || 33
|-
| 36 || 34 || rowspan="2" style="background-color: #6666ff;" | 17 || rowspan="23" style="background-color: #afafaf;" | 8<br />(2.447)
|-
| 37 || 35
|-
| 38 || 36 || rowspan="2" style="background-color: #6666ff;" | 18
|-
| 39 || 37
|-
| 40 || 38 || rowspan="2" style="background-color: #6666ff;" | 19
|-
| 41 || 39 || rowspan="23" style="background-color: #afafaf;" | 9<br />(2.452)
|-
| 42 || 40 || rowspan="2" style="background-color: #6666ff;" | 20
|-
| 43 || 41
|-
| 44 || 42 || rowspan="2" style="background-color: #6666ff;" | 21
|-
| 45 || 43
|-
| 46 || 44 || rowspan="2" style="background-color: #6666ff;" | 22 || rowspan="23" style="background-color: #afafaf;" | 10<br />(2.457)
|-
| 47 || 45
|-
| 48 || 46 || rowspan="2" style="background-color: #6666ff;" | 23
|-
| 49 || 47
|-
| 50 || 48 || rowspan="2" style="background-color: #6666ff;" | 24
|-
| 51 || 49 || rowspan="23" style="background-color: #afafaf;" | 11<br />(2.462)
|-
| 52 || 50 || rowspan="2" style="background-color: #6666ff;" | 25
|-
| 53 || 51
|-
| 54 || 52 || rowspan="2" style="background-color: #6666ff;" | 26
|-
| 55 || 53
|-
| 56 || 54 || rowspan="2" style="background-color: #6666ff;" | 27 || rowspan="23" style="background-color: #afafaf;" | 12<br />(2.467)
|-
| 57 || 55
|-
| 58 || 56 || rowspan="2" style="background-color: #6666ff;" | 28
|-
| 59 || 57
|-
| 60 || 58 || rowspan="2" style="background-color: #6666ff;" | 29
|-
| 61 || 59 || rowspan="23" style="background-color: #afafaf;" | 13<br />(2.472)
|-
| 62 || 60 || rowspan="2" style="background-color: #6666ff;" | 30
|-
| 63 || 61
|-
| 64 || 62 || rowspan="2" style="background-color: #6666ff;" | 31
|-
| 65 || 63
|-
| 66 || 64 || rowspan="2" style="background-color: #6666ff;" | 32
|-
| 67 || 65
|-
| 68 || 66 || rowspan="2" style="background-color: #6666ff;" | 33
|-
| 69 || 67
|-
| 70 || 68 || rowspan="2" style="background-color: #6666ff;" | 34
|-
| 71 || 69
|-
| 72 || 70 || rowspan="2" style="background-color: #6666ff;" | 35
|-
| 73 || 71
|-
| 74 || 72 || rowspan="2" style="background-color: #6666ff;" | 36
|-
| 75 || 73
|-
| 76 || 74 || rowspan="2" style="background-color: #6666ff;" | 37
|-
| 77 || 75
|-
| 78 || 76 || rowspan="2" style="background-color: #6666ff;" | 38
|-
| 79 || 77
|-
| 80 || 78 || rowspan="2" style="background-color: #6666ff;" | 39
|-
| 81 || rowspan="3" | Guard
|-
| 82 || rowspan="2" | Guard
|-
| 83
|}




{{Motherboard Components}}
{{Motherboard Components}}
<noinclude>[[Category:Main]]</noinclude>
<noinclude>[[Category:Main]]</noinclude>
Please note that all contributions to PS4 Developer wiki are considered to be released under the GNU Free Documentation License 1.2 (see PS4 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)