LinuxMCE Forums

General => Developers => Topic started by: totallymaxed on August 12, 2010, 02:46:07 am

Title: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: totallymaxed on August 12, 2010, 02:46:07 am
We'd like to see what devices/platforms you can port the Touch Orbiter too. Touch Orbiter is a simple front-end app that leaves all of the LinuxMCE complexity running on the Core and requires a very minimal understanding of the LinuxMCE architeture to implement it on a fresh platform. Porting Touch Orbiter to you favourite client device or OS only requires knowledge of that devices Dev requirements - making the port really simple to achieve. We have a fully implemented reference implementation with complete source code available on the Wiki page below;

http://wiki.linuxmce.org/index.php/Touch_Orbiter_-_for_the_CUWIN3500_in-wall_Touch_Panel

So if you have a favourite platform or OS then why not try a port of Touch Orbiter as your next project :-)

All the best


Andrew

PS **** Please put you code into the svn even at an early stage in its development...doing so will help others thinking of starting a port and also it gives people & opportunity to help if you hit a problem...share your code 'early n often' !
Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: mihajzm on August 13, 2010, 09:17:48 am
I work on Mini2440 port runing on Linux. But have run to several problems.
All over the code are Windows includes. Thats a problem. I must rewrite and replacle this includes.
can somebody help with this.

PS: You can say, put WinCE on Mini2440 and run the TouchOrbiter, but I love Linux :)
Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: totallymaxed on August 13, 2010, 10:01:28 am
I work on Mini2440 port runing on Linux. But have run to several problems.
All over the code are Windows includes. Thats a problem. I must rewrite and replacle this includes.
can somebody help with this.

PS: You can say, put WinCE on Mini2440 and run the TouchOrbiter, but I love Linux :)

Hi mihajzm,

The purpose of the reference source code for WinCE 5.0 was not so much that you would literally port it by changing a few lines here or there but that you could look at the code and understand how the Touch Orbiter was designed and could then re-impliment it for the OS your device has available. Clearly you could also take the approach of literally porting the WinCE code over but as you have seen it was not architected with that in mind.

We would love to see Touch Orbiter running on Linux on the Mini2440 by the way so stick with it!

If you have any specific questions then post them here or look out for Uplink (he works here with me...and actually wrote the code) in the irc channel #linuxmce-devel and ask him any questions there.

All the best


Andrew
Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: mihajzm on August 13, 2010, 10:24:26 am
OK. I must study the code to understand it.The communications section is no problem. The biggest thing is to rewrite the image handling. But I thing it's doable.
When I have question, I write to IRC.

thanks.
Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: mihajzm on August 18, 2010, 02:42:21 pm
I have a preliminary version of the TouchOrbiter for Mini2440 7" LCD done.
I have used buildroot 2010-02 to create a build enviroment.
For graphics&touchscreen I use DirectFB + SDL + TSLIB.

I have one little problem.I need to have 800x480 resolution to be selectable in Orbiter page.How can I do this.

Orbiter screens were generated with 720X480 Resolution.
Recorded with Nokia E51. Tomorow I use a better camera.

http://www.youtube.com/watch?v=aDnQ62b7hrw (http://www.youtube.com/watch?v=aDnQ62b7hrw)
Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: totallymaxed on August 18, 2010, 08:37:02 pm
I have a preliminary version of the TouchOrbiter for Mini2440 7" LCD done.
I have used buildroot 2010-02 to create a build enviroment.
For graphics&touchscreen I use DirectFB + SDL + TSLIB.

I have one little problem.I need to have 800x480 resolution to be selectable in Orbiter page.How can I do this.

Orbiter screens were generated with 720X480 Resolution.
Recorded with Nokia E51. Tomorow I use a better camera.

http://www.youtube.com/watch?v=aDnQ62b7hrw (http://www.youtube.com/watch?v=aDnQ62b7hrw)



That is really fantastic!!!

Congratulations your the first person to complete a port :-). By the look of your video the performance looks pretty snappy too.

As to resolution - try the Nokia N770/800/810 resolution which is actually 800x480 as that should work perfectly.

Its great to see that you were able to port to the Mini-2440 in less than a week. Great work.

Lets document your work in the Wiki - add a page for the Mini-2440 or add a section to the existing page. Describe what you did and any little tips to make the process for others easier etc and importantly get your code into the svn and link to that from the wiki page.

All the best


Andrew
Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: mihajzm on August 19, 2010, 09:14:34 am
The code is now ugly, I must clean it up. I need one week to complete this.
I can do it only in my spare time (1-2 hours a day).
When it's really ready I make a page in Wiki.

Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: posde on August 19, 2010, 09:27:04 am
Please create a trac ticket, and attach the code, so we can move it into svn. Thanks
Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: totallymaxed on August 19, 2010, 09:48:28 am
The code is now ugly, I must clean it up. I need one week to complete this.
I can do it only in my spare time (1-2 hours a day).
When it's really ready I make a page in Wiki.

