Author Topic: [Project] Special Custom Controller for DJMP2!  (Read 6323 times)

Offline DrgnSlyr

  • Chief squatting Hard
  • *
  • Posts: 24
  • Post quality +0/-0
[Project] Special Custom Controller for DJMP2!
« on: July 29, 2008, 03:26:51 PM »
Hi,

Hello all of u, im new around here, and i hope to got to know u people better ^_^,
---

Let's talk about the project, this is an idea of making an external controller for the PSP which suits best to play:

DJMax Portable: Emotional sense & DJMax Portable 2: Your own Miracle, the well known musical rhythm action game.



     



For those who don't know the game yet, it's one of the most amazing PSP games, where u play in a place of DJ Mixer
and start mixing the songs by pressing the buttons in order as the notes falling down, awesome tracks, lot of fun.
if u still didn't get the game idea it's almost same as Guitar hero/Betamani with different interface/controls.

--------


Im still in the very early stages of the project, it's not that long hard work thou, but im still gathering requirements
and planning the whole thing, I actually need little help with somethings.


now this is the controller layout:

*this is how the real measurements going to be*

42cm*14.5cm


OK, and these are the requirments:

1- Arcade/Action buttons - I used a 30 mm buttons in the layout.



2- Portable Speaker(s) - Im using these.



3- CD Motor/Spinner - Im using my old damaged PSX's, it looks almost like this one.
*but has only 2 wires (Power, GND)



4- a blank or any unused CD/DVD



5- and of course a custom box of wood or whatever u want to build it up from. I didn't make mine yet. but i made a
quick design using photoshop to picture things out.



and yes, the CD is going to be functioning as the analog stick, except i have absolutely no idea how to make this.
this will make u spin a real CD when it commands in the game, instead of spinning a stick  :victory:

Offline DrgnSlyr

  • Chief squatting Hard
  • *
  • Posts: 24
  • Post quality +0/-0
Re: [Project] Special Custom Controller for DJMP2!
« Reply #1 on: July 29, 2008, 04:03:20 PM »
Now let's get to more details, i'll try to write down everything in my mind now, so u may catch things i missed.

1. - for this project it needs to wire out 9 buttons w/ analog stick, simply all buttons except the home bar buttons,
(Down) button from the D-Pad as it's not used in this game (by default), and the power swtich *if that counts*

