Pandora Button Issue


lordbobjones

Member
Joined
Jul 8, 2010
Messages
288
I have not flashed the new firmware beta yet since we have been without power (Freaking cold in Texas today) But in that thread, there was a comment about the pandora button not working properly. I want to try to investigate this so please respond if you are having problems with this issue.


From my observations, the Pandora button issue has been related to apps and not the hardware button itself. I have only had one issue where it has not worked properly and that was in an emulator...cannot remember which one. I think the keyboard config had something to do with it in that case.


For those having this issue, try this: Hold the Pandora button down and do a quick count to 3. Release it and wait. Sometimes the processor is bogged down and it might take a few seconds, but a window should pop up.


If nothing comes up, please send me an email (lordbobjonesatgmail.com) with what firmware you are running, what app/game you were running with as much detail and also which gui you are using. I will try to duplicate the problem and see if we can figure this out.


Have fun.
 
No matter what I do, with the exception of my test in Mupen64plus, the Pandora button does nothing. It does register in op_test_inputs, and hitting it in MPlayer causes the little status bar to pop up, so the button physically works and the OS seems to know it exists on some level. However, whatever hooks exist, that let that button bring up the Pandora (Start) menu and holding it to bring up the task window, are missing on mine.


I have tried this with the following firmwares:


Out of the box


HP4


HP5b1


HP5b2


HP5b3


and I am about to flash to HP5b4


Anything you need to help solve this problem, I will do my best to provide. I could get x11vnc running and open a port for you this weekend if that would help. I am also emailing this to you.


Thanks!
 
Sorry for the slow response. The power here is out so I am operating from my phone. I tried to answer your email but wanted to post here just in case it did not go out. Curses, you rolling blackouts.


A few quick questions:


How long do you hold the button down? My button works like this: If I hold it for 4 seconds, the list of apps pops up on the bottom left side of the screen similar to the windows start button. I have to hold the button down for 5 seconds or longer for the app killing window to appear.


From the desktop, if you hold the button down for 5 seconds, what happens?


Thanks,


Bob
 
Hi,


Same issue here. The button works in op_test_inputs but not in xfce.


lordbobjones:


Holding the button for any time period has no effect.


It would seem that there is some weird permission problem or similar with our units.


Can someone with a working button attach:


/usr/pandora/scripts/op_menu.sh


/etc/pandora/conf/eventmap


And the permissions on those files?


Thanks


-(e)
 
Hi,


Awesome, thanks for that.


Unfortunately there is no perceptible difference.


Can you open a terminal and type:



Code:
dbus-monitor --system



and post what the output is? You should get something like:





Code:
signal sender=:1.0 -> dest=(null destination) path=/org/freedesktop/Hal/devices/computer_logicaldev_input;

                                              interface=org.freedesktop.Hal.Device; member=Condition

   string "ButtonPressed"

   string "pandora"



The bits I am interested in are the bits that might look like:



Code:
   string "ButtonPressed"

   string "pandora"




Thanks


-(e)
 
Hi,


Awesome, thanks for that.


Unfortunately there is no perceptible difference.


Can you open a terminal and type:



Code:
dbus-monitor --system



and post what the output is? You should get something like:





Code:
signal sender=:1.0 -> dest=(null destination) path=/org/freedesktop/Hal/devices/computer_logicaldev_input;

                                              interface=org.freedesktop.Hal.Device; member=Condition

   string "ButtonPressed"

   string "pandora"



The bits I am interested in are the bits that might look like:



Code:
   string "ButtonPressed"

   string "pandora"


Mine Says



Code:
   string "ButtonPressed"

   string "menu"


And brought up the menu as it always does









Thanks

-(e)
 
Mine Says



Code:
   string "ButtonPressed"

   string "menu"


And brought up the menu as it always does

Bugger... it's not that then. I thought possibly the the dbus message had the incorrect name for the button.


Guess not.


