Join Us and become a Member for a Verified Badge to access private areas with the latest PS4 PKGs.
PS4 CFW and Hacks       Thread starter PSXHAX       Start date Oct 17, 2016 at 2:54 AM       8      
Status
Not open for further replies.
Wakey wakey time!!! :shudders: PlayStation 4 coder DHLeong has been developing PS4 Waker which kicks PS4 Wake by dsokoloski up a notch allowing users to now wake your PS4 console without a PS Vita over LAN (Local Area Network) via Sony's official PlayStation App.

Download: ps4-waker-master.zip / GIT / NPM (thanks @Jeff for the link)

To quote from the README.md:

ps4-waker

Wake your PS4 over LAN (and a few other tricks) with help from the PlayStation App.

Requirements
  • A PS4, of course
  • The PlayStation App, installed on your phone or tablet of choice
  • A computer
  • All of the above on the same LAN
Usage
Code:
npm install ps4-waker -g
Installing globally provides the ps4-waker executable:

ps4-waker - Wake your PS4 (and more!) with help from the PlayStation App

Usage:
Code:
  ps4-waker [options]                                   Wake PS4 device(s)
  ps4-waker [options] remote <key-name> (...<key-name>) Send remote key-press event(s)
  ps4-waker [options] search                            Search for devices
  ps4-waker [options] standby                           Request the device enter standby/rest mode
  ps4-waker [options] start <titleId>                   Start a specified title id
  ps4-waker --help | -h | -?                  Shows this help message.
  ps4-waker --version | -v                    Show package version.
Options:
Code:
  --bind | -b <ip>             Bind to a specific network adapter IP, if you have multiple
  --credentials | -c <file>    Specify credentials file
  --device | -d <ip>           Specify IP address of a specific PS4
  --failfast                   Don't request credentials if none
  --timeout | -t <time>        Stop searching after <time> milliseconds; the default timeout
                                unspecified is 10 seconds
  --pin <pin-code>             Manual pin-code registration
Device selection:

For any command, there are four possible conditions based on the flags you've specified:

1. Neither -t nor -d: Will act on the first device found; this is for households with a single device on the network
2. Just -t: Will act on every device found within <time> millseconds
3. Just -d: Will search for at most 10 seconds (the default timeout) for and only act the provided device, quitting if found
4. Both -t and -d: Will search for at most <time> seconds for and only act on the provided device, qutting early if found.

Key names:

Button names are case insensitive, and can be one of: up, down, left, right, enter, back, option, ps

You cannot send the actual x, square, etc. buttons. A string of key presses may be provided, separated by spaces, and they will be sent sequentially.

For most cases, simply run the executable with no arguments. On first run, you will be asked to connect to the "PS4-Waker" Playstation, and to turn on your PS4 and go to the "add devices" screen to get a pin code, and enter that. After that, future executions should just work.

How it works

In order to get the credentials, ps4-waker pretends to be another PS4 on your local network, responding to the right broadcasts with the appropriate messages, and simulating the connection handshake that the app makes with a real PS4.

With those in hand, ps4-waker connects to the real PS4 and communicates with the same TCP protocol the app uses to authenticate itself as a connected Device---it will show up as "PS4 Waker" in your device management.

Once registered as a connected Device, it can simply send the correct "wake" packet with the initially-fetched credentials.

Notes

This has been tested on a MacBook Pro running the OSX Yosemite. Using the new TCP connection, we don't need to do any wacky MAC spoofing, so any machine should work. Pull requests are welcome, however, if extra twiddling is needed for smooth operation on Windows or Linux.

The TCP connection API is exposed via require('ps4-waker').Socket, and the PS4 detection as require('ps4-waker').Detector. In the future, these may be broken out into a separate library, perhaps with more features from the app, such as "on screen keyboard" simulation. See the sources in the lib directory for more information on these modules.

Acknowledgements

Acknowledgements to Darryl Sokoloski for his work with the basic wake packet structures, etc. Unlike his implementation, however, it is not necessary to own a Vita or to look at any packets with ps4-waker.

Disclaimer

I take no responsibility for your usage of this code, whatsoever. By using this code, directly or indirectly, you agree that I shall not be held responsible in any way for anything that may happen to you or any of your devices, etc. as a result, directly or indirectly, of your use of this project, in any way whatsoever, etc. etc.

