Code Monkey home page Code Monkey logo

streetpea / chiaki4deck Goto Github PK

View Code? Open in Web Editor NEW
810.0 14.0 49.0 30.6 MB

Fork of Chiaki (Open Source Playstation Remote Play) with Enhancements for Steam Deck and Documentation around how to use

Home Page: https://streetpea.github.io/chiaki4deck/

License: GNU Affero General Public License v3.0

CMake 3.62% C 53.54% C++ 22.87% Kotlin 10.48% Shell 2.70% Go 0.24% Python 0.27% HTML 0.03% QML 6.17% Objective-C 0.08%
game-streaming gaming playstation steam steam-deck

chiaki4deck's People

Contributors

asciiwolf avatar axelsimon avatar dschndr avatar fearlessspiff avatar fenio avatar flplv avatar fmaerkl-sw avatar fredrum avatar h0neybadger avatar jamiebartlett-kps avatar jbaiter avatar jonibim avatar lovenemesis avatar lsiudut avatar meltingrobot avatar nikorag avatar nowrep avatar outcoldman avatar r52 avatar ritiek avatar rushsteve1 avatar scrxtchy avatar streetpea avatar strubbl avatar svnscha avatar thestr4ng3r avatar thestr4ng3r-ci avatar tillmueller avatar tomblind avatar tuximail avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

chiaki4deck's Issues

Microphone support

Various people have requested being able to use a microphone to use PlayStation voice chat via Chiaki. Right now the best solution for Steam Deck is probably using the Discord app via the flatpak. However, some users don’t like that / have friends playing on PlayStation that would like to use PlayStation chat. I’m opening this as an issue to look at once some of the other features are finished or if someone else wants to take a stab at this.

Freezing after 20 minutes or so of play consistently

Will lock up completely after 20 minutes or so. Only option available is to press L5 and end the session and put PS5 into rest mode. Happens everytime playing. Have messed with settings on both deck and router, but no change.

Controller profiles not appearing

When I go in the community controller profiles and try searching for the ones you mention in the documentation, I can’t seem to find it. Do you have an idea why it wouldn’t appear ?
I have a feeling I see the profiles for chiaki but not chiaki4deck.
Thanks !

Gyro from external controllers

With the excellent addition of deck gyro, a useful next step would be a way to use the gyro from a connected DS4, DualSense, or Switch controller.

Upgrade haptics from experimental

Picking from initial issue to add haptics #14 that was completed in release-1.3.0

Improve experimental haptics with feedback / updates

Some Possible Updates:

  • Test various games with haptics to find areas where translation could be improved
  • Make updates to translation between DualSense haptics and Steam Deck haptics signals
  • Look at adaptive trigger haptics [not sure if it makes sense to add these or not since it looks like most of the adaptive triggers have a haptic effect as well as an adaptive trigger haptic effect]

Chiaki-launcher.sh not working when external network is set up

I can open the regular flatpak version of Chiaki fine by itself and even connect to my PS4 Pro outside my home network using the external IP (testing with my phone as a hotspot for the Steam Deck).
I added it manually using the external IP, my ID and the PIN and it opens just fine when connected to my hotspot.

However, when I try to set up that exact same external IP using the script configurator through Konsole, the resulting Chiaki-launcher.sh refuses to launch from outside my network, only working when I'm connected to my home network.
It doesn't work when running it directly from the folder, nor through Steam.
Steam also thinks Chiaki4Deck is running and it won't close it, forcing me to restart Steam.
I get no error.
When it does manage to close it after some time, I get no new logs in the logs folder so I can't provide any.

I'm not sure what the problem could be as it's the exact same IP.
Seems like a bug but it might also be user error.

I just updated Chiaki4Deck to the newest version (1.3.1) using Discover and the issue still persists.

Any help would be appreciated.
Let me know if I need to submit any files.
Might be related to: #25

EDIT:

Managed to get a log by running it through Konsole:

"${HOME}/.var/app/re.chiaki.Chiaki4deck/config/Chiaki/Chiaki-launcher.sh" Error: Couldn't connect to your PlayStation console from your external address! Error: Please check that you have forwarded the necessary ports on your router Error: ...and that you have the right external PlayStation IP address or hostname!  
 
