PI 3 + PS3 Bluetooth controller freeze fix. UPDATED
-
It seems that the Pi 3 + PS3 controllers via bluetooth (RPi 3 internal BT) freeze with kernel panic is finally fixed.
Updating to kernel 4.4 solves the problem. So if you were affected by this, in a terminal run:
sudo apt-get install rpi-update sudo rpi-update 15ffab5493d74b12194e6bfc5bbb1c0f71140155
WARNING: I am not responsible for problems that this can make to your setup so try it at your own risk!!!
This is the commit: https://github.com/Hexxeh/rpi-firmware/commit/15ffab5493d74b12194e6bfc5bbb1c0f71140155
And this seems to be what fixes the problem: http://lxr.free-electrons.com/diff/drivers/bluetooth/hci_ath.c?v=4.4;diffval=4.1;diffvar=v
PS: If you are getting curl errors, check if your date/time is correct, run the following command and update again:
sudo update-ca-certificates --fresh
Regards
EDIT: The above is no longer needed. Just update as you normally do and install raspberrypi-sys-mods package:
sudo apt-get update && sudo apt-get dist-upgrade sudo apt-get install raspberrypi-sys-mods
-
I've been using my PS3 dual shock via Bluetooth on my 3 with 3.7 and it works great. The on screen instructions were okay. Something about plugging it in, disconnecting then turning back on. When I got that figured out it worked and has been flawlessly working since then. No latency or anything noticed.
I would prefer the pairing instructions to be a bit more clear point for point and would also appreciate the time out to be extended. It seems to turn off without use just a bit too fast for me. A user configurable time would great if there isn't an option already that I missed.
-
@opensourcefan This is a well known bug and it only occurs in some situations, nothing instant reproducible, at least that I am aware, but mainly in high cpu usage. You can check more information here:
https://github.com/raspberrypi/linux/issues/1360 -
@opensourcefan are you on irc at all? Wanted to send you a PM on this board, not sure if that's possible. If you have time, send me a msg on irc freenode #retropie. "bengus"
-
I have encountered freezes, had no idea they were due to the controller. I haven't checked and don't know what logs to check for such a thing.
@bengus Feel free to send me a pm if you like, I'm not irc savvy.Just sent you an irc message.... I think. -
Yes it helped.
"Sudo apt-get install RPI-update"
"Sudo sed -i 's / curl / curl -k / g' / usr / bin / RPI-update"
"Sudo UPDATE_SELF = 0 RPI-update 15ffab5493d74b12194e6bfc5bbb1c0f71140155"
Also solved the kodi error "ERROR: CCurlFile :: FillBuffer - Failed: Could not connect to server (7)."
SOURCE: https://github.com/raspberrypi/linux/issues/1360#issuecomment-218519761 -
Ok...not trying to be critical of you but first off....Sudo has to be changed to all lower case
Secondly...I dunno here so maybe someone can help out.... after getting the rpi-update installed and trying the "sudo sed xxxxx" line...mine errors out "sed: -e expression #1, char 10: unknown option to 's"
Just tried the last "sudo update_self....." line and it also errors out something about 'curl - certificates' or something....
-
The curl errors might be related to invalid or old certificates. Try this:
sudo update-ca-certificates --fresh
-
I don't know about a controller freezing but if you are having trouble with a "certificates error", check the time on the Pi. If it's not correct you will receive a error.
-
@Rascas It's grabbing stuff right now... THANKS for the clarification!
@glennlake Thanks to you as well...never thought about my date/time being unset. Which brings me to a question. Is there a way to keep the date/time in sync after a shutdown? I have a date/time module but would like to save it for another project....but if I really have to use it....probably have to setup an auto-grab on each boot in a config file if I don't...
-
@jmebd On my Pi3 if connected to the internet via the ethernet jack the time will update automatically. If using the wifi it never seemed to update so I added a line to the /etc/rc.local file. First you need to install "rdate". Go to the command line and type "sudo apt-get install rdate"(without quotes). Then type "sudo nano /etc/rc.local"(again without quotes). This will open the rc.local file so you can edit it. What you want to do is between the "fi" and the "exit 0" you want to enter this line:
sudo rdate -n -4 time-a.nist.gov
Now save this file with the extra line by typing "ctrl x", y, then enter. Now reboot and it should pull the correct time from the goverment time site and keep your pi in sync(if I haven't fat-fingered something).
-
@glennlake Fantastic! Thank you....I'll give that a shot when I get home from work afterwhile. I checked the date/time and it was incorrect so I went ahead and put the date/time module last night but I'd like for it to not be on there. I keep mine plugged in to ethernet just for kodi stuff so this will help greatly!
Thanks everyone for their patience and help. I'm sure LOTS will benefit from just this one thread itself.
p.s. I got my PS3 controller transferred back to onboard bluetooth after the update last night but didn't get a lot of time to play with it but in the 30 minutes I did....worked fine. Anyone else experiences thus far?
-
Trying now.. 30 good minutes without any freeze, that's a record! :) Will let the pi on for a while running a Mame game....
-
After some hours still running fine, and no new problem has appeared. :)
-
pi3, 3.7, updated to kernel 4.4, ps3 wireless
I've been using the shutdown system through the menu to turn off the system. I have to unplug it and can't leave it on for the time being.
I performed the update as per the first post including the certificate command (curl error).
Immediately after this update, when I use the shutdown command and unplug the pi, it won't boot upon re-plugging it in. It either crashes and stays black or I get a bunch of timeout messages on the screen. If I unplug without using the shutdown command it boots up just fine. If I unplug during the crash and re-plug it boots fine.
What log info can I provide to help with this and does this need it's own thread even though I believe it's related to the kernel 4.4 update.
-
After I do the "sudo rpi-update 15ffab5493d74b12194e6bfc5bbb1c0f71140155" and it's doing the update thing, then after a bit, I get several errors, like:
"gzip: stdin not in gzip format"
"tar: Child returned status 1"
"tar: error is not recoverable: exiting now"I'm doing this on my raspberry pi 3, Retropie 3.7.
Any idea how to solve this?
-
@opensourcefan I dont't know, I cannot reproduce it. Check /var/log/syslog.
@thorgim reboot and try again.
-
@Rascas It did the same thing again, but after I did a "sudo rpi-update", then it update the firmware to 4.4.9-v7, and it backup the 4.1.19-v7 with no errors at all. Seems it work better than the other option.
-
@thorgim rpi-update without the hash updates to the latest kernel version available, with the hash updates to the specific commit. Since that specific commit is already verified to work for many people, and later ones not, that was the reason to pick that specific commit.
EDIT: That is no longer needed. Kernel 4.4 is on Raspbian repo now, just update as normal:
sudo apt-get update && sudo apt-get dist-upgrade
-
@Rascas Thanks
Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.
Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.