Official Gitbrew Forums
These forums cover all aspects of the Gitbrew biosphere. If you would like your development project to be based here, ask an admin.

Home » PS3 » OtherOS++ » Linux » use bluetooth controller on petitboot, almost there
use bluetooth controller on petitboot, almost there [message #1031] Mon, 09 April 2012 00:46 Go to next message
moska is currently offline  moska
Messages: 6
Registered: March 2012
Gitbrew Noob
the problem is pb-cui inits /dev/input/js0 one time only. on what i did, /dev/input/js0 only appears when u pair the controller (press the ps button) so u cant use sixaxis on the menu, but it works in the system. the only way to make it work with the menu is to pair it before it appears, or pair it and restart pb-cui program.

pb-cui is the ncurses text menu.

pb-discover is a listener for adding storage devices, that updates the menu when u plug a usb hdd, for example.

so i made a quick hack to pb-discover, which receives the bluetooth pairing event from udev, that when u press the button it executes a function, the problem is i don't know how to tell pb-cui to respawn from pb-discover, everything i do it just dies and doesnt respawn, or it respawns inside of pb-discover. what else could be done?

we also need a way to find out the sixaxis MAC address to do unpairing with hcitool dc <xx:xx:Xx> when leaving otheros, or the controller will be paired with the otheros when u boot the ps3os

saludos
Re: use bluetooth controller on petitboot, almost there [message #1033 is a reply to message #1031] Mon, 09 April 2012 10:07 Go to previous messageGo to next message
glevand is currently offline  glevand
Messages: 955
Registered: July 2011
Location: SONY
Gitbrew God
Yeah, it seems that pb-cui opens /dev/input/js0 only at start time.
Maybe you should try it with a udev rule which catches controller events and restarts CUI.
Re: use bluetooth controller on petitboot, almost there [message #1037 is a reply to message #1031] Mon, 09 April 2012 18:15 Go to previous messageGo to next message
moska is currently offline  moska
Messages: 6
Registered: March 2012
Gitbrew Noob
lol yea, the problem was with CUI. there are 3 cui, pb-cui, ps3-cui, nc-cui i missed some stuff in ps3-cui it had a signal handler. i was sending SIGHUP and it died. i messed around with it and now it works.

so with some sixaxisd magic with udev and pb-discover i send hup to pb-cui and it inits js0 and uses it in the menu

much thanks! Smile
Re: use bluetooth controller on petitboot, almost there [message #1053 is a reply to message #1031] Wed, 11 April 2012 20:29 Go to previous messageGo to next message
moska is currently offline  moska
Messages: 6
Registered: March 2012
Gitbrew Noob
now i seem to be having a problem with my build env.. it seems as if every build i complete, i can't install it on the ps3. the builds work fine if i load a precompiled version, and then kexec it, but everytime i install it in the ps3 then try to boot it, it crashes and shutsdown the ps3, or it just freezes. The size is not the problem, i was using config-tiny as a base and the bin file is 6MB.

Since i had made some mods for bt support, i restarted everthing following the how-to with no changes, and still the same problem added with the issues of the configs, ej: no modules, no dhcp, etc. the problems i had before. so changes or no changes, i can't install it.

The problem probably is somewhere within the config, and the kernel modules. i think the configs linked in the how-to were not saved correctly, i think you must choose "Save alternative config file" for both menus for the current configs to be saved to files. i tried exporting the .config files, and found this was the way to keep the settings

could you please send me a copy of the latest version of the two configs u are using saved that way to test it? tnks! im using linux-3.3.1.
Re: use bluetooth controller on petitboot, almost there [message #1060 is a reply to message #1053] Thu, 12 April 2012 18:16 Go to previous messageGo to next message
glevand is currently offline  glevand
Messages: 955
Registered: July 2011
Location: SONY
Gitbrew God
My openwrt config for Linux 3.3.1: http://gitbrew.org/~glevand/ps3/linux/openwrt/config-huge-3. 3
Linux 3.3.1 config for openwrt: http://gitbrew.org/~glevand/ps3/linux/openwrt/linux-config-3 .3.1
Re: use bluetooth controller on petitboot, almost there [message #1064 is a reply to message #1031] Thu, 12 April 2012 20:23 Go to previous messageGo to next message
moska is currently offline  moska
Messages: 6
Registered: March 2012
Gitbrew Noob
thanks for the reply, i will check these out when i can as my hdd is dying and i need to nuke everything, and save what i can..

what relation does the openwrt menu has with the kernel modules? i added uinput, but had to create a rule in openwrt kmod for the module to actually load, otherwise it compiled, but didnt actually load, i was messing around with this before too, vram and rtc, timeout i think you have to select it built-in in openwrt and as module in kernel?

i will try once more my system is 100% again, sucks to have it working, but cant install it Smile
Re: use bluetooth controller on petitboot, almost there [message #1065 is a reply to message #1064] Thu, 12 April 2012 22:00 Go to previous messageGo to next message
glevand is currently offline  glevand
Messages: 955
Registered: July 2011
Location: SONY
Gitbrew God
You have to use openwrt kmod Makefiles if you want your kernel modules installed properly on petitboot.
In this case you don't have to select those modules in kernel config, it's done automatically by openwrt then.
I created my kmod packages too, e.g. for ps3strgmngr or ps3jupiter.
Re: use bluetooth controller on petitboot, almost there [message #1114 is a reply to message #1065] Sun, 22 April 2012 23:05 Go to previous messageGo to next message
moska is currently offline  moska
Messages: 6
Registered: March 2012
Gitbrew Noob
hey, i tried again a few times, i seem to be having an issue with linux-3. I can't even boot from a petitboot with linux-3 kernel in it, it just hangs in booting <label>. restart just ends up with a blinking cursor, and shutdown powers off, but restarts in gameos. i tried the latest precompiled image you posted in another thread, and it just shutdown and crashed. so it seems to me that my problem is isolated ?

the only way i could boot again was to use the petitboot image with linux 2.6, then i could boot the linux-3 in the system. is it possible there is some corrupt nvram setting linux-3 from petitboot is reading somewhere? or is it bugs ?

from what i understand, we are using a kboot kernel to boot a real kernel? is there any possibility to use another bootloader? i saw grub2 has powerpc support, but for firmware. i read ppl used yaboot before and it was for firmware too, but hacked. Can grub2 be hacked to use in the ps3 ? or any other bootloader ? i saw it brings grub-emu, i think it can be used as a replacement for pb-cui maybe ? or some sort of fake firmware shell ? i read the code for the installer, and it seemed hardcoded for petitboot

i found these good docs, but they dont write about kboot -> http://cell.fixstars.com/ps3linux/download/cell-linux-200802 01/CELL-Linux-CL_20080201-ADDON/doc/

i was trying to understand the kboot process by building my own, using http://www.pdaxrom.org/index.php/Build_system. i have applied almost all the patches to the pacakges. i have complete control over what is in the image. im still learning uclibc, and having trouble compiling udev dependencies, they are so much! it even needs glib, but doesnt uclibc is meant to replace glib?
Re: use bluetooth controller on petitboot, almost there [message #1136 is a reply to message #1114] Tue, 24 April 2012 18:50 Go to previous message
glevand is currently offline  glevand
Messages: 955
Registered: July 2011
Location: SONY
Gitbrew God
Hmm, i never tested any other bootloaders except petitboot on PS3.
petitboot is just a normal Linux, a very small one and with initramfs as rootfs, but still just a normal Linux.
And we use kexec syscall on it to boot another Linux kernel which is on HDD e.g.
You can use kexec on any other Linux too, not only petitboot.

kedex syscall is not very hard to understand.
You just load a new kernel into RAM with kexec syscall.
Then with another kexec syscall you can shutdown the current Linux kernel which copies the new kernel to a proper place in RAM page by page and jumps to it. But before that all driver are deinitialized ans so on. Of course it is a very simplified point of view on kexec syscall.

[Updated on: Tue, 24 April 2012 18:53]

Report message to a moderator

Previous Topic: Compiler Kernel 3.2.1 - loader ubuntu usb
Next Topic: Two Questions about Linux
Goto Forum:
  


Current Time: Wed Jun 19 18:18:44 CEST 2013

Total time taken to generate the page: 0.02368 seconds