Old 06-13-2009, 12:37 PM   #1
Fergo
Human being with feelings
 
Fergo's Avatar
 
Join Date: Mar 2009
Location: Curitiba - Brazil
Posts: 371
Default [Application] - Fergo JoystickMIDI

Hello everybody!

I'm creating this topic to announce an application I'm working on: Fergo JoystickMIDI. As the name suggests, it is a virtual MIDI interface where you can send MIDI commands to any device connected to the computer using a game controller. It's similar Rejoice, but Rejoice didn't have some features that I thought were important, so I decided to code my own (and Rejoice development seems to be stopped =/).


At the current release, Fergo Joystick MIDI can send MIDI commands (CC, NoteOn and NoteOff) and virtual key presses from any game controller connected to the computer or over a network. You can also use multiple controllers at the same time. Here's a more detailed feature list:
  • Send MIDI commands and virtual keystrokes using game controllers;
  • Support multiple game controllers at the same time;
  • Up to 6 axis and 32 buttons per controller;
  • Send commands through a network;
  • Create presets to save different setups;
  • Controller axis and buttons monitoring;
  • Send three different types of MIDI messages (Note On, Note Off and Control Change);
  • Configure note, channel and value/velocity range;
  • Customize and calibrate axis maximum and minimum values;
  • Send virtual key presses, including modifier keys like CTRL, ALT and SHIFT;
  • Toggle joystick buttons;
  • Configure the refresh rate to save system resources;
  • Tray support;
  • See the history of all events;
  • Small size and no installation required;
  • 100% Free;


Main window

I'm releasing it to the public now but I'm currently working on more features like: send MIDI commands using the keyboard as input, incrementing values step by step when using buttons (not axis), instead of jumping to max/min.


Adding a new MIDI command

I'll really like to hear comments, bug reports and suggestions of new features. I plan to keep Fergo JoystickMIDI as simple as possible, but adding the best of other similar utilities into it.

Download version 1.0.45 (1.12MB):
http://fergonez.net/files/fjoymidi.rar
Website: http://fergonez.net/index.php?lang=pt&page=apps&pid=14

Version History:
1.0.48
- Fixed R and U axis not sending MIDI commands
- Added a "Check for updates" option under the "Help" menu
1.0.31
- Added tray support.
- Added top menu to keep things organized.
1.0.29
- Fixed issue with Max/Min calibration.
- Fixed MIDI Channel range.
1.0.28
- Added support for 6 axis and 32 buttons per joystick.
- Fixed problem with controllers having 0 buttons or 0 axis

Fergo JoystickMIDI was made with Visual Basic, so you'll need the VB6 Rutnime Libraries. Windows XP and newer already come with it, but in case you get an error with MSVBVM60.DLL, here is the link:
http://support.microsoft.com/kb/290887

If you want to send internal MIDI commands (to the computer itself), you'll need a MIDI patch cable driver, like MIDIYoke:
http://www.midiox.com/myoke.htm

Hope you like it. Please report any bug, comment or suggestion to improve Fergo JoystickMIDI.

Regards,
Fergo

Last edited by Fergo; 08-03-2010 at 02:26 PM.
Fergo is offline   Reply With Quote
Old 06-13-2009, 03:33 PM   #2
oldtimer
Human being with feelings
 
oldtimer's Avatar
 
Join Date: Nov 2008
Location: UK
Posts: 107
Default Runtime error

Tried it and got:-

Runtime error '340'
Control array element'3' does not exist
__________________
Its easy................when you know how!
oldtimer is offline   Reply With Quote
Old 06-13-2009, 05:30 PM   #3
Fergo
Human being with feelings
 
Fergo's Avatar
 
Join Date: Mar 2009
Location: Curitiba - Brazil
Posts: 371
Default

Thanks oldtimer.
When did this error showed up? When loading the program, adding MIDI output, activating, etc?
Can you post how many game controllers you have connected and the number of axis and buttons of each one?

Regards,
Fergo
__________________
My new application: Fergo JoystickMIDI - Send commands using your joystick/gamepad
Portfolio: www.fbirck.com
Homepage: www.fergonez.net - Programming stuff

Last edited by Fergo; 06-13-2009 at 05:37 PM.
Fergo is offline   Reply With Quote
Old 06-15-2009, 05:28 AM   #4
Fergo
Human being with feelings
 
Fergo's Avatar
 
Join Date: Mar 2009
Location: Curitiba - Brazil
Posts: 371
Default

Just uploaded a new revision. I don't have much people to test, but the runtime error you mentioned should not happen anymore.