Don't be worried about how the code looks etc. As possy says create the trac ticket & attach the current code so that we can get the initial source into svn. Then you can update it as you progress and also possibly others can contribute to it too ;-)

All the best


Andrew
Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: mihajzm on August 19, 2010, 05:19:12 pm
I have cerated a ticket in trac:
http://svn.linuxmce.org/trac.cgi/ticket/797 (http://svn.linuxmce.org/trac.cgi/ticket/797)

Made some changes to the code. Response is now much more faster.
Video of working sample with booting:

http://www.youtube.com/watch?v=OYiw3zV7Mzo (http://www.youtube.com/watch?v=OYiw3zV7Mzo)


Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: totallymaxed on August 19, 2010, 07:28:08 pm
I have cerated a ticket in trac:
http://svn.linuxmce.org/trac.cgi/ticket/797 (http://svn.linuxmce.org/trac.cgi/ticket/797)

Made some changes to the code. Response is now much more faster.
Video of working sample with booting:

http://www.youtube.com/watch?v=OYiw3zV7Mzo (http://www.youtube.com/watch?v=OYiw3zV7Mzo)

Wow the performance is much better than the previous version. What did you change to get the performance gain?

Nice splash :-)

All the best

Andrew
Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: mihajzm on August 19, 2010, 08:58:57 pm
The "anynews" command and also screen refresh was called to often. I have also separated several processes to threads.

- "anynews" is now called every 100ms
- threads are waiting on each other and execute only when somethnig changes
- screen is refreshed only when something is changed,

mihajzm
Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: hari on August 19, 2010, 09:16:05 pm
Nice job!
 Br hari
Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: totallymaxed on August 19, 2010, 09:36:07 pm
The "anynews" command and also screen refresh was called to often. I have also separated several processes to threads.

- "anynews" is now called every 100ms
- threads are waiting on each other and execute only when somethnig changes
- screen is refreshed only when something is changed,

mihajzm

Nice :-)

...however in the 3500 code we only call 'anynews' every 1000ms

Andrew
Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: darrenmason on August 20, 2010, 12:48:24 am
Hi Andrew,

I started on a version yesterday for Android and have a couple of questions for you.

1. What changes have been made to Proxy_Orbiter? Is it just the 'ANYNEWS?' command support. The reason I ask is that me server is still 7.10 so has the old version. This should still be usable, correct?

2. I am having problems with the Image returned. It currently will not decode. I am also getting problems if I try to open the PNG file generated by Proxy Orbiter  (mine is 64_web.png) on my dev machine. It complains that it is an invalid PNG file (when opened by Ubuntu 10.04) however seems to open in Firefox OK. Any suggestions?

regards
Darren
Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: totallymaxed on August 20, 2010, 12:56:47 am
Hi Andrew,

I started on a version yesterday for Android and have a couple of questions for you.
Thats great. We really need and Android version.
Quote

1. What changes have been made to Proxy_Orbiter? Is it just the 'ANYNEWS?' command support. The reason I ask is that me server is still 7.10 so has the old version. This should still be usable, correct?
You really do need to use an updated proxy_orbiter binary for Touch Orbiter or Web Orbiter 2.0 as they both rely heavily on the new features in proxy_orbiter. See posde's post re his 7.10 version here; http://forum.linuxmce.org/index.php?topic=10483.0 (http://forum.linuxmce.org/index.php?topic=10483.0)
Quote

2. I am having problems with the Image returned. It currently will not decode. I am also getting problems if I try to open the PNG file generated by Proxy Orbiter  (mine is 64_web.png) on my dev machine. It complains that it is an invalid PNG file (when opened by Ubuntu 10.04) however seems to open in Firefox OK. Any suggestions?
I'll point my colleague Uplink at your question above and get him to give you some assistance... he wrote the Touch Orbiter for WinCE 5.0.
Quote

regards
Darren
Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: uplink on August 20, 2010, 01:05:24 am
2. I am having problems with the Image returned. It currently will not decode. I am also getting problems if I try to open the PNG file generated by Proxy Orbiter  (mine is 64_web.png) on my dev machine. It complains that it is an invalid PNG file (when opened by Ubuntu 10.04) however seems to open in Firefox OK. Any suggestions?

Be aware that Proxy_Orbiter returns JPEG images if the "ImageQuality" Device Data is anything but 100. This value defaults to 70 and is passed to the JPEG encoding library. If it's 100, PNG images are generated instead.
Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: posde on August 20, 2010, 07:31:24 am
1. What changes have been made to Proxy_Orbiter? Is it just the 'ANYNEWS?' command support. The reason I ask is that me server is still 7.10 so has the old version. This should still be usable, correct?

