Pandora Development on the Pandora


just tried Xming. However, I have a problem here.


Pandora connected via WiFi adhoc to Windows PC.


Pandora IP: 172.17.96.82


PC IP: 172.17.96.80


PC: Xming installed and started in window mode, no additional parameters, no Xmingrc file.


SSH terminal on PC to Pandora (using Putty).


In that SSH terminal, entered:


export DISPLAY=172.17.96.80:0.0


When I then try to start a program using the X server, I get an error:



Code:
pan1sd:~/$ xfce4-display-settings

Xlib: connection to "172.17.96.80:0.0" refused by server

Xlib: No protocol specified


xfce4-display-settings: Cannot open display: .

Type 'xfce4-display-settings --help' for usage.


What am I doing wrong?


Thanks


Daniel
 
I don't know Xming, but probably you need to open a port for incoming X11 connections (tcp/6000) in the windows firewall.


Using ssh X tunneling would be easier, but it seems the Pandora OS misses some components to make that work.


As for speed in that setup - well Pandora wireless is still quite sucky for interactive network applications. I've resorted to using an USB ethernet adapter...
 
Last edited by a moderator:
Bummer. I don't have permissions to change the Windows firewall settings on that PC. :-(


USB network adapter is a great idea, though. Maybe, if I can't use Xming due to the port problem, I will revert to VNC and have a better experience with USB network...


Daniel
 
... can X be configured to use another port, e.g. port 80?

It can, but I don't see why you would need to do that, plus port 80 used by http protocol.. your most likely just having a firewall issue.
 
... can X be configured to use another port, e.g. port 80?

It can, but I don't see why you would need to do that, plus port 80 used by http protocol.. your most likely just having a firewall issue.

Yes, and that is the reason why I would have to do that. I cannot change the firewall settings. However, the VNC port(s) seem to be open, so maybe if I use X instead of VNC I could make X use the VNC port 5900)...


Daniel
 
I like to use ssh tunnels. If you can use puTTY to ssh into the Pandora, you can easily open a tunnel to redirect ports however you need them.
 
I use the C/C++ Development tools PND to do my onboard Pandora development these days. I have my Pandora tethered to my main Linux PC over USB (ethernet gadget driver) and I "ssh -X dev-pandora" from my main PC (big screen, comfy keyboard, and so on). Once logged in, I do something like "source /mnt/utmp/cdevtools/.cdevrc" and from that point on, its all good ..


Another bonus is being able to just leave the sources for whatever project (right now its Dizzy Wizard) on the Linux PC, and mount - using sshfs - the directory locally on to the Pandora itself. USB-Gadget ethernet performance is decent enough that for most things, it works .. but I wouldn't recommend it if you want to compile the kernel or something - for small projects (less than 200 files) its plenty good enough.


With this scheme, I can edit sources directly on my main Linux PC, but build sources directly on the Pandora - I'm a vim guy, so being able to do a ":make" and get my command-list output for navigating/bugfixing is highly conducive to a good work flow.


If I could have one wish granted it would be that "screen" and "cscope" get added to the C/C++ Development Tools PND in the next release .. these are, imho, invaluable tools for doing development onboard the Pandora itself, directly. For now, its easy enough to just have "/media/SD16/pandora/bin" in my PATH, and install both tools myself manually ..
 
Thanks torpor.


What do you do if libs / headers are missing? Just install them using opkg install on the Pandora?


And your mentioning the USB-gadget driver reminds me of a quesitn I wanted do ask here, to: Is there a well working USB-gadget driver for Windows XP yet? The last time I heard of that topic I learned that there is no decent driver for it. But it would be very useful!


I second that screen is a very valuable tool in such scenarios. I don't know what cscope does, though.


Daniel
 
I like to use ssh tunnels. If you can use puTTY to ssh into the Pandora, you can easily open a tunnel to redirect ports however you need them.

well, looking for instructions for doing this I found a lot of howtos for the client side (ssh -L...), but how do I set up the server, in this case the Pandora, for that?


And how do I do ssh -L on Windows (where I currently use PuTTY for ssh)?


Thanks,


Daniel
 
I like to use ssh tunnels. If you can use puTTY to ssh into the Pandora, you can easily open a tunnel to redirect ports however you need them.

well, looking for instructions for doing this I found a lot of howtos for the client side (ssh -L...), but how do I set up the server, in this case the Pandora, for that?


And how do I do ssh -L on Windows (where I currently use PuTTY for ssh)?


Thanks,


Daniel

This should help you.


http://www.math.umn.edu/systems_guide/putty_xwin32.html
 
When creating your putty config, under the connection->ssh->tunnels branch, you can forward Local ports to remote ports and vice versa. Just google "putty ssh tunnel" and it tells you everything. If you're already able to ssh into the Pandora (set up Dropbear and all that, already, as I assume you have) then there's nothing to be done on the Pandora side.
 
wow, thank you! I will try that tomorrow, when I am back on the Windows PC.


Now I sit in front of a Mac and found that it's very easy here to do this X11 forwarding. Nice :)


Much more elegant than VNC.


Daniel
 
What do you do if libs / headers are missing? Just install them using opkg install on the Pandora?

I *was* a huge proponent of the Angstrom repo package manager, opkg, but the problem is that the Angstrom build server that is used to create a big part of the Pandora firmware isn't really maintained as a publically-exposed repo. So, while we *could* have a nicely running opkg system being run by the people making the firmware, we currently don't. opkg is, thus, broken.


So, I try not to use it. Its not a huge problem; I've been using freamons C/C++ Development PND with great success, it is a succinct and beautiful solution to the problem, and is very promising. Since Pandora is a "PND" machine, then lets all move to PND. :)


The reason its easy for me to abandon my love for opkg so easily is that my general policy is that if its in the Dev PND or some other PND, then I use it - if not and if I can, I install it myself.


This is, for example what I've done with cscope and screen, two very nice utilities for onboard development with the Pandora. I built both packges, "export PANDORA_LOCAL_HOME=/media/SD16/pandora/ && ./configure --prefix=$PANDORA_LOCAL_HOME", "make install" and, "PATH=$PATH:/$PANDORA_LOCAL_HOME", and so on. This works also, well enough, with a local include/ and lib/ and even var/ tree mounted at $PANDORA_LOCAL_HOME, and .. so on. All of this is just a few lines in my own .j_devrc, stashed on SD16.


EDIT: Also, my projects are all pretty well self-contained, and another important point: there are in fact a great deal of great libs available in the default firmware, in the first place. Boundary cases are solvable.
 
Last edited by a moderator:
Back
Top