http://fergonez.net/projects/joymidi...idi_1.0.21.rar
__________________
My new application: Fergo JoystickMIDI - Send commands using your joystick/gamepad
Portfolio: www.fbirck.com
Homepage: www.fergonez.net - Programming stuff
Fergo is offline   Reply With Quote
Old 06-16-2009, 04:38 PM   #5
oldtimer
Human being with feelings
 
oldtimer's Avatar
 
Join Date: Nov 2008
Location: UK
Posts: 107
Default

Hi Fergo
it loads OK now with the revision. I havent had time to do any extensive testing but will let you know if and when there is anything to report.
__________________
Its easy................when you know how!
oldtimer is offline   Reply With Quote
Old 06-16-2009, 06:28 PM   #6
Fergo
Human being with feelings
 
Fergo's Avatar
 
Join Date: Mar 2009
Location: Curitiba - Brazil
Posts: 371
Default

Thanks oldtimer. For the error message you mentioned, your joystick probably have more then 3 axis. I'm currently working on supporting more, so for now, you'll only be able to use the X, Y and Z axis.

If you have any trouble trying to configure it, please let me know. I tried to make it very intuitive, but what looks intuitive to the author may not be intuitive to the users.

Regards,
Fergo
__________________
My new application: Fergo JoystickMIDI - Send commands using your joystick/gamepad
Portfolio: www.fbirck.com
Homepage: www.fergonez.net - Programming stuff
Fergo is offline   Reply With Quote
Old 06-20-2009, 06:32 AM   #7
Highlander
Human being with feelings
 
Join Date: Nov 2008
Posts: 35
Default

I've downloaded your app and under windows vista i'm getting this error at the tartup (I've also tried downlading microsfot visual, but I get the same error): runtime error 339 component mscomctl.ocx or one of its dipendencies not correctly registered: a file is missing or invalid.
Highlander is offline   Reply With Quote
Old 06-20-2009, 09:13 AM   #8
RunBeerRun
Human being with feelings
 
Join Date: Jan 2007
Posts: 547
Default

Runtime error w/this version using Axispad joystick.


Quote:
Originally Posted by Fergo View Post
Just uploaded a new revision. I don't have much people to test, but the runtime error you mentioned should not happen anymore.

http://fergonez.net/projects/joymidi...idi_1.0.21.rar
__________________
Free Synthedit/Synthmaker plugins that I made: runbeerrun dot blogspot dot com
RunBeerRun is offline   Reply With Quote
Old 06-20-2009, 11:19 AM   #9
Fergo
Human being with feelings
 
Fergo's Avatar
 
Join Date: Mar 2009
Location: Curitiba - Brazil
Posts: 371
Default

Quote:
Originally Posted by Highlander View Post
I've downloaded your app and under windows vista i'm getting this error at the tartup (I've also tried downlading microsfot visual, but I get the same error): runtime error 339 component mscomctl.ocx or one of its dipendencies not correctly registered: a file is missing or invalid.
Open the start menu in Vista and type this into the search field:
Code:
regsvr32 mscomctl.ocx
Quote:
Originally Posted by RunBeerRun View Post
Runtime error w/this version using Axispad joystick.
What is the error number and description? When this error occurs?
Please run Fergo JoystickMIDI using the "debug" command line argument. It will create a file called "debuginfo.txt". Please post it here.
If you don't know how to run with command line arguments, copy the text below into Notepad and save it with ".bat" extension in the Fergo JoystickMIDI folder:

Code:
"Fergo JoystickMIDI.exe" debug
Thanks,
Fergo
__________________
My new application: Fergo JoystickMIDI - Send commands using your joystick/gamepad
Portfolio: www.fbirck.com
Homepage: www.fergonez.net - Programming stuff

Last edited by Fergo; 06-20-2009 at 11:28 AM.
Fergo is offline   Reply With Quote
Old 10-27-2009, 04:31 PM   #10
Chris Ihao
Human being with feelings
 
Chris Ihao's Avatar
 
Join Date: Oct 2009
Posts: 323
Default

Hey. I'm having a hard time trying to understand the programming of joysticks in Reaper, so just wanted to say that I'm downloading your app right now. I've got a bunch of complicated controllers, so this should be helpful If it works that is. Did you quit updating it?

Edit: No dice. Same problem as highlander. Tried "regsvr32 mscomctl.ocx" without success. Is this because of Vista or something? It looks like a good program though.

Last edited by Chris Ihao; 10-27-2009 at 04:39 PM.
Chris Ihao is offline   Reply With Quote
Old 10-27-2009, 04:48 PM   #11
Fergo
Human being with feelings
 
Fergo's Avatar
 
Join Date: Mar 2009
Location: Curitiba - Brazil
Posts: 371
Default

Hi, thanks for trying that out.

Fergo JoystickMIDI is coded in Visual Basic 6, so it will need it's runtimes (dependencies) to work properly. Fortunately, it's only 1MB:

http://www.microsoft.com/downloads/d...displaylang=en
Please download and install it. If the problem persists, you must register the dependencies yourself, just typing regsvr32 dependencyname (replace dependencyname with mscomctl.ocx for example) in your Vista start menu (or Start->Run, for XP users).

Please let me know if you are still having troubles.

Regards,
Fergo
Fergo is offline   Reply With Quote
Old 10-27-2009, 05:39 PM   #12
Chris Ihao
Human being with feelings
 
Chris Ihao's Avatar
 
Join Date: Oct 2009
Posts: 323
Default

Hi again. I tried installing the vb6 file you linked to. That didnt work so I manually found mscomctl.ocx online and registered it. Now I get: "runtime error '9'. Subscript out of range". The programs opens at least now though.
Chris Ihao is offline   Reply With Quote
Old 10-27-2009, 05:46 PM   #13
Fergo
Human being with feelings
 
Fergo's Avatar
 
Join Date: Mar 2009
Location: Curitiba - Brazil
Posts: 371
Default

Hi. Please try this procedure:

Run Fergo JoystickMIDI using the "debug" command line argument. It will create a file called "debuginfo.txt". Please post it here.
If you don't know how to run with command line arguments, copy the text below into Notepad and save it with ".bat" extension in the Fergo JoystickMIDI folder:

Code:
"Fergo JoystickMIDI.exe" debug
When the problem happens? When you launch it?
I didn't tested this program so much (as I don't have a bunch of controllers here), so this kind of issue is important for me and I'll do my best to guarantee it's working like it should.

Regards,
Fergo
Fergo is offline   Reply With Quote
Old 10-27-2009, 05:51 PM   #14
Chris Ihao
Human being with feelings
 
Chris Ihao's Avatar
 
Join Date: Oct 2009
Posts: 323
Default

Quote:
Originally Posted by Fergo View Post
Hi. Please try this procedure:

Run Fergo JoystickMIDI using the "debug" command line argument. It will create a file called "debuginfo.txt". Please post it here.
If you don't know how to run with command line arguments, copy the text below into Notepad and save it with ".bat" extension in the Fergo JoystickMIDI folder:

Code:
"Fergo JoystickMIDI.exe" debug
When the problem happens? When you launch it?
I didn't tested this program so much (as I don't have a bunch of controllers here), so this kind of issue is important for me and I'll do my best to guarantee it's working like it should.