I build a version for 710. It is linked from a sticky forum post.
Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: mihajzm on August 20, 2010, 09:51:50 am
I answer your first question:
You must install the new ProxyOrbiter to your server. Simply follow the instructions in this thread: http://forum.linuxmce.org/index.php?topic=10483.0 (http://forum.linuxmce.org/index.php?topic=10483.0)

mihajzm
Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: coley on August 20, 2010, 10:48:35 am
I took mihajzm's code and I've just compiled this for N900 - it being arm wasn't too hard a task  :) Doing it on Nokia/Windys SDK was the hardest part!
Once I get my packaging dependencies sorted I can generate a deb file.

-Coley.

ah might check Maemo orbiter pkg gen for dependency stuff.
 -stupid busted SDK  >:( , I can only create rudimentary deb, gonna have to move it over to linux to create proper deb.
Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: totallymaxed on August 20, 2010, 11:13:27 am
I took mihajzm's code and I've just compiled this for N900 - it being arm wasn't too hard a task  :) Doing it on Nokia/Windys SDK was the hardest part!
Once I get my packaging dependencies sorted I can generate a deb file.

-Coley.

ah might check Maemo orbiter pkg gen for dependency stuff.

Hey thats cool :-)

Can I ask everyone who is working on a version of Touch Orbiter to make sure they create a ticket for it and attach the source code to it, create a basic Wiki page for your version (and link to it from the main Touch Orbiter wiki page too). I'd like to make sure that finding your version and getting working is as easy and documented as possible.

Its exciting to see so much great work going on around Touch Orbiter :-)

All the best


Andrew
Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: darrenmason on August 20, 2010, 12:13:43 pm
1. What changes have been made to Proxy_Orbiter? Is it just the 'ANYNEWS?' command support. The reason I ask is that me server is still 7.10 so has the old version. This should still be usable, correct?

I build a version for 710. It is linked from a sticky forum post.


Thanks posde, I had already downloaded the version that you posted some time back but it doesn't seem to support ANYNEWS?

I am constantly getting ERROR returned.