Then there is something else wrong. I don't know what is listening for the dbus event, but the break must be there somewhere, around where "menu" is translated into "pandora".


-(e)


[edit: clarity]
 
Last edited by a moderator:
Hi,

Other difference betweeen the msg you put and mine



Code:
serial=1262 path=/org/freedesktop/Hal/devices/platform_gpio_keys_logicaldev_input;


that is after (null destination) the rest is the same

No, mine is the same, I just took the example from a desktop msg.


Thanks for the info though.


We need to get an OS / firmware expert to look at this :(


-(e)
 
Last edited by a moderator:
If you press the pandora button, while on the Xfce desktop, the start menu pops up. However I have no idea how to close it afterwards. Clicking on the pandora logo start menu button does nothing, and neither does pressing the pandora button or am I missing something painfully obvious?
 
liquidphantom: To get rid of the menu, just touch the task bar at the bottom of the screen or touch the desktop and it should go away. Sometimes if there are processes running it might respond sluggishly.


Jerry Blade: This is really going to take someone really familiar with the kernel and how it interacts with the keyboard. Notaz or someone... Could this be something related to a generic driver? Or the module not set correctly? From the cobwebs of my brain, I remember that setting the configuration data for which GPIOs are used and configured is a pain in the arse to set. But as I said before this is beyond me. What is so strange is that it appears to work at some points and then not work at others. Since you indicated that it functioned while running Mupen64plus that just wierd. Can you try running mupen64plus again and see what the behavior is when the button is held. Does it actually bring up the process killer?


The other question is how many people are having this issue? It works fine for me and several others. Anyone else having this problem? Maybe something common can be spotted that is causing this...


-----------


An afterthought...


I have to come back and add one more comment. I just started looking at hardware driver issues and the process of how that all works. After a few minutes of reading, I closed the materials, my head spinning and sat back and thought to myself... Most have no idea just the level of amazing programming has went into the Pandora, the hardware development and getting this machine to run so freaking smoothly. For all of you on the team that put this device together, Kudos. You have made a work of art that I appreciate at a whole new level. You guys are amazing.
 
Last edited by a moderator:
In mupen64plus, as soon as I touch the Pandora button, the program exits. Holding it down for 30 additional seconds did nothing.


I agree as well. This device is absolutely amazing from both hardware and software engineering standpoints. My friends are all blown away that this even exists.


The crazy thing is I have *completely* reflashed the Pandora with both the current HP4 and all of the beta HP5s, and it didn't fix the problem... Doesn't the entire OS get rewritten when that happens? This makes me feel like it is hardware related *somehow*, but since op_test_inputs works... I am at a loss.


Hehe... I must need professional help because I am actually having a blast trying to figure this out.
 
Last edited by a moderator:
liquidphantom: To get rid of the menu, just touch the task bar at the bottom of the screen or touch the desktop and it should go away. Sometimes if there are processes running it might respond sluggishly.

Tried that and left it for a good 5-10 mins with the menu still there :(


Never mind
 
skeezix's pndevmapperd is responsible for handling the menu button, it then calls /usr/pandora/scripts/op_menu.sh to do actual work. You should be able to kill it and run it in debug mode from the terminal to see what's going on.



Code:
notaz-openpandora:~$ pndevmapperd --help

pndevmapperd [-d]

-d	Daemon mode; detach from terminal, chdir to /tmp, suppress output. Optional.

-l#	Log-it; -l is 0-and-up (or all), and -l2 means 2-and-up (not all); l[0-3] for now. Log goes to /tmp/pndevmapperd.log
 
I killed pndevmapperd and then ran it as pndevmapperd -l0. After hitting the pandora key (and other keys) many times, I checked the log... which was basically empty except for process starting info as shown below:



Code:
pndevmapperd 1 0	logall mode - logging to /tmp/pndevmapperd.log

pndevmapperd 1 0	logall mode 0 - turned on buried logging

pndevmapperd 1 0	pndevmapperd built Feb  2 2011 01:03:07

pndevmapperd 1 0	log level starting as 0

pndevmapperd 1 0	Starting INOTIFY test; should be instant, but may take awhile...


Any suggestions? Am I running it correctly?
 
FYI


While in XFCE and using the Pandora button and Power Switch to Reset the unit does work. Sounds like this is XFCE specific?
 
I killed pndevmapperd and then ran it as pndevmapperd -l0. After hitting the pandora key (and other keys) many times, I checked the log... which was basically empty except for process starting info as shown below:



Code:
pndevmapperd 1 0	logall mode - logging to /tmp/pndevmapperd.log

pndevmapperd 1 0	logall mode 0 - turned on buried logging

pndevmapperd 1 0	pndevmapperd built Feb  2 2011 01:03:07

pndevmapperd 1 0	log level starting as 0

pndevmapperd 1 0	Starting INOTIFY test; should be instant, but may take awhile...



Any suggestions? Am I running it correctly?
Run it with sudo, you should get:



Code:
pndevmapperd 1 0	logall mode - logging to /tmp/pndevmapperd.log

pndevmapperd 1 0	logall mode 0 - turned on buried logging

pndevmapperd 1 0	pndevmapperd built Aug 27 2010 00:44:54

pndevmapperd 1 0	log level starting as 0

pndevmapperd 1 0	Starting INOTIFY test; should be instant, but may take awhile...

pndevmapperd 0 0	notify: Got event against 'foopanda' [512 200]

pndevmapperd 1 0	INOTIFY seems to be useful, whew.

pndevmapperd 1 0	Checking to see if a user is logged in

pndevmapperd 1 0	Looks like user 'notaz' is in, continue.

pndevmapperd 1 0	Registered generic event lid-toggle [0] to script /usr/pandora/scripts/op_lid.sh

pndevmapperd 1 0	Registered key lcdbrightup [225] to script /usr/pandora/scripts/op_bright_up.sh with maxhold 0

pndevmapperd 1 0	Registered key lcdbrightdown [224] to script /usr/pandora/scripts/op_bright_down.sh with maxhold 0

pndevmapperd 1 0	Registered key power [116] to script /usr/pandora/scripts/op_power.sh 3 with maxhold 3

pndevmapperd 1 0	Registered key pandora [139] to script /usr/pandora/scripts/op_menu.sh 1 with maxhold 1

...

pndevmapperd 1 0	/dev/input/event0 maps to power-button

pndevmapperd 1 0	/dev/input/event1 maps to gpio-keys

pndevmapperd 1 0	/dev/input/event2 maps to keypad

pndevmapperd 1 0	/dev/input/event3 maps to nub0

pndevmapperd 1 0	/dev/input/event4 maps to nub1

pndevmapperd 1 0	Ignoring unknown device 'nub1'

pndevmapperd 1 0	/dev/input/event5 maps to touchscreen

pndevmapperd 1 1	Will attempt to invoke: /usr/pandora/scripts/op_menu.sh 0

pndevmapperd 1 2	---[ SIGCHLD received ]---

pndevmapperd 1 2	     SIGCHLD done ]---



For further debugging, add 'set -x' on top of /usr/pandora/scripts/op_menu.sh:



Code:
#!/bin/bash

set -x

#actions done when the menu button is pressed

...



That produces this output for me:



Code:
+ '[' 1 -ge 2 ']'

++ pidof xfce4-session

+ xpid=1213

+ '[' 1213 ']'

+ echo 'xfce4 is running'

xfce4 is running

++ ps u -C xfce4-session

++ tail -n1

++ awk '{print $1}'

+ xfceuser=notaz

+ '[' ']'

+ echo 'starting appfinder'

starting appfinder

++ pidof xfce4-popup-menu

+ popuppid=

+ '[' ']'

+ su -c 'DISPLAY=:0.0 xfce4-popup-menu' - notaz

...and the menu pops up.
 
Last edited by a moderator:
Back
Top