Regards,
Fergo
This is all the info in the debuginfo.txt file:

28.10.2009 - 01:50:08: ################################################## ########
28.10.2009 - 01:50:08: Presets OK
28.10.2009 - 01:50:09: Number of MIDI devices: 4
28.10.2009 - 01:50:09: Current MIDI device: Microsoft GS Wavetable Synth
28.10.2009 - 01:50:09: Number of joysticks: 5
28.10.2009 - 01:50:09: UBound joysticks: 4

If we get this working, maybe you should just make a package out of these files

Edit: Oh, and forgot to say. Yes it happens as the program starts up.
Chris Ihao is offline   Reply With Quote
Old 10-27-2009, 05:56 PM   #15
Fergo
Human being with feelings
 
Fergo's Avatar
 
Join Date: Mar 2009
Location: Curitiba - Brazil
Posts: 371
Default

Thanks! I think I know where the problem is. I'll reply here as soon as I get it fixed (it's almost midnight here, so I might only post it tomorrow, ok?)

EDIT: Yes, I think I'll release a version with all the dependencies embedded or at least within the package.

Regards and thank you for the support.
Fergo
Fergo is offline   Reply With Quote
Old 10-27-2009, 06:11 PM   #16
Chris Ihao
Human being with feelings
 
Chris Ihao's Avatar
 
Join Date: Oct 2009
Posts: 323
Default

Quote:
Originally Posted by Fergo View Post
Thanks! I think I know where the problem is. I'll reply here as soon as I get it fixed (it's almost midnight here, so I might only post it tomorrow, ok?)

EDIT: Yes, I think I'll release a version with all the dependencies embedded or at least within the package.

Regards and thank you for the support.
Fergo
No problem mate. Its 2.09 here, and I should really have been in bed two hours ago. Never happens though

Just happy to help out. If I can contribute to sparking your interest in this again, its worth the time in my opinion. I'll check in tomorrow then Zzz well.
Chris Ihao is offline   Reply With Quote
Old 10-27-2009, 06:17 PM   #17
Fergo
Human being with feelings
 
Fergo's Avatar
 
Join Date: Mar 2009
Location: Curitiba - Brazil
Posts: 371
Default

Hello. I took some time to at least include more information to the log. Try downloading this version below, replacing the old executable with the one included in the RAR. Run with the command line again and post the log result.

