Author Topic: touchscreen brainstorming  (Read 15267 times)

Offline kink192

  • Acid Modder
  • *
  • Posts: 916
  • Post quality +1/-0
  • Gender: Male
Re: touchscreen brainstorming
« Reply #30 on: June 11, 2008, 08:39:31 AM »
from what ive accumulated, this isnt going to work without cfw, but the blueprints are rght here...why hasnt anyone done it yet? lol we have PIC programmers, im sure we can get software coders, this is more than possible.

p.s. no more off topic stuff please...
It's been a long time

Offline *FuFa

  • learn2/spell/
  • Millennium Poster
  • *
  • Posts: 1316
  • Post quality +0/-0
  • Gender: Male
  • Spam King Barfday Boy¯\(°_o)/¯ ¯\(°_o)/¯ ¯\(°_o)/¯
Re: touchscreen brainstorming
« Reply #31 on: June 11, 2008, 09:03:33 AM »
All we need is the plugin that makes the analog stick work as d-pad, I had that for a while running on mine when my Analog was being a :censored:. and Bam, touch the left or right sides and navigating through a xmb has never been so much fun.

Have no shame in being kindly and gentle, but if the time comes in the time of your life to kill, kill and have no regret. In the time of your life, live so that, in that wonderous time you shall not add to the misery and sorrow of the world, but shall smile to the infinite delight and mystery of it.

Offline pax

  • CyberPyrot WannaBe
  • *
  • Posts: 303
  • Post quality +0/-0
  • Gender: Male
  • Sig and Avatar by INDYCHASE
    • GAMING LAGOON - Join now for free prizes
Re: touchscreen brainstorming
« Reply #32 on: June 11, 2008, 09:55:05 AM »
Here is the plugin to use the analog stick in XMB. It's called joysens v1.3 it only works in 3.71m33 or 1.50 OFW.

http://www.psp-hacks.com/file/1322