:arrow: Update: BBriatte has now made available a homebridge PS4 waker platform which is a PS4 Waker plugin for Homebridge that allows users to control their PS4 with HomeKit and Siri.

Download: homebridge-ps4-waker-platform-master.zip / GIT

Installation
  1. Install homebridge using: npm install -g homebridge
  2. Install this plugin using: npm install -g homebridge-ps4-waker-platform
  3. Update your configuration file. See the sample below.
Configuration

Example config.json with one PS4 accessories
Code:
{
"platform": "PS4WakerPlatform",
"name": "PS4Waker",
"accessories": [
{
"serial": "XXXXXXXXXXX",
"model": "CUH-7016B"
}
]
}
Example config.json to register 2 PS4
Code:
{
"platform": "PS4WakerPlatform",
"name": "PS4Waker",
"accessories": [
{
"serial": "XXXXXXXXXXX",
"model": "CUH-7016B",
"ip": "192.168.0.20",
"credentials": ".ps4-pro-wake.credentials.json"
},
{
"serial": "XXXXXXXXXXX",
"model": "CUH-2015A",
"ip": "192.168.0.22",
"credentials": ".ps4-wake.credentials.json"
}
],
"global": {
"timeout": 10000
}
}
Example config.json for one PS4 and 2 apps:
Code:
{
"platform": "PS4WakerPlatform",
"name": "PS4Waker",
"accessories": [
{
"serial": "XXXXXXXXXXX",
"model": "CUH-7016B",
"apps": [
{
"id": "CUSA07708",
"name": "Monster Hunter World"
},
{
"id": "CUSA07669_00",
"name": "Fortnite"
}
]
}
]
}
Platform element

Required fields
  • platform: Must always be PS4WakerPlatform
  • name: The name you want to use to control the PS4 platform.
Optional fields
  • accessories: Array of Accessory element
  • global: Default configuration for all accessories. see Global element
Accessory element

Required fields
  • serial: The serial number of your PS4
  • model: The model name of your PS4
Optional fields
  • name: The name you want to use to control the PS4.
  • ip: Specific IP of your PS4, use this option when multiple PS4 are reachable on your network.
  • passCode: The pass code to connect to your PS4 if necessary.
  • credentials: The file path to the credentials.json see Documentation
  • apps: Contains all apps action that you want to trigger using HomeKit on your device. Adds a switch for each app with the given name. see App element
  • timeout: Timeout to access to your PS4. Default: 5000ms
Global element

Optional fields
  • apps: Contains all apps action that you want to trigger using HomeKit on all PS4 device. Adds a switch for each app with the given name. see App element
  • timeout: Timeout to access all PS4 on your network. Default: 5000ms
App element

Required fields
  • id: The PS4 title id of your app
  • name: The app name used to be the Switch name on your Home.app
PS4 Waker by DHLeong to Wake Your PlayStation 4 Over LAN.jpg
 

Comments

Are you focking serious now... i have been posting about this for weeks and now @Jeff Gets the credit well thanks for not noticing the links ive been posting
 
Hmmm.. maybe you posted it on Disqus where I don't go often? I haven't seen it from you here in the Forum or Shoutbox, so I thanked him for the NPM link :)
 
I haven't seen it by you here but could have missed it (I'm only human ya know :p)

I don't go on Discord often... so anything posted on there won't get credit by me here as I probably didn't see it unfortunately. :(

If you posted it in the Shoutbox and I missed it I'll be happy to thank you in the article if right here isn't good enough.. THANKS @VultraAID!!!!! :D
 
I haven't seen it by you here but could have missed it (I'm only human ya know :p)

I don't go on Discord often... so anything posted on there won't get credit by me here as I probably didn't see it unfortunately. :(

If you posted it in the Shoutbox and I missed it I'll be happy to thank you in the article if right here isn't good enough.. THANKS @VultraAID!!!!! :D
@PSXHAX read Site SB
 
Are you focking serious now... i have been posting about this for weeks and now @Jeff Gets the credit well thanks for not noticing the links ive been posting
I dont get the problem ps4 Waker has been on github since 3 years now.
You can see that i posted it in januari
You are a moderator, feel free to change the credits.
 
Status
Not open for further replies.
Back
Top