This is the relevant parts from the log files;
05      08/20/10 19:03:24.552           ^[[33;1mReceived ANYNEWS?, but device hasn't identified itself yet.^[[0m <0xb41e6b90>
05      08/20/10 19:03:24.552           ^[[33;1mReceived: ANYNEWS?^[[0m <0xb41e6b90>
05      08/20/10 19:03:24.552           ^[[33;1mNot a valid communication tokey. Check the specs. Sending error...^[[0m <0xb41e6b90>

I have definitely replaced the executable with the one that you provided but it doesn't appear to support ANYNEWS?

Any suggestions?

Regards
Darren
Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: darrenmason on August 26, 2010, 01:00:51 am
Hi,

Can someone do me a favour and check the status of their proxy_orbiter - particularly if it is the 7.10 version that posde built.

You should be able to telnet to the server on the proxy_orbiter port (3461 by default I think) and issue ANYNEWS? and get a valid response.

I am consistently getting an ERROR response and from the log fragment I posted before it appears to be unsupported.

I have tried building me own version but are getting seg faults on it at the moment and havn't had a chance to look any further.

I am still having problems dealing with the IMAGE stream that is sent back to. I have my code working with static files (PNG or JPG) and I also made it work with a http streamed version of the file (similar to how I did the Chumby orbiter - see wiki). The android BitmapFactory doesn't give a lot of error feedback - you seem to get a valid object or NULL.

I will try a few more things but open to suggestions....

Regards
Darren
Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: uplink on August 26, 2010, 02:09:24 am
What characters are you sending after "ANYNEWS?" and "IMAGE"? Can you verify the string you send ends just with \n, not \r\n? I didn't look in the code right now, so I'm just throwing a guess, but maybe Proxy_Orbiter is picky about that. Do you have any source code I can look at?
Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: darrenmason on August 26, 2010, 08:42:03 am
What characters are you sending after "ANYNEWS?" and "IMAGE"? Can you verify the string you send ends just with \n, not \r\n? I didn't look in the code right now, so I'm just throwing a guess, but maybe Proxy_Orbiter is picky about that. Do you have any source code I can look at?

From the code; I think I was using a PrintWriter and using println - so that should be '\n' on a linux dev box.

From Telnet; Telnetting from a local shell (on Ubuntu 10.04 machine) and just pressing enter, which again should just send '\n'

Both return the data for IMAGE (just can't seem to use it) and both return 'ERROR' for 'ANYNEWS?'

The code is at home so I will confirm and post what it is doing. Don't think it is a problem though; the ProxyOrbiter code is 'else if (sLine.substr(0, 8) == "ANYNEWS?")' so shouldn't care about extra characters.

Hopefully get another look at it tonight when I get home. For the IMAGE problem : Might try and stream the IMAGE to a file and then compare it with the server file. For ANYNEWS? problem : Might see if I can get my own version running .

Thanks for helping.

Darren
Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: totallymaxed on August 26, 2010, 09:18:40 am
What characters are you sending after "ANYNEWS?" and "IMAGE"? Can you verify the string you send ends just with \n, not \r\n? I didn't look in the code right now, so I'm just throwing a guess, but maybe Proxy_Orbiter is picky about that. Do you have any source code I can look at?

From the code; I think I was using a PrintWriter and using println - so that should be '\n' on a linux dev box.

From Telnet; Telnetting from a local shell (on Ubuntu 10.04 machine) and just pressing enter, which again should just send '\n'

Both return the data for IMAGE (just can't seem to use it) and both return 'ERROR' for 'ANYNEWS?'

The code is at home so I will confirm and post what it is doing. Don't think it is a problem though; the ProxyOrbiter code is 'else if (sLine.substr(0, 8) == "ANYNEWS?")' so shouldn't care about extra characters.

Hopefully get another look at it tonight when I get home. For the IMAGE problem : Might try and stream the IMAGE to a file and then compare it with the server file. For ANYNEWS? problem : Might see if I can get my own version running .

Thanks for helping.

Darren

Hi Darren,

I'd recommend persisting as I am pretty sure that your problems are local to you. Also proxy_orbiter is going to get more enhancements in the future to support enhanced UI features on the device running Touch Orbiter etc.

If you can't work out whats happening post your code here or get a preliminary version into the svn so that we can grab it and look it over to help you.

All the best


Andrew
Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: uplink on August 26, 2010, 03:36:00 pm
I guess you're using this: http://developer.android.com/reference/android/graphics/BitmapFactory.html (http://developer.android.com/reference/android/graphics/BitmapFactory.html) and decodeFile works but decodeByteArray isn't? That would be strange. Save those bytes to file and see what you get different. Those exact same bytes are written to file before serving the web browser.
Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: darrenmason on August 27, 2010, 01:00:10 am
I guess you're using this: http://developer.android.com/reference/android/graphics/BitmapFactory.html (http://developer.android.com/reference/android/graphics/BitmapFactory.html) and decodeFile works but decodeByteArray isn't? That would be strange. Save those bytes to file and see what you get different. Those exact same bytes are written to file before serving the web browser.

Yeah basically... I saved the byte array to a file last night and compared the file to the image file on the server. The result; Not even close and no similarities. Chekced for bits being reversed per byte and per word but nothing to align the two at all. And the biggest problem was that the received byte array was quite short. They were both the same physical size (this is expected as the buffer is built from the size parameter passed back - which is right ) but the received array only occupies the first couple of hundred bytes, the rest being null.

I have looked at the server code and it seems to just read the server file and stream it across the socket so there is not much that can go wrong there. So I am supspect of the stream itself.

Next thing to try is a local coded client to stream the file from the socket (and write to a file). Will try a java one first and C one if necessary - if that works fine then it is definately something to do with the Android code.

I am still suspect of the endianess being different so I will have to look into that but the fact that the size of the stream received seemsto be so small is a worry. (Keep in mind I am running on the Android emulator which I think emulates ARM )

Anyway - Still on it. Hope to get it working over the weekend.

Darren
Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: uplink on August 27, 2010, 01:11:10 am
When you set the quality to 100, does your array even start with the PNG signature, even if it's truncated, or does it start with garbage? If you do get the PNG signature, then check if your read function doesn't return early (which means you'll have to loop to get the rest of the bytes).

Here's what you should be looking for: http://en.wikipedia.org/wiki/Portable_Network_Graphics#File_header (http://en.wikipedia.org/wiki/Portable_Network_Graphics#File_header)

A PNG file starts with an 8-byte signature. The hexadecimal byte values are 89 50 4E 47 0D 0A 1A 0A; the decimal values are 137 80 78 71 13 10 26 10. Each of the header bytes is there for a specific reason:[4]

Bytes                    Purpose
89Has the high bit set to detect transmission systems that do not support 8 bit data and to reduce the chance that a text file is mistakenly interpreted as a PNG, or vice versa.
50 4E 47In ASCII, the letters PNG, allowing a person to identify the format easily if it is viewed in a text editor.
0D 0AA DOS-style line ending (CRLF) to detect DOS-UNIX line ending conversion of the data.
1AA byte that stops display of the file under DOS when the command type has been used—the end-of-file character
0AA UNIX-style line ending (LF) to detect UNIX-DOS line ending conversion.
Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: darrenmason on August 30, 2010, 03:42:17 am
Thanks uplink...

Some progress ... Wrote a test Java client to stream the image and write to file. Had a couple of issues but got to a point where it worked fine and the image is what is expected.

So I know the Proxy_orbiter is at least delivering a valid image on my machine so there is no problem there. Moving effectively the same code to Android gave me some progress but not a result yet. Ran out of time but at least I can do side by side comparisons of the stream reading code (which is almost identical) to see exactly what is happening. Have already discovered that some of the InputStream classes were not doing what I expected.

Will update when I know a bit more...
Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: coley on September 01, 2010, 05:16:25 pm
small bit of progress - have a .deb that will install and un-install the TouchOrbiter on the N900.
Its not using the icon I'm telling it to but is putting the shortcut in the right desktop group.

btw - what is the correct way to exit the TouchOrbiter? the Exit Orbiter button doesn't get displayed for this type of Orbiter.

-Coley.
Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: totallymaxed on September 01, 2010, 06:02:53 pm
small bit of progress - have a .deb that will install and un-install the TouchOrbiter on the N900.
Its not using the icon I'm telling it to but is putting the shortcut in the right desktop group.

btw - what is the correct way to exit the TouchOrbiter? the Exit Orbiter button doesn't get displayed for this type of Orbiter.

-Coley.

In the reference CuWin version we implemented the exit as a 'long' press of the touch screen as we did not intend the WinCE desktop to be visible of usable to the end user. This will not be the case on the N900 or other similar devices eg Android devices clearly.

All the best

Andrew
Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: uplink on September 05, 2010, 12:31:22 pm
btw - what is the correct way to exit the TouchOrbiter? the Exit Orbiter button doesn't get displayed for this type of Orbiter.
You can choose the exit method. On the CUWIN3500 I use a long tap gesture that WinCE provides and display a dialog box asking you if you want to quit if you use this gesture.
Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: darrenmason on September 06, 2010, 01:11:32 am
Got a couple of hours on the weekend to spend on this - have the basic Android Touch Orbiter working. Still need to sort out some of the quirks in how the co-ordinates are being returned on a touch event but orbiter is working both on emulator and my phone.

Will clean up hopefully tonight or tomorrow night and make available to all.

ps; The problem with the image streams I was having seemed to be related to different Readers and InputStreams using the Socket Input Stream. I was reading the first line using a Reader object and the byte buffer using a DataInputStream. Changed the first line read to use the same DataInputStream and seem to be OK at the moment.

Darren
Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: buckle on September 07, 2010, 05:56:16 pm
...
ps; The problem with the image streams I was having seemed to be related to different Readers and InputStreams using the Socket Input Stream. I was reading the first line using a Reader object and the byte buffer using a DataInputStream. Changed the first line read to use the same DataInputStream and seem to be OK at the moment.

Darren

haha...I had a similar experience when creating the UnOrbiter.NET (touch orbiter for .NET framework).

The problem manifested itself in a different way, but it was essentially the same problem.  I used one object(StreamReader) to read the first line (it has support for ReadLine method) to get the image size and another(Stream) to grab the rest of the stream.  I didn't pay close attention to what the StreamReader was doing to the buffer.  Lesson learned :) 

This shortcut cost me some headaches, for sure, so I feel your pain.
Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: darrenmason on September 08, 2010, 01:02:21 am
...
ps; The problem with the image streams I was having seemed to be related to different Readers and InputStreams using the Socket Input Stream. I was reading the first line using a Reader object and the byte buffer using a DataInputStream. Changed the first line read to use the same DataInputStream and seem to be OK at the moment.

Darren

haha...I had a similar experience when creating the UnOrbiter.NET (touch orbiter for .NET framework).

The problem manifested itself in a different way, but it was essentially the same problem.  I used one object(StreamReader) to read the first line (it has support for ReadLine method) to get the image size and another(Stream) to grab the rest of the stream.  I didn't pay close attention to what the StreamReader was doing to the buffer.  Lesson learned :) 

This shortcut cost me some headaches, for sure, so I feel your pain.

Yeah, sounds very similar. It was starting to drive me nuts - especially the fact that how something so simple could not be working.

Anyway, got some more time on the Android orbiter last night. Managed to tidy up a bit of code and preferences is working from the menu button.
I also added the code for the 'ANYNEWS?' check. This does not work on my server at all but I have looked at the ProxyOrbiter source and it should work where the functionality is present. Still need to look at it from a threadsafe point of view but the functionality is basically there.

What is the best way to get this to some people to test? Also, should this source go into the main linuxmce svn repo?

As a first version it should be functional. The main thing that I would like to add however is the ability to zoom in and out. I am using it on my phone which is probably the smallest android screen available (HTC Tattoo) and it is usable but would benefit from a zoom ability. This can wait till a second version though.
Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: uplink on September 08, 2010, 01:49:34 pm
As with any code, I'd like to have it in public SVN eventually. The sooner the better. If you don't have an SVN account, upload your source to filebin and post a link here, and one of us with accounts will add it to SVN.
Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: darrenmason on September 10, 2010, 12:49:59 am
No problem...

Went to do this last night but there is a still a bug that I want to work out first. Should get done over the weekend.

How do I go about getting a SVN account? I will need this to have tickets assigned to me won't I?
In the mean time, will use filebin as suggested.
Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: posde on September 10, 2010, 07:56:28 am
If the size of the source code ain't too big, just create a feature_patch ticket in trac and attach the archive to it.
Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: slampt on October 02, 2010, 01:50:46 pm
Hey Coley

I don't suppose you could upload what you have done re: n800 to SVN, I am playing with the source for the mini2440 by mihajzm but as your previous post indicates you have already started to create the deb package. Otherwise I will continue with what I am doing :)

Cheers
Slampt
Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: coley on October 02, 2010, 08:39:27 pm
slampt - what dev environment are you using? I was using QT creator and it is somewhat broken when creating anything more than a simple deb. I haven't been back to this since to get it going on scratchbox. Are the .pro files of any use to you?
-Coley.
Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: slampt on October 03, 2010, 11:34:06 am
I have been developing on my n810, I have made some slight changes too the mini2440 code to get it to work nicely on the n810 (so far so good).
Now I just need to build the deb package.  I will tidy up a few things then submit it to track so someone can add it to the svn (if they like).

Cheers
Slampt
Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: totallymaxed on October 03, 2010, 11:55:25 am
I have been developing on my n810, I have made some slight changes too the mini2440 code to get it to work nicely on the n810 (so far so good).
Now I just need to build the deb package.  I will tidy up a few things then submit it to track so someone can add it to the svn (if they like).

Cheers
Slampt


Hey thats great news :-)

I'd like to encourage everyone who is working on a version of Touch Orbiter to place their code into trac/svn as early in the process as possible - and to regularly update it after that. Also please setup a basic Wiki page for your version too. Sharing your code and experiences is really very valuable.

All the best


Andrew

Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: uplink on October 03, 2010, 04:40:42 pm
I have been developing on my n810, I have made some slight changes too the mini2440 code to get it to work nicely on the n810 (so far so good).
Now I just need to build the deb package.  I will tidy up a few things then submit it to track so someone can add it to the svn (if they like).
If you need help with the debs, please let me know. I can help.
Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: tschak909 on October 03, 2010, 06:19:28 pm
Why are you developing a proxy orbiter client on a device that we already have a native orbiter?

-Thom
Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: posde on October 03, 2010, 07:13:25 pm
Because the native orbiter has no current maintainer, and the native orbiter has the draw back of needing to be rebuild, whenever a screen is added.

At least, that could be an answer... :)
Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: slampt on October 04, 2010, 01:10:44 am
What Posde said :P

Nah, I hardly spent much time on it, I just grabbed the code that mihajzm submitted and made a few changes.
So far I find it way more responsive than the native one. Where is the source for the native one? I can't find it in SVN.

Cheers
Slampt
Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: tschak909 on October 04, 2010, 01:15:44 am
it is in src/Orbiter .. built with the -DMAEMO_NOKIA770 flag.

it's in there, because..guess what? it's a native orbiter....

-Thom
Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: totallymaxed on October 04, 2010, 07:47:28 am
Because the native orbiter has no current maintainer, and the native orbiter has the draw back of needing to be rebuild, whenever a screen is added.

At least, that could be an answer... :)

We 100% agree with that sentiment...not having to update the native Nokia Orbiter is a big reason...also if you analyse what we do with the native Orbiter its just 'bloat-ware' and completely unnecessary.

Andrew
Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: posde on October 04, 2010, 09:19:53 am
The native Orbiter has its merits for MDs. Apart from that, I don't see any advantage at the moment. This might change, once interaction other than press is implemented.

One thing the Touch Orbiter should do, is the ability to create a device for itself, i.e. the first time it gets executed, it prompts the user for the Orbiter to use, or, if none of the existing Orbiter devices fits the bill, have the option to create a new Orbiter device.
Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: uplink on October 04, 2010, 01:14:40 pm
I'm with the Touch Orbiter on this one. I rebuilt the native Orbiter for the N810 last time I added a screen and it's been broken since. For some reason, although I didn't do anything wrong, the launcher fails to start the Orbiter, even though the Orbiter itself works when started from the console.
Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: uplink on October 04, 2010, 09:59:14 pm
This just crossed my mind:

Except being a "native" Orbiter, what extra work does the native Orbiter do on the N800 compared to the Touch Orbiter? It speaks DCE. And MySQL. And pulls images from the server and sends clicks back :D And that's it. Please let me know if I'm ignorant, otherwise on this basis alone I'd rather run the "native" bit on the Core (Proxy_Orbiter) and just do the image and click bits on the tablet (Touch Orbiter).
Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: tschak909 on October 04, 2010, 10:03:05 pm
what about when we start pushing media playback to MID devices?

-Thom
Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: posde on October 04, 2010, 10:09:49 pm
Thom,

that's a whole different subject, and imho, should not be part of an Orbiter, but a third app.
Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: tschak909 on October 04, 2010, 10:12:26 pm
It circles back to what I was saying, we need a new Orbiter.

hmm.

-Thom
Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: totallymaxed on October 04, 2010, 10:55:59 pm
what about when we start pushing media playback to MID devices?

-Thom

Hmmm... well if the MID device has an uPnP renderer app we could just use that...even if the Touch Orbiter was also running on the same device. Touch Orbiter would need minimal to zero changes to make that work...we're already working on bits of this now in fact. So if your MID in the near future had a suitable app installed it would just work.

All the best


Andrew
Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: tschak909 on October 04, 2010, 11:26:06 pm
UPnP keeps proving to be the standard that everybody adopts, but nobody can agree on ANYTHING, at the expense of ever increasing complexity of plumbing... I mean seriously guys, have you actually PUT together a UPnP system?

with control points?
media renderers?

media storage units?

and USED IT?

it's a god damned nightmare!

but whatever.

-Thom
Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: totallymaxed on October 04, 2010, 11:37:59 pm
UPnP keeps proving to be the standard that everybody adopts, but nobody can agree on ANYTHING, at the expense of ever increasing complexity of plumbing... I mean seriously guys, have you actually PUT together a UPnP system?

with control points?
media renderers?

media storage units?

and USED IT?

it's a god damned nightmare!

but whatever.

-Thom

Yes we have... we are doing just that now...which is what i alluded to in my previous post. We have media renderers being controlled and we already have a basic control point working and being driven from the Orbiter.

...but this is off topic. If you want to debate the merit or lack it then lets start a new thread to debate that. This thread is meant for the discussion of topics related to implementing Touch Orbiter and various ports of that code that forum members are actively involved in.

All the best


Andrew
Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: RayBe on October 06, 2010, 04:04:44 pm
Hi all,
I came across this:
http://wiki.linuxmce.org/index.php/RoamingOrb
But i can't seem to find it in the app store nor can i find more detail about it,
has anybody more info on it? Looks great!

Br,
Raymond
Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: totallymaxed on October 06, 2010, 07:10:34 pm
Hi all,
I came across this:
http://wiki.linuxmce.org/index.php/RoamingOrb
But i can't seem to find it in the app store nor can i find more detail about it,
has anybody more info on it? Looks great!

Br,
Raymond

Foxi352 has been implementing a version of Touch Orbiter for IOS and we have been testing it here for several weeks on iPhone3g, iPhone3GS, iPhone4, iPod Touch & iPad. Foxi352 has done a great job of implementing the first true IOS Orbiter App. I think that Foxi352 plans to submit it to the App Store soon (he may have already done so in fact). So keep checking back there to see if the RoamingOrb App has appeared.


All the best


Andrew
Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: cfernandes on October 18, 2010, 01:17:46 am
HI ,


i finished to Compile Touch Orbiter to Familiar GPE

is running on my old ipaq 3650


carlos
Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: totallymaxed on October 18, 2010, 07:45:10 am
HI ,


i finished to Compile Touch Orbiter to Familiar GPE

is running on my old ipaq 3650


carlos

Hi Carlos,

Congratulations! Thats fantastic...another Touch Orbiter is born :-)

When you have some time can you please create a Wiki page describing your experiences snf how to build/compile & install the Orbiter etc and link to that page from the original Touch Orbiter page?

All the best



Andrew
Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: cfernandes on October 18, 2010, 08:24:34 pm
Hi totallymaxed .

i started the wiki on

http://wiki.linuxmce.org/index.php/Touch_Orbiter_for_the_GPE_Handhelds


carlos
Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: totallymaxed on October 18, 2010, 11:31:02 pm
Hi totallymaxed .

i started the wiki on

http://wiki.linuxmce.org/index.php/Touch_Orbiter_for_the_GPE_Handhelds


carlos

Great !

Andrew
Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: DEMNVT on October 19, 2010, 05:21:55 am
Foxi352 has done a great job of implementing the first true IOS Orbiter App. I think that Foxi352 plans to submit it to the App Store soon (he may have already done so in fact). So keep checking back there to see if the RoamingOrb App has appeared.

Hey guys, just letting you know that the RoamingOrb is now showing up on the App Store (I searched for RoamingOrb but I just tested and it shows if you search for LinuxMCE also). Just downloaded it and set it up on my lunch break. It is SUPER quick and works great on my 3GS. Works much quicker than using the WebOrbiter 2.0 in Safari.

Agree with totallymaxed here and congratulate Foxi352 on an outstanding job!

One thing I noticed is that if you do a Quick Reload Router the RoaminOrb doesn't show the reload status and also does not automagically re-connect after the reload, but I believe that's something that could be easily fixed and is only minor anyway (just need to close and re-open).
Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: tschak909 on October 19, 2010, 05:23:31 am
I know I have been outspoken with regards to Touch Orbiter; congratulations, Serge. You've done a wonderful thing.

-Thom
Title: Re: Touch Orbiter for WinCE 5.0 - Why not port it to your favourite Device/OS?
Post by: totallymaxed on October 19, 2010, 10:00:45 am
Foxi352 has done a great job of implementing the first true IOS Orbiter App. I think that Foxi352 plans to submit it to the App Store soon (he may have already done so in fact). So keep checking back there to see if the RoamingOrb App has appeared.

Hey guys, just letting you know that the RoamingOrb is now showing up on the App Store (I searched for RoamingOrb but I just tested and it shows if you search for LinuxMCE also). Just downloaded it and set it up on my lunch break. It is SUPER quick and works great on my 3GS. Works much quicker than using the WebOrbiter 2.0 in Safari.

Agree with totallymaxed here and congratulate Foxi352 on an outstanding job!

One thing I noticed is that if you do a Quick Reload Router the RoaminOrb doesn't show the reload status and also does not automagically re-connect after the reload, but I believe that's something that could be easily fixed and is only minor anyway (just need to close and re-open).

Hi DEMNVT,

I'll respond for Foxi352 as i know he is busy for next few days...

Yep Foxi352 has done a brilliant job getting RoamingOrb 1.01 out the door and I can tell you the Apple App approvals process threw us a 'curve ball' at the 11th hour...but we worked around that and 1.01 is up on the App store. A bit of a milestone in so many ways really;

- Firstly its an App many people here in the community have wanted for a long time now
- Its an App developed by a developer who is new to the community - we need many more too!
- Its an example of how if you focus in on a limited part of this project and your given the right docs and support/encouragement you can achieve a lot very quickly
- ...and lastly but definitely not least its the first small(ish) step on a path to a re-engineered model for Orbiters and building UI's for LinuxMCE (its not the only path to this...witness the great research & experimentation going on here in Clutter by tschak909 and others)

Now as ever with software development, and this is elongated by the App development process under iOS, RoamingOrb 1.01 is missing a number of refinements that are now in testing. Expanding testing beyond a small group is not easy under iOS because each iOS devices UDID has to be 'burnt' into the App before release...but I am sure there will be an updated RoamingOrb App in the near future that will incorporate a number of refinements. Having said that the 1.01 release has gone through a lot of testing by Foxi352 and my team at CHT on every current iOS device platform (iPad included) and all current iOS device releases and we believe it is incredibly stable. In fact I can honestly say that I have never seen any kind of fatal bug at all during testing.

As to speed...yes its blindingly fast compared to all other Touch Orbiters and in use I think you will quickly find it a joy to use - I do ;-)

Now in the next few weeks alongside RoamingOrb 1.01 CHT will release another iOS Orbiter, Dianemo iOS Orbiter, which is based on the RoamingOrb codebase (a later revision than 1.01 though) but with a number of enhancements and also a number of features that are only relevant to Dianemo installations. Foxi352 is the lead Dev for both versions by the way. The Dianemo iOS Orbiter (we may change its name...as it does not roll off the tongue!) will also be Free to download from the App store and will be fully compatible with both Dianemo & LinuxMCE. I will outline the Dianemo iOS Orbiters features soon here.

The source code for both RoamingOrb & Dianemo iOS Orbiter will be freely available soon too - probably in the svn but possibly via the Wiki (you'll know as son as this is decided)

All the best


Andrew
Title: Anyone here interested in Kindle App development?
Post by: totallymaxed on October 19, 2010, 03:13:12 pm
Does anyone reading this thread have any experience developing Kindle Apps? We like to here from you if you do... as we think it would be very cool to have a port of Touch Orbiter for the Kindle! Now I have no understanding of Kindle App development...it may just be impossible to create such an App for Kindle...but if anyone here has some insight into Kindle it would be great to hear from you!

All the best


Andrew