http://www.fergonez.net/projects/joy...di_1.0.22b.rar

The problem it's not solved, I just added more info to help me identify the problem.

Regards,
Fergo
Fergo is offline   Reply With Quote
Old 10-27-2009, 06:26 PM   #18
Chris Ihao
Human being with feelings
 
Chris Ihao's Avatar
 
Join Date: Oct 2009
Posts: 323
Default

-------------------------------------------------------------------------------------------------------------------
28.10.2009 - 01:50:08: ################################################## ########
28.10.2009 - 01:50:08: Presets OK
28.10.2009 - 01:50:09: Number of MIDI devices: 4
28.10.2009 - 01:50:09: Current MIDI device: Microsoft GS Wavetable Synth
28.10.2009 - 01:50:09: Number of joysticks: 5
28.10.2009 - 01:50:09: UBound joysticks: 4
28.10.2009 - 02:24:44: ################################################## ########
28.10.2009 - 02:24:44: Presets OK
28.10.2009 - 02:24:44: Number of output devices: 4
28.10.2009 - 02:24:44: Current output device: Microsoft GS Wavetable Synth
28.10.2009 - 02:24:44: Number of joysticks: 5
28.10.2009 - 02:24:44: UBound joysticks: 4
28.10.2009 - 02:24:44: Device 0: 1 - Microsoft PC-joystick driver
28.10.2009 - 02:24:44: Device 1: 2 - Microsoft PC-joystick driver (
28.10.2009 - 02:24:44: Device 2: 3 - Microsoft PC-joystick driver (
28.10.2009 - 02:24:44: Device 3: 4 - Microsoft PC-joystick driver (
28.10.2009 - 02:24:44: Device 4: 5 - Microsoft PC-joystick driver (
28.10.2009 - 02:24:44: Joystick Combo Count: 5
28.10.2009 - 02:24:44: Selected joystick. ID = 5, Name = Microsoft PC-joystick driver ò-
28.10.2009 - 02:24:44: Joystick axis count: 0
28.10.2009 - 02:24:44: Joystick button count: 10
-------------------------------------------------------------------------------------------------------------------

There you go

Now, if I threw in my Steering wheel and xbox360 controller it would be even more confusing
Chris Ihao is offline   Reply With Quote
Old 10-27-2009, 06:33 PM   #19
Chris Ihao
Human being with feelings
 
Chris Ihao's Avatar
 
Join Date: Oct 2009
Posts: 323
Default

These are the devices connected at this point btw, if that is of any help:
Attached Images
File Type: jpg Controllers.jpg (32.3 KB, 603 views)
Chris Ihao is offline   Reply With Quote
Old 10-27-2009, 06:34 PM   #20
Fergo
Human being with feelings
 
Fergo's Avatar
 
Join Date: Mar 2009
Location: Curitiba - Brazil
Posts: 371
Default

Thanks!

Ok, I think I found the problem. As the log says, you seem to have a game controller without any axis, just buttons. Is that correct?
It's quite rare to have this kind of game controller, because even in gamepads without analogs, the Up/Down/Left/Right are considered as axis.

EDIT:
That picture explains a lot of things. You probably have a virtual game controller created by PPJoy without any axis (don't worry, I'll fix it ASAP). Would you mind disabling those 2 PPJoy devices, just to check if the program works without them?

Best regards,
Fergo
Fergo is offline   Reply With Quote
Old 10-27-2009, 06:38 PM   #21
Chris Ihao
Human being with feelings
 
Chris Ihao's Avatar
 
Join Date: Oct 2009
Posts: 323
Default

Yup. I just did. Now it says: "Runtime error 340. Control array element 17 doesnt exist"

Update (debug):

28.10.2009 - 02:40:20: ################################################## ########
28.10.2009 - 02:40:20: Presets OK
28.10.2009 - 02:40:20: Number of output devices: 4
28.10.2009 - 02:40:20: Current output device: Microsoft GS Wavetable Synth
28.10.2009 - 02:40:20: Number of joysticks: 3
28.10.2009 - 02:40:20: UBound joysticks: 2
28.10.2009 - 02:40:20: Device 0: 1 - Microsoft PC-joystick driver
28.10.2009 - 02:40:20: Device 1: 2 - Microsoft PC-joystick driver !
28.10.2009 - 02:40:20: Device 2: 3 - Microsoft PC-joystick driver !
28.10.2009 - 02:40:20: Joystick Combo Count: 3
28.10.2009 - 02:40:20: Selected joystick. ID = 3, Name = Microsoft PC-joystick driver ò&
28.10.2009 - 02:40:20: Joystick axis count: 3
28.10.2009 - 02:40:20: Joystick button count: 19
Chris Ihao is offline   Reply With Quote
Old 10-27-2009, 06:45 PM   #22
Fergo
Human being with feelings
 
Fergo's Avatar
 
Join Date: Mar 2009
Location: Curitiba - Brazil
Posts: 371
Default

Awww

But ok, the number 17 is a good number, because I added support to 16 buttons and I might passed some checks to see if there's a controller with more than 16 buttons (you do have one with more than 16 buttons, right?)

Fergo
Fergo is offline   Reply With Quote
Old 10-27-2009, 06:46 PM   #23
Chris Ihao
Human being with feelings
 
Chris Ihao's Avatar
 
Join Date: Oct 2009
Posts: 323
Default

Quote:
Originally Posted by Fergo View Post
Awww

But ok, the number 17 is a good number, because I added support to 16 buttons and I might passed some checks to see if there's a controller with more than 16 buttons (you do have one with more than 16 buttons, right?)

Fergo
Yup. The throttle have 19 buttons methinks.
Chris Ihao is offline   Reply With Quote
Old 10-27-2009, 06:49 PM   #24
Fergo
Human being with feelings
 
Fergo's Avatar
 
Join Date: Mar 2009
Location: Curitiba - Brazil
Posts: 371
Default

Ok, I updated my TODO list here, but I'll have to apologize, because I won't be able to code anything in my current state. I'm almost sleeping in front of the screen
Tomorrow, when I get back from work, I'll fix that, ok?

Thank you so much for the infos, I really appreciate it.

Have a good night,
Fergo.
Fergo is offline   Reply With Quote
Old 10-27-2009, 06:52 PM   #25
Chris Ihao
Human being with feelings
 
Chris Ihao's Avatar
 
Join Date: Oct 2009
Posts: 323
Default

Quote:
Originally Posted by Fergo View Post
Ok, I updated my TODO list here, but I'll have to apologize, because I won't be able to code anything in my current state. I'm almost sleeping in front of the screen
Tomorrow, when I get back from work, I'll fix that, ok?

Thank you so much for the infos, I really appreciate it.

Have a good night,
Fergo.
Hehe. Same here. Sleepy. I think its kind of fun helping beta test this thing. Dont be afraid to ask on later occasions either.

Sleep well.
Chris Ihao is offline   Reply With Quote
Old 10-28-2009, 05:20 AM   #26
Sasu Honka
Human being with feelings
 
Sasu Honka's Avatar
 
Join Date: Oct 2007
Location: Finland
Posts: 162
Default Analog to USB?

HI Fergo. Looking real good. I don´t have any gamepads or joysticks that I could use to test this at the moment, but I am really interested in the concept of building some in the lines of this thread:

http://forum.cockos.com/showthread.php?t=39846

Do You think this approach works?

Thanks for giving this to us!

Last edited by Sasu Honka; 10-28-2009 at 05:21 AM. Reason: Wrong link
Sasu Honka is offline   Reply With Quote
Old 10-28-2009, 01:19 PM   #27
Fergo
Human being with feelings
 
Fergo's Avatar
 
Join Date: Mar 2009
Location: Curitiba - Brazil
Posts: 371
Default

Quote:
Originally Posted by Sasu Honka View Post
HI Fergo. Looking real good. I don´t have any gamepads or joysticks that I could use to test this at the moment, but I am really interested in the concept of building some in the lines of this thread:

http://forum.cockos.com/showthread.php?t=39846

Do You think this approach works?

Thanks for giving this to us!
If Windows can identify that as a joystick, it will (or should...) work without problems

I'm starting to correct those bugs now.

Regards,
Fergo
Fergo is offline   Reply With Quote
Old 10-28-2009, 03:06 PM   #28
Chris Ihao
Human being with feelings
 
Chris Ihao's Avatar
 
Join Date: Oct 2009
Posts: 323
Default

Quote:
Originally Posted by Fergo View Post
I'm starting to correct those bugs now.

Regards,
Fergo
Cool
Chris Ihao is offline   Reply With Quote
Old 10-28-2009, 05:14 PM   #29
Fergo
Human being with feelings
 
Fergo's Avatar
 
Join Date: Mar 2009
Location: Curitiba - Brazil
Posts: 371
Default

Hello!

Fresh version
http://www.fergonez.net/project/joym...idi_1.0.28.rar

I changed a lot of things in the code, so we might get out of one error and get into another one, but it's the life...

Hopefully fixed the problems with the number of axis and buttons. Added support to up to 32 buttons and 6 axis. I also partially finished a feature I started to implement a few months ago, which is network support. You can now have a gamepad connected to a notebook and send the MIDI commands to the server, running your plugins and stuff (useful in cases where the audio stuff is far from where you play). It will obviously create latency issues when using to create music, but for controlling effects, some milliseconds of latency due to the network it's probably not a big deal.

Please check if you can connect all the devices and get all the buttons to work. As I said, I don't have a controller here with a bunch of buttons and axis, so I couldn't test a great part of the code, but PPJoy helped me a bit and I think that everything is ok.

Regards,
Fergo
Fergo is offline   Reply With Quote
Old 10-28-2009, 05:42 PM   #30
Chris Ihao
Human being with feelings
 
Chris Ihao's Avatar
 
Join Date: Oct 2009
Posts: 323
Default

Link broken :-P
Chris Ihao is offline   Reply With Quote
Old 10-28-2009, 05:49 PM   #31
Fergo
Human being with feelings
 
Fergo's Avatar
 
Join Date: Mar 2009
Location: Curitiba - Brazil
Posts: 371
Default

Sorry... typo issue.
http://www.fergonez.net/projects/joy...idi_1.0.28.rar

Fergo
Fergo is offline   Reply With Quote
Old 10-28-2009, 06:44 PM   #32
BenK-msx
Human being with feelings
 
BenK-msx's Avatar
 
Join Date: Jun 2008
Location: uk
Posts: 3,987
Default

Quote:
Originally Posted by Fergo View Post
If Windows can identify that as a joystick, it will (or should...) work without problems


Regards,
Fergo
it does, yes.
BenK-msx is online now   Reply With Quote
Old 10-28-2009, 08:02 PM   #33
Chris Ihao
Human being with feelings
 
Chris Ihao's Avatar
 
Join Date: Oct 2009
Posts: 323
Default

Quote:
Originally Posted by Fergo View Post
Hey. Sorry for not getting back to you earlier.

Guess what? It works! Havent had the time to test properly but everything is correctly detected and the program starts up with even the ppjoy's enabled.

Regarding buttons and axises, only thing thats missing is the pov (point of view) buttons on both the flightstick and throttle device but hey, I'm not whining about that. If you want to further improve the program by including that, thats entirely up to you. They are not detected as normal buttons though, so I have no idea how to eventually do that. For some sticks with fewer buttons obviously this can have some advantage, but for me it really doesnt matter at all. 19 buttons is more than enough

Also, I saw that the "stick numbers" were reshuffled a bit when I re-enabled the ppjoys, meaning that the sticks were renamed (only the numbers) in the controller list. Will the choice of controller device keep their selected device number if a stick later is added or removed, or will I have to edit the profile to keep track of the correct number? (Edit: Look at the edits on the bottom. I think I found an answer myself).

I think the app has some trouble detecting the states of some of the axises. At least when trying to set minimum and maximum states, this doesnt seem to work properly. In the monitor part all the axes are detected just right. I dont have time to test it right now, but it may just be the maximum - minimum values part that doesnt work. I shall look further into this.

Lastly, why call the midi channels 0-15? I would call them 1-16 to make them correspond exactly with the midi channels in the daw. No biggie, so if this has a good reason, just ignore me

I really must go to bed now, but I must say you have done a nice piece of work today. I love the interface and way of doing this. If it were integrated in Reaper as well as the rather "complicated" programming language interface, this would be a very nice, easy way of connecting game controllers to Reaper. Just a tip I'll come in here and comment after I have some more experience with the app.

Cheers!

Edit: Hmm. When I think of it, this reshuffling may have been caused by the "preferred device" thing the os tend to do by itself. I remembered a program for doing this, and I found it at this site: http://www.wingmanteam.com/latest_software/gadgets.htm under "JoyIDs". Its not easy to have several controllers

Edit 2: Just tested it and yeah, JoyIDs work even in Vista. The devices id's corresponds with the device numbers in your program Fergo, so thats the explanation. JoyIds is really a handy little app. Maybe you should put a link to this one up in your original post?

Edit 3: I'm afraid I wont wake up in time for work tomorrow, but I just had to test out how Fergo JoystickMIDI works in Reaper in practise. Its great so far. I managed to map a few buttons for transport functions (record, play/stop, "stop: delete recorded" and "stop: keep recorded") and it works exactly how I want it to work. Havent tested any axises yet though. Thaaanks!

Last edited by Chris Ihao; 10-28-2009 at 10:12 PM.
Chris Ihao is offline   Reply With Quote
Old 10-29-2009, 04:41 AM   #34
Fergo
Human being with feelings
 
Fergo's Avatar
 
Join Date: Mar 2009
Location: Curitiba - Brazil
Posts: 371
Default

Quote:
Originally Posted by BenK-msx View Post
it does, yes.
Good to know. Thanks!

Quote:
Originally Posted by Chris Ihao View Post
Hey. Sorry for not getting back to you earlier.

Guess what? It works! Havent had the time to test properly but everything is correctly detected and the program starts up with even the ppjoy's enabled.

Regarding buttons and axises, only thing thats missing is the pov (point of view) buttons on both the flightstick and throttle device but hey, I'm not whining about that. If you want to further improve the program by including that, thats entirely up to you. They are not detected as normal buttons though, so I have no idea how to eventually do that. For some sticks with fewer buttons obviously this can have some advantage, but for me it really doesnt matter at all. 19 buttons is more than enough
Yes, you are right. I'm not checking for POVs, and I think the current method I use to identify the joystick features (using standard WinAPI) does not support it either, because I don't remember seeing any mention to POVs and stuff. It's a good feature to improve in the next big release, though.

Quote:
Originally Posted by Chris Ihao View Post
Also, I saw that the "stick numbers" were reshuffled a bit when I re-enabled the ppjoys, meaning that the sticks were renamed (only the numbers) in the controller list. Will the choice of controller device keep their selected device number if a stick later is added or removed, or will I have to edit the profile to keep track of the correct number? (Edit: Look at the edits on the bottom. I think I found an answer myself).
The stick numbers displayed by FJMidi should be the same device ID on Windows. If I remember correctly, the device ID still the same even if you disconnect other joysticks (have to check to be sure, though). If you have 2 joysticks, with IDs 1 and 2, disconnecting the first joystick, the ID of the second one will still be 2, even if 1 is disconnected. I didn't understand very well the part where you check with JoyIDs. It confirms what I said above? If so, I guess that everything is fine, as you won't have to remap the presets if you forget to plug some joy or stuff.

Quote:
Originally Posted by Chris Ihao View Post
I think the app has some trouble detecting the states of some of the axises. At least when trying to set minimum and maximum states, this doesnt seem to work properly. In the monitor part all the axes are detected just right. I dont have time to test it right now, but it may just be the maximum - minimum values part that doesnt work. I shall look further into this.
The monitor is not affected by the Max/Min you set in the MIDI Output. It shows the real (physical) state of axis/buttons. You can check if Max/Min is working in the history Window (for testing, use the MS Synth as the MIDI Device, very handy ).

Quote:
Originally Posted by Chris Ihao View Post
Lastly, why call the midi channels 0-15? I would call them 1-16 to make them correspond exactly with the midi channels in the daw. No biggie, so if this has a good reason, just ignore me
Good point. I'll fix that.

I'm at work now, but when I get home (by the same time I posted the previous post) I'll check this topic again and give another look into the ID things if they are not working as it should.

Thanks a lot for your feedback. It's been very helpful to identify the problems and improve the application.

Regards,
Fergo
Fergo is offline   Reply With Quote
Old 10-29-2009, 09:05 AM   #35
Chris Ihao
Human being with feelings
 
Chris Ihao's Avatar
 
Join Date: Oct 2009
Posts: 323
Default

Hey. The JoyIDs program lets you change the joystick devices id's, simply by dragging and dropping. You can also "save" these settings in a layout file which you then can load at a later time, and also register them (how this exactly works I do not know).

Picture that you have 6-7 different devices. If you are going to play an old game, you need to have a specific controller chosen as "device 1" (its a limitation). You then need to choose that one as a "preferred device" in the game controller section of the os (or with JoyIDs obviously), ultimately reshuffling the device id's.

Before I enabled the ppjoys, the flightstick was #1, the throttle #2 and the pedals #3. After enabling they suddenly reshuffled, making ppjoy stick 4 #3 and the pedals I think #4. This probably was due to the first ppjoy device getting selected as preferred device of some reason. So, you see they doesnt always stay put. And you do not natively have very good control of these id's. Actually I think you will have good use of this app.

JoyIDs lets you easily change these id's how you like them to be. Quite brilliant. I dont think there is much you can do about this, as this is an os thing, but perhaps you can check if the controllers are id'ed in such a way that the controller id's doesnt matter after having selected it or something? If you feel like it that is

Hope you understand what I mean? If not, just ask.
Chris Ihao is offline   Reply With Quote
Old 10-29-2009, 09:51 AM   #36
Chris Ihao
Human being with feelings
 
Chris Ihao's Avatar
 
Join Date: Oct 2009
Posts: 323
Default

After I booted up the Ch control manager (advanced manager for my ch sticks) and got my throttle properly calibrated, the mini joystick on this now have values from 0 to 126 being sent correctly as midi cc on both the x and the y axis. Brilliant

Also, this control manager lets me combine the devices to be used as one single joystick device. This can be a tremendous advantage, but doing this also proved that the joystick id's do get reshuffled at times. When these three devices were combined, and then "uncombined", one of the ppjoy devices had snuck in between again. Hehe. Thank (fill in deity here) for JoyIDs. Maybe you can contact the maker of this app and ask if you can implement it, if thats even possible. Remember, I'm a no-brainer when it comes to programming languages like vb and the likes

Edit: Btw, there IS something fishy about those "set current state as minimum" and "...maximum" buttons, as they detect 0,0001 on every setting of the x axis. No matter if its max or min. Y seems to get detected fine. No matter. In the "action history" everything seems up to standard. Now, the jog wheel function doesnt work very well with my stick though. It basically jumps around and plays like a complete idiot, even if the control works "to some extent" (if I move stick left I play left but have no control on speed, and it tends to hang in one direction). Hehe. This SHOULD however work in theory, so I think it may be a Reaper issue.

Last edited by Chris Ihao; 10-29-2009 at 10:29 AM.
Chris Ihao is offline   Reply With Quote
Old 10-29-2009, 03:16 PM   #37
Bpayne
Human being with feelings
 
Join Date: Aug 2009
Posts: 27
Default

couldn't get the screen capture to work( I know I'm a noobish moron sometimes) but I have a different problem now, I actually got the levels right and fixed it by switching to mono so now it records fine and at a good level, but when I turn off the phantom power from the emu to the bluebird mic, I can still hear and record myself through the bluebird. I thought you couldn't get any sound out of this condenser without phantom power? I turned it off and it made no difference in the mic volume and control. Does this mean something is wrong with my Emu and or bluebird mic?
Bpayne is offline   Reply With Quote
Old 10-29-2009, 03:25 PM   #38
Chris Ihao
Human being with feelings
 
Chris Ihao's Avatar
 
Join Date: Oct 2009
Posts: 323
Default

Quote:
Originally Posted by Bpayne View Post
couldn't get the screen capture to work( I know I'm a noobish moron sometimes) but I have a different problem now, I actually got the levels right and fixed it by switching to mono so now it records fine and at a good level, but when I turn off the phantom power from the emu to the bluebird mic, I can still hear and record myself through the bluebird. I thought you couldn't get any sound out of this condenser without phantom power? I turned it off and it made no difference in the mic volume and control. Does this mean something is wrong with my Emu and or bluebird mic?
I dont know, but I think you may have hit the wrong thread
Chris Ihao is offline   Reply With Quote
Old 10-29-2009, 05:16 PM   #39
Fergo
Human being with feelings
 
Fergo's Avatar
 
Join Date: Mar 2009
Location: Curitiba - Brazil
Posts: 371
Default

Quote:
Originally Posted by Chris Ihao View Post
I dont know, but I think you may have hit the wrong thread
LOL. Tabbed browsing may create this kind of issue

Well, regarding the Max/Min problem: that's what happens when you forgot to add a "+1" in a line of code. Problem seems to be fixed now.
I also changed the channel numbers. Now it goes from 1 to 16

I made a screencast of the Max/Min stuff to show it working:
http://screencast.com/t/GBRdwjnq

Here's the download link for the new version. Sorry to fill this topic with a bunch of different versions too. I'll update the first post with the new links.
http://www.fergonez.net/projects/joy...idi_1.0.29.rar

Please let me now if it's working now.
Oh, regarding the ID stuff, thanks for the information. I'll have to look at it with more time, so for now I'll let the IDs like they are and fix some more serious problems (that can make the program unusable).

Regards,
Fergo

Last edited by Fergo; 10-29-2009 at 05:17 PM. Reason: Forgot to add the download link...
Fergo is offline   Reply With Quote
Old 10-30-2009, 12:12 AM   #40
Chris Ihao
Human being with feelings
 
Chris Ihao's Avatar
 
Join Date: Oct 2009
Posts: 323
Default

Quote:
Originally Posted by Fergo View Post
LOL. Tabbed browsing may create this kind of issue

Well, regarding the Max/Min problem: that's what happens when you forgot to add a "+1" in a line of code. Problem seems to be fixed now.
I also changed the channel numbers. Now it goes from 1 to 16

I made a screencast of the Max/Min stuff to show it working:
http://screencast.com/t/GBRdwjnq

Here's the download link for the new version. Sorry to fill this topic with a bunch of different versions too. I'll update the first post with the new links.
http://www.fergonez.net/projects/joy...idi_1.0.29.rar

Please let me now if it's working now.
Oh, regarding the ID stuff, thanks for the information. I'll have to look at it with more time, so for now I'll let the IDs like they are and fix some more serious problems (that can make the program unusable).

Regards,
Fergo
Cool. I'll check it out later today, after work.
Chris Ihao is offline   Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -7. The time now is 04:04 PM.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2018, vBulletin Solutions Inc.