Edit the following files inside the ms0:/SEPLUGINS/ folder (create them if they don't exist):
- game.txt for use in UMD games
- game150.txt for homebrew loaded from the GAME150 folder (or GAME folder in 1.5 kernel mode)
- game3xx.txt for homebrew loaded from the GAME3xx folder (or GAME folder in 3.xx kernel mode) - replace xx by your firmware minor version
- pops.txt for games played with POPS
- vsh.txt for VSH/XMB
to at least contain the following line:
ms0:/SEPLUGINS/joysens.prx

Guppy > Chief Squatting Hard > 1/2 Pint > Fart Sniffer > Tone Deff > Motor Mouth > Allumnist > King of the Wii-tards > Who Farted > Poker Champ > Chaos Lover > Bomb Maker > CyberPyrot Wannabe

Offline *FuFa

  • learn2/spell/
  • Millennium Poster
  • *
  • Posts: 1316
  • Post quality +0/-0
  • Gender: Male
  • Spam King Barfday Boy¯\(°_o)/¯ ¯\(°_o)/¯ ¯\(°_o)/¯
Re: touchscreen brainstorming
« Reply #33 on: June 11, 2008, 10:53:00 AM »
Here is the plugin to use the analog stick in XMB. It's called joysens v1.3 it only works in 3.71m33 or 1.50 OFW.

http://www.psp-hacks.com/file/1322

Edit the following files inside the ms0:/SEPLUGINS/ folder (create them if they don't exist):
- game.txt for use in UMD games
- game150.txt for homebrew loaded from the GAME150 folder (or GAME folder in 1.5 kernel mode)
- game3xx.txt for homebrew loaded from the GAME3xx folder (or GAME folder in 3.xx kernel mode) - replace xx by your firmware minor version
- pops.txt for games played with POPS
- vsh.txt for VSH/XMB
to at least contain the following line:
ms0:/SEPLUGINS/joysens.prx

Yeah that is exactly the one I was talking about, thank you : )

Have no shame in being kindly and gentle, but if the time comes in the time of your life to kill, kill and have no regret. In the time of your life, live so that, in that wonderous time you shall not add to the misery and sorrow of the world, but shall smile to the infinite delight and mystery of it.

Offline platinumc

  • E = MC²
  • *
  • Posts: 317
  • Post quality +0/-0
Re: touchscreen brainstorming
« Reply #34 on: June 11, 2008, 11:26:55 AM »
headache

i just had to reread this topic lol :D...


and i still dont get the joystick touchpad thing lol :D


Offline SYSTEM aka (Cyberpyrot)

  • Site Founder
  • Acidmods Alumni
  • Around the block
  • *
  • Posts: 4091
  • Post quality +3/-0
  • Gender: Male
Re: touchscreen brainstorming
« Reply #35 on: June 11, 2008, 05:13:01 PM »
I created a microcontroler a while back the converted resistence to pulse waves I will add it to the hive board fot those who want psp touch..

Offline Ch4rL13

  • R4z3R
  • Acid Modder
  • *
  • Posts: 869
  • Post quality +0/-0
  • Gender: Male
    • R4z3R Gaming
Re: touchscreen brainstorming
« Reply #36 on: June 11, 2008, 05:21:47 PM »
i do not understand the joystick thing either, but using the micro-controller make this much more simple?


Offline *FuFa

  • learn2/spell/
  • Millennium Poster
  • *
  • Posts: 1316
  • Post quality +0/-0
  • Gender: Male
  • Spam King Barfday Boy¯\(°_o)/¯ ¯\(°_o)/¯ ¯\(°_o)/¯
Re: touchscreen brainstorming
« Reply #37 on: June 11, 2008, 06:03:21 PM »
i do not understand the joystick thing either, but using the micro-controller make this much more simple?

It will make it work as a D-Pad, that's the only reason you would need a PIC.

Also if you don't want to understand that a touch screen and analog stick work the same then don't expect any more help from me, this is getting rediclious

Have no shame in being kindly and gentle, but if the time comes in the time of your life to kill, kill and have no regret. In the time of your life, live so that, in that wonderous time you shall not add to the misery and sorrow of the world, but shall smile to the infinite delight and mystery of it.

Offline Gamer4life

  • Granny Spanker
  • *
  • Posts: 483
  • Post quality +0/-0
  • Gender: Male
  • I will be a Gamer until i die.
    • my own site please join and be active
Re: touchscreen brainstorming
« Reply #38 on: June 11, 2008, 07:23:53 PM »
ok everything that has been said so far has gone over my head i dont think i can or will be any help dangit :cry2:  man i so wanted 2 help

98% of teenage population has tried smoking pot if you're part of the 2% who hasn't copy & paste this into your sig

Offline sprocketme2

  • Motor Mouth
  • *
  • Posts: 99
  • Post quality +0/-0
Re: touchscreen brainstorming
« Reply #39 on: June 11, 2008, 08:46:18 PM »
Personally I dont see any reason to do it using the joystick setup. Its more complicated, less flexable, and you have to sacrifice your joystick (probably). Both setups are going to require similar hardware so why not go ahead and use the (unused ) serial port. The only advantage of using the joystick setup is that the touchscreen will have a familiar interface for homebrew devs. As a final note, I strongly suggest using a PIC for Analog to digital conversion because it will be smaller than a touchscreen controller, simpler setup, cheaper, more available, and wont have a ton of uneeded features.

I would like to help on this but I have no experience with anything here so best of luck. If it turns out well, I will be happy to buy a pic/other supplies.
My flickr profile: http://www.flickr.com/photos/47542734@N06/
Contains all my photos for public viewing

Offline anthonyta

  • MFH
  • Granny Spanker
  • *
  • Posts: 422
  • Post quality +1/-0
  • Gender: Male
Re: touchscreen brainstorming
« Reply #40 on: June 11, 2008, 09:03:57 PM »
it would be pretty cool just for the internet browser. even better if you can make the X button work through the touch screen along with the directionals from the analog. windows  or iphone set up would be kinda fun to

Offline sprocketme2

  • Motor Mouth
  • *
  • Posts: 99
  • Post quality +0/-0
Re: touchscreen brainstorming
« Reply #41 on: June 11, 2008, 09:13:10 PM »
From what I have found. ADC is not terrably difficult using a pic. Just some trial and error maybe.
http://www.tigoe.net/pcomp/pic/pic-analog.shtml This article covers analog to digital conversion programing for pic. I also looked for a suitable pic for the job and the PIC16F716 seems like the most suitable.

PIC16F716:
I/O pins: 13
8 bit A/D channels: 4
Timers 8bit/16bit: 2/1
Vdd Range: 2.0V-5.5V

« Last Edit: June 11, 2008, 09:19:58 PM by sprocketme2 »
My flickr profile: http://www.flickr.com/photos/47542734@N06/
Contains all my photos for public viewing

Offline Blizzrad

  • Chaos Lover
  • *
  • Posts: 267
  • Post quality +0/-0
Re: touchscreen brainstorming
« Reply #42 on: June 12, 2008, 12:40:09 AM »
ok everything that has been said so far has gone over my head i dont think i can or will be any help dangit :cry2:  man i so wanted 2 help

There are a few different ideas being thrown around in this thread, so I can understand why you might be getting confused (I'm a little confused myself). Basically, as *Fufa said, a resistive touch panel operates much like the analog stick on the PSP. A steady voltage is sent through the X and Y axis, and the position of a joystick or the coordinates of a stylus can be determined by how much resistance is then placed on each axis by whatever mechanism is being used (potentiometers in the analog stick, resistive/conductive layers in the panel). This pdf file offers a good explanation of how these panels work. The panel does not output coordinate data, only an analog voltage, so a controller is needed to convert this resistance to digital X/Y coordinate data which can be used by the software to move a cursor or press a virtual button in the OSD. The different methods of handling the A/D conversion and connection with the PSP are being discussed.

A touch interface could have really cool applications for future homebrew software, but I'm not really seeing the advantage of incorporating it into the XMB/browser/other existing software. The browsers cursor control is relative not absolute, so there wouldn't be the "look and touch" interface that makes a touch screen intuitive and practical. Also, because there are no on-screen buttons, the stylus would need to be used left handed so that the right hand could still control the face buttons (also making the D-pad/analog stick and R-trigger unavailable).

Personally I dont see any reason to do it using the joystick setup. Its more complicated, less flexable, and you have to sacrifice your joystick (probably). Both setups are going to require similar hardware so why not go ahead and use the (unused ) serial port. The only advantage of using the joystick setup is that the touchscreen will have a familiar interface for homebrew devs...

I am probably missing something here, but wouldn't the joystick setup be the simplest of all? Since the A/D conversions for X/Y positions are already being done with the joystick, couldn't making the contacts switchable to the touch panel for a direct connection as *Fufa suggested cut out the need for an external controller? If the panel is being used with specifically designed homebrew programs, couldn't the values returned from the panel be calibrated in software?

The big advantage I see to using the serial port is that it would make the panel an easily removable peripheral which could be placed over top the PSPs case (eliminating the need for case modding). The serial controller board Hantouch makes for this panel looks pretty compact, it would not fit internally but it could be used externally without being too awkward (though a PIC based solution could probably be made smaller and would definitely be more interesting). I'm guessing the Hantouch board would also require some level shifting to work with the PSPs non-standard serial port.



 
« Last Edit: January 16, 2009, 08:49:36 PM by Blizzrad »

Offline Gamer4life

  • Granny Spanker
  • *
  • Posts: 483
  • Post quality +0/-0
  • Gender: Male
  • I will be a Gamer until i die.
    • my own site please join and be active
Re: touchscreen brainstorming
« Reply #43 on: June 12, 2008, 12:48:23 AM »
ok thanks blizzrad it is starting 2 make a tiny bit of sense i have a really inept sense or ability 2 learn stuff very fast so i will continue 2 read this thread and hopefully fully undestand it by the end i hope this gets made it would be cool and if it does sony MIGHT put it in the psp in the future (notice i said might)

98% of teenage population has tried smoking pot if you're part of the 2% who hasn't copy & paste this into your sig

Offline sprocketme2

  • Motor Mouth
  • *
  • Posts: 99
  • Post quality +0/-0
Re: touchscreen brainstorming
« Reply #44 on: June 12, 2008, 09:04:15 AM »
I am probably missing something here, but wouldn't the joystick setup be the simplest of all? Since the A/D conversions for X/Y positions are already being done with the joystick, couldn't making the contacts switchable to the touch panel for a direct connection as *Fufa suggested cut out the need for an external controller? If the panel is being used with specifically designed homebrew programs, couldn't the resistance being read from the panel be calibrated in the software?

The big advantage I see to using the serial port is that it would make the panel an easily removable peripheral which could be placed over top the PSPs case (eliminating the need for case modding). The serial controller board Hantouch makes for this panel looks pretty compact, it would not fit internally but it could be used externally without being too awkward (though a PIC based solution could probably be made smaller and would definitely be more interesting). I'm guessing the Hantouch board would also require something like a MAX3232 serial line converter to work with the PSPs non-standard serial port.

Yes you are correct. I guess I had a misunderstanding of how the existing joystick worked. Partially because I didnt realise the joystick input is natively converted to digital input by the psp.

it would be pretty cool just for the internet browser. even better if you can make the X button work through the touch screen along with the directionals from the analog. windows  or iphone set up would be kinda fun to

I dought this will ever work because tapping the touch panel at all could be easily mistaken by the software as a 'X' click and there will be no way of distinguishing between click and the start of a drag. (unless the software waits to see if you drag) Then the reaction time will be very slow.

I dont know how the touch panel will interface with the web browser at all. The web browser's cursur does not move to the exact X and Y coordinates of the joystick. Instead It continually moves in the direction of the joystick compared to its origin.

Heres an example:
If you put the psp joystick to X=100 Y=100 the browser's cursor will continually go at a 45 degree heading from its origional coordinates. Same prinipal will occur with the touch panel. When touched at the top right corner (I assume) the cursor will continually move at a 45 degree heading from its origional coordinates, rather than jumping to the spot directly below your finger. So major firmware changes would have to be implemented for the touchscreen to work with the browser.

On a final note, does anybody have pinouts of the 4 analog pads that the joystick rests on?
My flickr profile: http://www.flickr.com/photos/47542734@N06/
Contains all my photos for public viewing

Offline Blizzrad

  • Chaos Lover
  • *
  • Posts: 267
  • Post quality +0/-0
Re: touchscreen brainstorming
« Reply #45 on: June 12, 2008, 12:44:44 PM »
On a final note, does anybody have pinouts of the 4 analog pads that the joystick rests on?

  [[ ]  ]  =  GND
[  [ ]]    =  -X
  [[ ]]    =   +
[  [ ]]    =  -Y

Electro also made some nice diagrams of the PSP analog connections which can be found in his L2/R2 tutorial.

Offline gr8npwrfl

  • Acid Modder
  • *
  • Posts: 582
  • Post quality +0/-0
  • Gender: Male
  • Ignorance is not fatal it can be cured
Re: touchscreen brainstorming
« Reply #46 on: June 12, 2008, 09:40:17 PM »
If you fed the resistance into a pic you could set the screen as the center of origin.

You could then scale the output so that it would work the same as the analogue joystick. You could
also feed the buttons so that you could use touch to control up - down - right - left. If you started at
the bottom of the screen and slid your finder up, then you could activate the up key. Same as touching
the top and sliding down would touch the down or x key.

You could switch modes and run just digital, just analogue or both at the same time.

Then the navigation would operate just like the fake did on his video.
 


Offline sprocketme2

  • Motor Mouth
  • *
  • Posts: 99
  • Post quality +0/-0
Re: touchscreen brainstorming
« Reply #47 on: June 12, 2008, 09:43:30 PM »
  [[ ]  ]  =  GND
[  [ ]]    =  -X
  [[ ]]    =   +
[  [ ]]    =  -Y

Electro also made some nice diagrams of the PSP analog connections which can be found in his L2/R2 tutorial.

Thank you, your  diagram is pretty, and helpful. On the sparkfun electronics touch panel there is X1 X2 as well as Y1 and Y2, so which goes where of the 4 analog pads?

Im still having my doughts about connecting the touch panel to the joystick pads. The psp converts the resistance created by pots inside the joystick R1ohms<X<R2ohms and R3ohms<Y<R4ohms but the resistance range from the touch panel will be different 400ohms<X<1200ohms and 100ohms<Y<700ohms That stock resistance range used for ADC may be incompatable with the touch panel resistance range.

You could then scale the output so that it would work the same as the analogue joystick. You could
also feed the buttons so that you could use touch to control up - down - right - left. If you started at
the bottom of the screen and slid your finder up, then you could activate the up key. Same as touching
the top and sliding down would touch the down or x key.

You could switch modes and run just digital, just analogue or both at the same time.

Then the navigation would operate just like the fake did on his video.

I decided to contribute the only way I know how. Ive written a small homebrew app that may interpret analog input as relative (like psp web browser) or absolute (what you would want for touch panel) I will release source for free to anybody who pm's me as long as I recieve credit.
Download Link (release notes included)
Heres a quick vid of the app to understand how it works more.
http://www.youtube.com/watch?v=KBZjOtezVco
My flickr profile: http://www.flickr.com/photos/47542734@N06/
Contains all my photos for public viewing

Offline gr8npwrfl

  • Acid Modder
  • *
  • Posts: 582
  • Post quality +0/-0
  • Gender: Male
  • Ignorance is not fatal it can be cured
Re: touchscreen brainstorming
« Reply #48 on: June 12, 2008, 10:01:19 PM »
The resistance of the joystick pads are series connections. If the pic simulates the voltage created by the change of resistance, you then feed that voltage to the PSP. That way no matter what the resistance of the touch pad is, the pic scales it and sends the proper voltage to the PSP.

The problem is the joystck is a cumulative device. That is if you move it a small amount to the right the cursor moves slowly to the right. But as long as you hold the joytick the cursor continues to move.

The touch pad is and absolute device. You want the cursor to move to the point you are touching and then stop. Every time you touch that point that is where you want the cursor to stop.

It would be interesting what we would do for a translation. Would be be changing a touch pad from an absolute device to a cumulative device ???

Then how would it behave ?

How would you want it to behave ?

would touching the touchpad further towards the edges only make the cursor react faster ?


Offline *FuFa

  • learn2/spell/
  • Millennium Poster
  • *
  • Posts: 1316
  • Post quality +0/-0
  • Gender: Male
  • Spam King Barfday Boy¯\(°_o)/¯ ¯\(°_o)/¯ ¯\(°_o)/¯
Re: touchscreen brainstorming
« Reply #49 on: June 13, 2008, 05:08:17 AM »
I decided to contribute the only way I know how. Ive written a small homebrew app that may interpret analog input as relative (like psp web browser) or absolute (what you would want for touch panel) I will release source for free to anybody who pm's me as long as I recieve credit.
Download Link (release notes included)
Heres a quick vid of the app to understand how it works more.
http://www.youtube.com/watch?v=KBZjOtezVco

Excellent : ) I knew that the PSP could read out the exact spot where the Analog Stick is, but it's even nicer to see something working that way on the PSP, good work, now you will only need to get it working in the XMB/Web Browser.

Have no shame in being kindly and gentle, but if the time comes in the time of your life to kill, kill and have no regret. In the time of your life, live so that, in that wonderous time you shall not add to the misery and sorrow of the world, but shall smile to the infinite delight and mystery of it.

VoX

  • Guest
Re: touchscreen brainstorming
« Reply #50 on: June 13, 2008, 05:56:38 AM »
Nice work Sprocketme2 on the application. The behaviour will be a major problem unless we can program the PIC to our need's, I've being thinking about thresholds working outwards from the center of the screen....

Offline Blizzrad

  • Chaos Lover
  • *
  • Posts: 267
  • Post quality +0/-0
Re: touchscreen brainstorming
« Reply #51 on: June 13, 2008, 07:23:48 AM »
Awesome app sprocketme2, that is an excellent demonstration of the cursor response needed for the touch panel. I never thought much of the PSP touchscreen idea before, but now that I think about it more, the PSPs screen size/dimentions would be well suited for an on-screen keyboard text entry app, and homebrew games could also make good use of it. Do you think it is feasible for your app to be worked into a plugin enabling absolute cursor positioning in the browser?

The touch pad is and absolute device. You want the cursor to move to the point you are touching and then stop. Every time you touch that point that is where you want the cursor to stop.

It would be interesting what we would do for a translation. Would be be changing a touch pad from an absolute device to a cumulative device ???

I think a touch panel would be much better suited for use with homebrew applications intended for absolute cursor positioning. It seems like any hardware method of adapting the touch panel for use with unintended software is still going to result in a control scheme which is more awkward and difficult to use than the default stick/d-pad. Using a stylus for cursor movements also takes one hand away from the buttons (most people will want to use their right hand) so outside of homebrew applications, (where virtual on-screen buttons can be used instead) this would further complicate the control input. While this type of translating would make for an interesting project, I don't think it would ultimately prove very useful, but maybe I'm just not thinking hard enough.

...On the sparkfun electronics touch panel there is X1 X2 as well as Y1 and Y2, so which goes where of the 4 analog pads?

I'm guessing something like X1 and Y1 = the + contact, while X2 = -X and Y2 = -Y. The coordinates could then be interpreted from the resistance values read from -X and -Y, though this would be quite different from how the analog stick works (the circuit would be open by default rather than at a constant resistance). The analog stick and touch screen would definitely need to be isolated from each other by a switch, and the software in use would have to set the calibration for the analog inputs accordingly. You could certainly be right about the resistance range being an issue, if the ranges cannot be properly calibrated by the software, then this method will not work without a PIC to scale the output as gr8npwrfl said.

A serial interface might be the better approach due to the ease with which it can be used as a peripheral, and set up by just about anyone. Making a touch-panel useful ultimately relies on having the software to use it with; and the more accessible the hardware, the more people will want to use it and program for it.       
« Last Edit: June 14, 2008, 09:49:46 AM by Blizzrad »

 

SMF spam blocked by CleanTalk
SimplePortal 2.3.5 © 2008-2012, SimplePortal