This doesn't make sense as I used the exact same external IP and it works through the non-automated app.

Attached are two logs proving I can connect both locally and externally using the app but not the script.

chiaki_local_session_2023-01-20_05-06-11-971971.log
chiaki_external_session_2023-01-20_05-03-01-976976.log

Ghost of Tsushima Rumble Hints Only Work When Experimental PS5 Features Are Enabled

I'm not sure if this is a Chiaki or a Steam Deck issue but I noticed that the little rumble hints you get in Ghost of Tsushima when near an artifact and wearing the Traveller's Set only work on the Steam Deck if Chiaki has the haptics turned on.
However, this makes it so everything else creates haptics, making it hard to concentrate on the rumble hints or distinguish them from everything else.

Is it possible to separate them by any chance so that the haptics don't need to be on for them to work? Or is it an issue with the way the Steam Deck handles rumble in general?
I should also add that using Chiaki on my PC with a DualSense connected to it made the hints very easy to feel without any other haptics getting in the way, but that might just be due to the DualSense.

Thanks.

Key binding for quitting the remote play session and chiaki it self?

Is it possible to add key bindings for closing the remote session and another one for quitting chiaki. i find it quiet annoying to always have to pull up the steam menu to quit chiaki. Most emulators for example use Start + Select to quit the emulator.

Oh yeah and another awesome feature would be to use the xinput from the steam deck to make bindings and not to have to map specific keys to my steamdeck buttons.

[Feature Request] Native Steam Link Support

I know this is probably (definitely) out of scope, but the original Chiaki project is in maintainance. This seems to be the only project actively working on it, and this build is ultimately about the steam ecosystem.

Is there any possibility of this being compiled as a native Steam Link app?

There aren't many native link apps, the most notable being Kodi and Moonlight. However, the current method to use Chiaki on a steam link is to stream it running on another pc, essentially double streaming the video.
Having a native app would allow the link to be used as an easy stream box like the deck, and honestly would be super useful!

Disable haptics with multiple controllers

In the use case where the steam deck is configured for experimental settings, and is connected to a television with an external controller paired, the deck will buzz away on the TV stand while playing.

A nice feature would be the ability to toggle haptics off when multiple controllers are detected.

Pinging the console throws an error, but connecting works

Hey, hi, thanks for your mods to the remote play app :D

Had to remove this section from the script to get it to work, not sure why i can't ping my console from the steam deck (other network devices work fine)

ping -c 3 -w 30 xxx.xxx.xxx.xx &>/dev/null
sleep 1

also, I suggest maybe adding a longer sleep command after the wake-up (I use 4 :) )

Investigate updating Chiaki RGB color mapping

Investigate updating avopengl widget window to render more accurate colors. This was suggested by a user with an example implementation in Chiaki here. I need to check that and see if it makes sense to use the updated implementation (or a slightly modified version of it) instead of the current implementation.

Borealis GUI?

Chiaki on Switch uses a more handheld-friendly gui implemented with borealis. The library supports both Switch and PC platforms.
The implementation in the switch subdirectory is not specifically tied to the Switch either, some code is cleary tailored to the Switch's specifics, but most of it is cleanly separated with a __SWITCH__ prepocessor flag, so making it work on the Deck shouldn't be too hard, I think.

A big advantage of this UI over the current Qt GUI on the Deck would be that changing settings from game mode would be a lot less cumbersome, and we could even implement something like switching bitrate/resolution/fps on the fly via an onscreen-menu (which would restart the session in the background), in cases where the connection is bad and users want to override the default.

Here's a video of the Boreali GUI in action on the switch:
https://www.youtube.com/watch?v=n57Y4GgwrSY

Add a way to pass console pin via cli