2. - The buttons layout idea is taken from Betamani controller style, with this layout u can easily access the D-Pad and Buttons with ur first 2 or 3 (if u'd like to) fingers, and for the L,R triggers the thumb is ready to hold'em all day without trouble.

3. - Having loud, quality, speakers on ur controller is brilliant as u r playing a DJ GAME! (powered from battery, or the same AC adapter for PSP charging)

4. - CD spinner is going to be powered from the Charging AC Adapter too, 5V, that's when u wan't to just listen to tracks
or watch the video clips, the CD is going to be rotating during that, a switch connected to it will give us the option to
turn it off and spin it manually for playing.


5- Im thinking of making a holder for the PSP too, so it got to be right in front of u on the controller it self, that's going
to make it easier to connect the speakers to it, as well as paralleling the AC adapter to the PSP-Speakers-CD Motor.


6- As u can see the controller isn't compact and hard to use it as portable with the psp, so, I'm thinking of dividing
the controller box so that the CD motor and speakers can be removed (u'll not be able to rotate analog like this thou) when u don't want them and then join them back using any kind of connector available.


-------------

What help do i need.

1. I have no freakin idea how to make the Analog directions sping when I spin the CD, need a good ideas.

2. I'm noob when it comes about power n' stuff, want's to make sure paralleling the PSP charging adapter to 3 devices is possible or ?

3. Finally I feel missing alot of things, need suggestions, & other people thoughts.

Offline Blizzrad

  • Chaos Lover
  • *
  • Posts: 267
  • Post quality +0/-0
Re: [Project] Special Custom Controller for DJMP2!
« Reply #2 on: July 30, 2008, 09:19:17 AM »
This looks like a cool project you have started.  :cool:
I have seen custom Beatmania DJ controllers that use quadrature rotary encoders to sense the turntables direction of movement (like the official controllers), but they are not simple to build. It all depends on how the stick is required to function within the game. If it is only required to rotate in a clockwise or counterclockwise circle then you might be able to use a simple mechanical gearing system from the axle to rotate an analog joystick. Could you explain a little more about the motor? Is there a part of the game that requires continuous rapid rotation of the analog stick? I have never played any of these games before, so I am not sure how all the controls and game modes work.

These pictures show more clearly the grounding method I was trying to describe in the other thread, this is where I grounded the analog stick in the PSP.




Offline gr8npwrfl

  • Acid Modder
  • *
  • Posts: 582
  • Post quality +0/-0
  • Gender: Male
  • Ignorance is not fatal it can be cured
Re: [Project] Special Custom Controller for DJMP2!
« Reply #3 on: July 30, 2008, 12:30:40 PM »
I can tell you how to do just about everything.

A few questions.

1. Are you going to power the cd motor so it spins ?
2. Do you want to be able to manually spin the cd left and right like DJ's spin records ?
3. Do you use and analogue stick in the game so that the amount you push the stick varies the feedback
    to the game ?

If you wire this system to a connector like the ipod connector then you can plug this in when
you need it and plug in a joystick when you want to play other games.

That way you are not putting any electronics in the PSP just connecting the internal wires to a connector.

Your options in the future would then be only what you come up with and you do not have to go back into the
PSP to make changes.

Yes you can plug the PSP power supply into a jack on your box and then have a jumper cable to jumper back
into the PSP. You can also get a dash mount for your PSP and mount the mount to your BOX so it holds
the PSP in position as a display.

The IPOD docking connector is 30 pins. I have been thinking about doing three of them on a PSP.

1. From the UMD drive so it can be external
2. From the LCD display so I can do video that other people are working on
3. From all the internal buttons and joystick so I can do external rumble pad


Offline DrgnSlyr

  • Chief squatting Hard
  • *
  • Posts: 24
  • Post quality +0/-0
Re: [Project] Special Custom Controller for DJMP2!
« Reply #4 on: July 30, 2008, 02:08:11 PM »
This looks like a cool project you have started.  :cool:
I have seen custom Beatmania DJ controllers that use quadrature rotary encoders to sense the turntables direction of movement (like the official controllers), but they are not simple to build. It all depends on how the stick is required to function within the game. If it is only required to rotate in a clockwise or counterclockwise circle then you might be able to use a simple mechanical gearing system from the axle to rotate an analog joystick. Could you explain a little more about the motor? Is there a part of the game that requires continuous rapid rotation of the analog stick? I have never played any of these games before, so I am not sure how all the controls and game modes work.

These pictures show more clearly the grounding method I was trying to describe in the other thread, this is where I grounded the analog stick in the PSP.
- about the analogue movement that the game needs, i've made a test just now when i saw ur replay, well .. it
turned out simple .. VERY simple, the game basically accepts any random directions from analog to register, tried the following:
* Moving in Y axis only, accepts correctly.
* Moving in X axis only, accepts correctly.
* CW, CCW movment and mixing them, yet accepts correctly.
the only thing matters is the movement timing (start movement, stop movement) in order to correctly complete the task.
do u have any idea in mind how to make the CD function as analog stick?

- Don't bother with the motor, i'm mainly using it to hold the CD, and of course i need to rotate it manually when playing bcuz timing is needed, i can't let it spinning all the time,
but i thought of connecting a power and on\off switch to turn it on while listing to music (the game has got OST mode it self) and the analog stick movement doesn't effect anything there.

- Oh, thnx, i didn't thought it's that simple to ground, it saves solder for u too :P



I can tell you how to do just about everything.

A few questions.

1. Are you going to power the cd motor so it spins ?
2. Do you want to be able to manually spin the cd left and right like DJ's spin records ?
3. Do you use and analogue stick in the game so that the amount you push the stick varies the feedback
    to the game ?

The IPOD docking connector is 30 pins. I have been thinking about doing three of them on a PSP.

1. From the UMD drive so it can be external
2. From the LCD display so I can do video that other people are working on
3. From all the internal buttons and joystick so I can do external rumble pad

- Please tell me if u have idea to make the CD function as the analog stick.

- all ur questions answered above, and yea i want to spin the CD manually when playing.

thanks.

WOW, ur PSP's going to be all wired like spiders web from the inside, cool ideas, just wondering why do u need to take UMD drive out? make space? what for for example?
and wondering also if the drive is disconnected, will the PSP work alright?

Offline Tri-edge

  • I found Nemo!!
  • Around the block
  • *
  • Posts: 2381
  • Post quality +4/-0
  • Gender: Male
  • Azure knight
Re: [Project] Special Custom Controller for DJMP2!
« Reply #5 on: July 30, 2008, 02:49:08 PM »
you might need to take the umd drive out for space but that's it. your psp will still work without it.  and maybe you could wire one of those ps2 wheel controllers to make the cd spinner

Offline Blizzrad

  • Chaos Lover
  • *
  • Posts: 267
  • Post quality +0/-0
Re: [Project] Special Custom Controller for DJMP2!
« Reply #6 on: July 31, 2008, 05:48:59 PM »
...the game basically accepts any random directions from analog to register...
...the only thing matters is the movement timing (start movement, stop movement) in order to correctly complete the task.
do u have any idea in mind how to make the CD function as analog stick?

That makes everything much simpler. So if I understand correctly, the controller requires:

  • The CD to be able to spin freely in either direction.
  • Any rotation of the turntable (CD) to simulate a directional movement (in any direction) of the PSP analog stick.
  • Directional movement of the analog stick to be active whenever the turntable is in motion.
  • No movement of the analog stick when the turntable is stopped (stick is centered).
  • A switchable mode to activate the spindle motor during music playback.

I have never built a rotating controller like this, but I think you should be able to do all of the above with a rotary encoder and microcontroller. The microcontroller can be programmed to send a pulse to one of the X/Y axis contacts on the analog stick when a change in the turntable position is detected by the rotary encoder. Because direction of movement and amount of rotation are not important, the rotary encoder would only be needed to sense a change of any kind in the turntables position. The microcontroller could be used to set the sensitivity of movement detection, and turn the CD spindle motor on while disabling the pulses going to the analog stick. A correct amount of resistance would also need to be applied to the pulses to avoid throwing off the calibration of the analog stick. Just one possibility. 

Offline gr8npwrfl

  • Acid Modder
  • *
  • Posts: 582
  • Post quality +0/-0
  • Gender: Male
  • Ignorance is not fatal it can be cured
Re: [Project] Special Custom Controller for DJMP2!
« Reply #7 on: July 31, 2008, 09:13:00 PM »
You can find miniature encoders at surplus sites.

They have two outputs most of the time.

One output is high for clockwise and low for counterclockwise. It just tells you which way the
cd is spinning.

The other output is a square wave pulse. It normally is hooked to a counter. The direction
output is normally tied to up/down count.

So when you spin one direction it counts up, and when you spin the other direction it counts
down.

So if you divide the cd circle into quadrants, you can take the max count and min count to a
simple 8 pin Pic cpu and have it generate the x and y analogue values.

Just like a dj when he works the turntable if you move back and forth in small movements
the x and y would toggle back and forth.

This should give you the effect you are looking for.

Or if you want more like the analogue stick, just take an analogue stick from a PS2 you could
wire it in place. Glue a plastic shoulder to the joystick stub and then when you tip the CD it
will work identical to the original joystick. This would require no software and no computer chip
to work.


Offline DrgnSlyr

  • Chief squatting Hard
  • *
  • Posts: 24
  • Post quality +0/-0
Re: [Project] Special Custom Controller for DJMP2!
« Reply #8 on: August 02, 2008, 11:31:05 AM »
That makes everything much simpler. So if I understand correctly, the controller requires:

  • The CD to be able to spin freely in either direction.
  • Any rotation of the turntable (CD) to simulate a directional movement (in any direction) of the PSP analog stick.
  • Directional movement of the analog stick to be active whenever the turntable is in motion.
  • No movement of the analog stick when the turntable is stopped (stick is centered).
  • A switchable mode to activate the spindle motor during music playback.

I have never built a rotating controller like this, but I think you should be able to do all of the above with a rotary encoder and microcontroller. The microcontroller can be programmed to send a pulse to one of the X/Y axis contacts on the analog stick when a change in the turntable position is detected by the rotary encoder. Because direction of movement and amount of rotation are not important, the rotary encoder would only be needed to sense a change of any kind in the turntables position. The microcontroller could be used to set the sensitivity of movement detection, and turn the CD spindle motor on while disabling the pulses going to the analog stick. A correct amount of resistance would also need to be applied to the pulses to avoid throwing off the calibration of the analog stick. Just one possibility. 

yup that's exactly how it should work.

I see, it's very clear to me, but i need 2 days to read and learn about this Rotary Encoder
& Micro controller plus some extra time to learn programming that, since i never did,
except if u can hook me up to a good/detailed explanation/information about them, i'm
interested to learn, and thank you   
:yess:

what's the voltage value that suppose to go for the analog stick? 3.3v? or 5.0v?

You can find miniature encoders at surplus sites.

They have two outputs most of the time.

One output is high for clockwise and low for counterclockwise. It just tells you which way the
cd is spinning.

The other output is a square wave pulse. It normally is hooked to a counter. The direction
output is normally tied to up/down count.

So when you spin one direction it counts up, and when you spin the other direction it counts
down.

So if you divide the cd circle into quadrants, you can take the max count and min count to a
simple 8 pin Pic cpu and have it generate the x and y analogue values.

Just like a dj when he works the turntable if you move back and forth in small movements
the x and y would toggle back and forth.

This should give you the effect you are looking for.

If i understood this correctly then the Miniature encoder will give the following results when connected to the Motor or CD directly:
* Let's say
- High is RightDirection,
- Low is LeftDirection,
- Up count is UP,
- Down count is DWN,

1. Spinning CD CW direction = RightDirection + UP
2. Spinning CD CCW direction = Left Direction + DWN

right? .. hmm, just this 2 signals are enough to do the task that the game required, thou
u have to toggle spinning CW,CCW fast, otherwise if u just went CW for a whole lap, it'll
be counted as holding the direction (Right+Up) ....

Correct me if im wrong, and could you plz link me to page where i can read about this
encoders types/functionings.

I may try it if i found one .. do they sell it in normal electronics shops?

Offline DrgnSlyr

  • Chief squatting Hard
  • *
  • Posts: 24
  • Post quality +0/-0
Re: [Project] Special Custom Controller for DJMP2!
« Reply #9 on: August 02, 2008, 12:58:31 PM »
Quote
This would require no software and no computer chip to work.

I'm thinking of doing something like that, actually I'm giving it a try now but stuck with something,

- Basically I'll glue a CD under the Motor, drill holes on the CD, and glue the analog contacts like this:

Red is signal, Black is Ground
- Then, glue a piece of stripped wire on the CD im going to rotate:


- And u'll have all the directions (Right, Up-Right, Up, Up-Left, Left, Down-Left, Down, Down-Right) when spinning the CD:




I hope that'll work, I have to leave a small space between the 2 CDs for neutral position, and when rotating apply some press until they contact.

---


The only thing im missing here is .. how the analog function?, A1, A2, A3, & ground? which do i have to connect to which? and which signal i will get?

Offline gr8npwrfl

  • Acid Modder
  • *
  • Posts: 582
  • Post quality +0/-0
  • Gender: Male
  • Ignorance is not fatal it can be cured
Re: [Project] Special Custom Controller for DJMP2!
« Reply #10 on: August 02, 2008, 01:12:25 PM »
If you look at the post about joystick on the headset post.

You could take a headset remote and hook your cd control
to it. That way you do not mod the inside of the PSP

Will check for encoders on ebay and see if they have any that will work


 

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