Users that have a PlayStation Console login passcode (4 digit pin) set as required for each login (set in Settings->Users and Accounts->Login Settings on PS5 console) have to enter it each time they physically login and each time they login with remote play. Currently, this means that users with a login passcode set have to input the pin in game mode (which is cumbersome, especially without a keyboard) or disable their login passcode to connect automatically using chiaki4deck. Adding a way to pass the passcode via the cli would enable users to set it in the automation script and bypass this for their Steam Deck while keeping the passcode on their console (important for users that share consoles with other users and don't want them having access to their PlayStation login locally). This only affects a small subset of users but would be nice for those users.

[Feature Request] Support multiple PSN ID

I share a PS5 with another person and would like to be able to connect to each account via Chiaki4deck individually. Manually adding a second entry in the QT GUI with the second PSN ID info creates a new entry to use, however both of these entries log into the first configured account. It doesn't seem to be possible to connect via another account.

Question not an issue

Sorry for asking this here, just don't know a better place to ask. I use windows on my deck not steam os. I'm currently using chiaki and was interested in trying out chiaki4deck. I was wondering if it will work on windows for the deck? If so do I just need to download the 1.3 version zip? Also do I need to Uninstall my current chiaki? Thanks

Script Ctrl failed to connect - Update automation documentation

Using the automation script i consistently get failed to Ctrl messaging, and it failed to work properly.
Using the application itself without the script works like a dream.
The script succeeds in waking the PS4 up, however it appeared to error on line 62, starting chiaki and connecting.
I have included screenshots of the chiaki error message & the log file/konsole output for context.
I have fixed this issue by enabling UPnP & opening some remote ports. (Pull request for documentation submitted)

Update: Issue not fully resolved. Still encountering this problem with the automation method. In addition the automation script does not run when launched outside of directly calling it.

image
image

Addition of haptics for Steam Deck streaming from PS5

Currently when streaming from PS5, there is no rumble feedback on the Steam Deck; if this is something that could be added, it would be a big boost to the gameplay feel for a lot of titles.

(As mentioned in #6 where I initially brought it up, there is also no haptic feedback on the DualSense controller when streaming from PS5, which is also true in the original chiaki on all platforms. Since this is a Steam Deck focused branch I didn't think about it, but hey, if it can be done? Rad. I'm sure folks playing on the Deck with a paired DualSense would appreciate it.)

Native Gyro seems a bit eratic

First thanks a lot for native Gyro support ! It opens up various games that were impossible to play.

I tried it with Dreams and it seems that it sometimes thinks I'm holding the device upside down (my cursor will go upside down) I also noticed that when I'm still the cursor seems to drift a little bit.
Not sure what info I can provide to help you more but let me know !

Thanks !

Recommend static ip for PlayStation

Recommend using a static ip for PlayStation to prevent connection issues with the script if PlayStation ip changes since local dns isn’t present in most home routers and using broadcast would cause problems for remote connections which work under the current solution.

Upload to Flathub?

Flathub is available on most existing flatpak setup. It would make it easier to install chiaki4deck directly from Software/Discover without need to open up a browser.

PS5 accepts connection but steamdeck does not do anything.

Hello, I have tried to get advice on this on reddit and other locations but i can't seem to gain any insight.

I installed Chiaki using the chiaki4deck guide. When i run chiaki4deck on desktop mode, the PS5 displays a message that it has begun a streaming session, but the SteamDeck doesn't really do anything. It opens the window that i assume is meant for the streaming display but it is always black. Even if i leave it for a while it stays like that. The app becomes unresponsive if i try and close the window or the chiaki4deck application in general. I have to do a hard reboot to gain control of the system again.

Similar is true for the game mode launch. When launching the chiaki4deck app (after configuring it as the guide recommends), the launch never moves beyond the screen for steamdeck where the steam logo is pinwheeling. Again, in order to regain any control over the unit i have to perform a hard reset.

blackscreen

[danyi@SteamOS ~]$ flatpak run re.chiaki.Chiaki4deck
QIBusPlatformInputContext: invalid portal bus.
[I] Discovery failed to bind port 9304, trying one higher
[I] Discovery Service detected new host with id BC3329D2BB95
[I] Logging to file /home/danyi/.var/app/re.chiaki.Chiaki4deck/data/Chiaki/Chiaki/log/chiaki_session_2023-01-07_23-14-14-255255.log
[I] Chiaki Version 2.1.1
[I] Controller 1 opened: "Microsoft X-Box 360 pad 0 (030079f6de280000ff11000001000000)"
[I] Controller 0 opened: "Xbox 360 Controller (030003f05e0400008e02000010010000)"
[I] Starting session request for PS5
[I] Trying to request session from 192.168.5.71:9295
[I] Connected to 192.168.5.71:9295
[I] Sending session request
[I] OpenGL initialized with version "3.0 Mesa 22.2.4 (git-80df10f902)"
[I] Session request successful
[E] Failed to Compile Shader:
0:2(10): error: GLSL 1.50 is not supported. Supported versions are: 1.10, 1.20, 1.30, and 1.00 ES

[E] Failed to Compile Shader:
0:2(10): error: GLSL 1.50 is not supported. Supported versions are: 1.10, 1.20, 1.30, and 1.00 ES

[I] Starting ctrl
[I] Ctrl connected to 192.168.5.71:9295
[I] Sending ctrl request
[I] Ctrl received http header as response
[I] Ctrl received ctrl request http response
[I] Ctrl got Server Type: 2
[I] Ctrl connected

Possible solution for Chiaki4Deck freezing every few minutes

So, I had both chiaki and chiaki4deck freezing on my SteamDeck every few minutes and tried several different suggestions with different video bitrates and audio buffer sizes that I found on reddit but nothing seemed to work.

As an arch linux user, I knew chiaki was working flawlessly on my workstation, so I decided to build Chiaki4Deck from scratch in a Steam OS qemu VM and was surprised to noticed the freezing had stopped. Another advantage is that the console registration information is saved on the home directory and is not lost after reinstallation cycles.

I am not sure why using a locally built executable was more stable than running it from the flatpak, but it was just SO much better. I created a small gist with instructions on how to build it from source directly from the SteamDeck or a Steam os VM. I thought maybe I should share here as it may be helpful for someone else. I apologise in advance if that is not the case.

Cheers!

[BUG?]chiaki4deck for ps4

Hello, thanks for your working of chiaki4deck.

Chiaki4deck is working well in ps5,but I have encountered 2 issues in ps4(firmware5.05).

Firstly, if I putted ps4 to working at 5g wifi,and using chiaki4deck on SD.
TX rating of SD only woing at 30Mbps, even I play SD nearby router.(chiaki on android haven't this issue)
When I set ps4 working at 2.4g wifi,TX rating of SD will work normally.

Secondly,chiaki4deck can't let my ps4 to spleep when using L5 button.

Thanks.

Unable to set up chiaki4deck with PS4 on wired connection

Hi there, I asked about this in the Steam Deck subreddits but this app seems to work fine for everyone else. Any help would be much appreciated!

For some reason I'm just not able to get my PS4 and Deck to recognize each other. My PS4 is connected directly to my router via an ethernet cable. However, when I try to register my PS4 in chiaki4deck with the remote play PIN, I can an error message saying "received HTTP code 403", "Reported Application Reason: 0x80108bff (unknown)", and that "Regist eventually failed".

I'm following all the instructions: host has the IP address of the PS4 unit, I've selected PS4 Firmware < 7.0 (my PS4 is running 10.something), have entered my case-sensitive PSN online ID accurately, and have entered the PIN from "Add Device" in the PS4's remote play connections settings. Not sure if this is relevant, but the "PSN-Account-ID (base64)" box is greyed out for me and I'm not able to add it.

Would love to be able to solve this one. Thanks in advance!

Allow using hostname with automation creation script

Currently the automation creation script, checks for an ipv4 address. This prevents the user from entering a hostname during this process instead need to manually edit the launcher script after creation or manually create the script with the manual instructions. The current documentation covers a local connection and an ipv4 is what the user would generally use for this. However, if you want to make a remote connection many users want to use a vpn which has an external ip. This works with the automation itself but currently isn’t allowed by the automation creation script. Thus, the script needs a small update to accept dns hostnames as a separate option as well as to validate these separately with a regex.

Create a bug fix for Steam Deck audio not loading causing black screen

Using Chiaki or chiaki4deck in Desktop Mode can freeze indefinitely if your Steam Deck audio isn't loading (which unfortunately happens due to a driver bug relating to the Steam Deck's audio). Make chiaki gracefully handle this issue instead of freezing indefinitely. Currently, the issue and the workarounds (either use Gaming Mode [where the issue doesn't occur] or hit a volume button (+ or -) on the top of your Steam Deck to initialize the speaker before starting Chiaki) are documented here: https://streetpea.github.io/chiaki4deck/updates/releases/#how-to-prevent-desktop-mode-bug-from-occurring

Remote play on console has crashed

Was using chiaki4deck since Christmas, and just a day or two ago it starts giving me this error when trying to connect to my ps5. I haven't seen anyone else talking about the issue, so I thought I'd see if there was anything up here. I've tried uninstalling it from the deck, restarting the ps5, router, and pc. I hope I can get this sorted out!

EDIT
Okay, so I tested remote play from my PC with the official app and it worked just fine. Went back to my steam deck and chiaki worked just fine. No idea what is goin on with that.

Not working on steam deck (gaming mode + desktop mode)

When in desktop mode, I can remote play my PS5 via Chiaki4deck but left joystick can't move a character & it just serves as the same functions as D-pad, right joystick can't work too, XYB buttons too, only button A works...tried community controller mapping but still not working~ found that I can control the game by wireless keyboard...but I just want to control the game by steam deck's joysticks & buttons.

When in gaming mode, the loading page goes forever...already installed Proton GE...

Had deleted and reinstalled Chiaki4deck too yet none of them working~ too frustrated~!

controls not working

due to my wifi config I can only get chiaki working in desktop mode. I noticed some of my controls are no longer working. in the ps menu my left thumb stick can go up/down but not left/write, same for the dpad. my right thumb stick doesn't do anything. is there a way to reset the controls? this is what it's set to currently

20230114_184805

Trigger Issue in Astro

First, thank you for the awesome work all have done on this project.

The issue I am having is related to Astros playroom when streaming my ps5 on Steamdeck. When I try to play the part with the monkey suit, there is a place where you have to break through a rock in order to keep climbing. Specifically, the rock is purple, where the user has to do more than just climb. Natively on the ps5 I think this is done by a hard right trigger press. I checked my steam triggers and they are both coming up good on the pressure sensitivity test. Is this a known issue or perhaps a glitch on my end?

Console name with spaces

Currently, if the console has spaces in its name, the automation script cannot detect this, and simply errors out:
No Configuration found for 'FIRSTPARTOFCONSOLENAME'
This can be fixed by putting double quotes around the console name in the script file itself.
Would be great if this was detected and automated, or was integrated as a user option in the script setup

Duplicate button presses

I've just got my Steam Deck yesterday and have mainly been playing around in Chiaki streaming the PS5, it works absolutely flawlessly for the most part however a slightly major issue I'm getting is what appears to be duplicate button presses.

Playing Ni No Kuni II I've noticed in menus as well as dialogues if I press the A button it sometimes will act like a double press. This is especially noticeable with the bumpers as pressing a bumper in the menu will cause it to cycle menus unusably fast rather than just performing a single press to the next menu.

Is there a fix for this either in Chiaki or Steam controls I haven't been able to find?

Thank you.

connection issue

I'm having difficulty getting my SD connected to my ps5. I'm using an erro 6+ router. I've tried toggling my ps5 from lan to WiFi and vice versa. The SD is on the same network and said but it won't find my ps5. I was able to register it once but it can't find it afterwards. I've tried turning of upnp on the router, tried forcing both devices to use 5ghz signal, nothin seems to work. any ideas? thanks

Stretch key does not work half the time.

Using a community layout to assign the stretch key to back buttons, for whatever reason they do not work and it's seemingly random when they do work..
I have no idea how I managed to get them functioning last time but it really seems like most of the time these function keys do not work.
Anything involving the control key plus another key usually does not work.. unless it's The PlayStation button..

Is it possible to reassign these function keys so that they don't require holding a second button? It would be nice if stretch was just "S"

Either that or these functions just don't work half the time regardless

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.