Comments (41)
Cool, sounds like that's probably a real hardware ID then. Give me a bit and I'll knock up a skeleton handler for it and we can work through figuring out the button layout. I couldn't really find any existing code for it online.
from missioncontrol.
Ah yeah whoops I read 0x08 as 0x80 for the start button. This build should fix it. I've also added the start button as a modifier for L and R so you should hopefully be able to press ZL and ZR now. Was easier than using the back button because it gets sent in the same report as the rest of the controls
MissionControl-0.1.0-gamestick-experimental.zip
from missioncontrol.
Ouya controller support has already been requested here #17. I've mostly implemented it and it will be included in the next release. If you want to try it out now there's a build posted in that thread.
Can you provide me more information about the gamestick? I'm not familiar with this controller. Yes, button combos could be used in place of missing buttons, but it's much harder to come up with defaults that everyone is going to agree with, necessitating the need for user configurable layouts. I'm not quite ready to start adding those features yet. If there are some obvious combos to use for certain buttons I'll consider setting them as defaults in the short term.
from missioncontrol.
The gamestick is by playjam I don't really no much else about it but I'll have a look around on line
from missioncontrol.
Interesting. Never seen this before. Thanks for the pics. From the name I thought it was going to have far fewer buttons. Looks like it wouldn't be such a big deal to add a few combos to handle the missing buttons. Is that a battery indicator in the last picture?
I'll need some more info about it in order to make it work. Have you tried pairing it with the console? It won't show up as connected yet, but if it's not doing anything weird it should show up in the pairing database. You can dump that with my btdb.nro
app and post the results here so I can find its hardware ID. I'll take a look too and see what else I can find out.
from missioncontrol.
The gamestick came out couple of months after the ouya and yes it is a battery indicator in the last picture I have just tried to pair up and nothing happens and there's nothing new posted in btdb.nro
from missioncontrol.
I have just tried it with ur experimental one for the ouya and it pairs up but doesn't connect up and btdb.nro found it this time
I think it's the last pro controller on the list because it wasn't on the list last time
from missioncontrol.
Oh nice. I'm not sure why the Ouya build would have made a difference though. Are those your two controllers in the pics you posted? Could you try and pair the other one too so I can see if that device ID is consistent vs random garbage?
from missioncontrol.
Both paired up and device ID is the same with both
from missioncontrol.
I found this if it's any good https://www.google.com/url?sa=t&source=web&rct=j&url=https://www.videogameconsolelibrary.com/images/Manuals/13_PlayJam_GameStick_SDK_v103.pdf&ved=2ahUKEwjQvbSFgMvrAhVIi1wKHTtcCUwQFjABegQIARAB&usg=AOvVaw0D6eVY8gwHKdzFszhBGpQC
from missioncontrol.
Good find. There's a section on button mappings that we might be able to reference. It's not entirely clear on the reporting format though so I think we're going to have to inspect the incoming packets visually, to get our bearings at least.
Here's an initial build with the skeleton handler in place. This should make the controller show up as connected, but you won't get any button presses or anything just yet.
MissionControl-0.1.0-gamestick-experimental.zip
Here's a tool I've used to figure out button layouts in the past. It's kinda crappy and lags about 1sec behind but it gets the job done. It steals the controller events from the system so you need to use the home button on the joycon (attached to the switch) to exit.
hid_report_tool.zip
This tool should print a raw hex dump of the incoming packets. Make sure you only have one controller connected or it will mess up the output. Send me a capture of the screen so I can get an idea of the packet size and ID. Then the idea is to press each of the buttons one at a time and see if you can spot which value it changes. Likewise, push the sticks to their extremes in X and Y and see if you can see which values are maxing out.
from missioncontrol.
from missioncontrol.
@oxley192 can you get a better picture? Can't really read that (you know you can use the consoles capture button right?) . What's that first digit?
from missioncontrol.
03 0f 80 80 80 80 00 00 00 00
from missioncontrol.
Ok, so it's sending report 0x03. Do those values change when you press the buttons or move the analog sticks?
from missioncontrol.
My fone was playing up when transferring the picture over
from missioncontrol.
Yes they do I'll do take a capture for every button and say which button it is
from missioncontrol.
Ha, if that's how you want to do it that would be great. Otherwise you could just tell me a few and I'll see if I can line it up with what that SDK document you found says
from missioncontrol.
Home button big button with the arrow on = 01 00 10 00 00 00 00 00 00
Back button = 01 00 20 00 00 00 00 00 00
Start button = 03 0f 80 80 80 80 00 00 08
Y button = 03 0f 80 80 80 80 00 00 10 00
X button = 03 0f 80 80 80 80 00 00 08 00
A button = 03 0f 80 80 80 80 00 00 01 00
B button = 03 0f 80 80 80 80 00 00 02 00
L1 button = 03 0f 80 80 80 80 00 00 40 00
R1 button = 03 0f 80 80 80 80 00 00 80 00
L3 button = 03 0f 80 80 80 80 00 00 00 20
R3 button = 03 0f 80 80 80 80 00 00 00 40
from missioncontrol.
Perfect. Could you do the same with the sticks too? It should be enough to just record them in 100% up and 100% right position
from missioncontrol.
left analogstick
Up = 03 0f 80 00 80 80 00 00 00 00
Down = 03 0f 80 FF 80 80 00 00 00 00
Left = 03 0f 00 80 80 80 00 00 00 00
Right = 03 0f ff 80 80 80 00 00 00 00
Right analogstick
Up = 03 0f 80 80 80 80 00 00 00 00
Down = 03 0f 80 80 80 ff 00 00 00 00
Left = 03 0f 80 80 00 80 00 00 00 00
Right = 03 0f 80 80 ff 80 00 00 00 00
D pad
Up = 03 00 80 80 80 80 00 00 00 00
Down = 03 04 80 80 80 80 00 00 00 00
Left = 03 06 80 80 80 80 00 00 00 00
Right = 03 02 80 80 80 80 00 00 00 00
from missioncontrol.
Could you check that start
button one is correct? You've got it being the length of the 0x01 reports but with the data of the 0x03 reports. If it's an 0x03 the data you reported clashes with the X button
from missioncontrol.
Start button 03 0f 80 80 80 80 00 00 00 08 is wot it comes up with and the x button 03 0f 80 80 80 80 00 00 08 00
from missioncontrol.
All good, looks like you missed a 0x00 above.
from missioncontrol.
Yep I did
from missioncontrol.
Made this build that maps the controls according to my interpretation of the info you gave me. Let me know what works and what doesn't.
Do you have some idea of which button combo would be good to simulate the ZL/ZR buttons?
MissionControl-0.1.0-gamestick-experimental.zip
from missioncontrol.
The home button , back and start don't seem to work not sure about x and y haven't tried them on a game yet lol but everything things else seem to be working good and I was thinking like the start button and the back buttons for a combo
from missioncontrol.
X and y both work it's just home start and back that don't seem to work
from missioncontrol.
I might have got the bit ordering of home and back reversed. Try this build.
MissionControl-0.1.0-gamestick-experimental.zip
Not sure why start doesn't work though. I mapped it as the +
button FYI.
Here's a visual controller test app I made that might help you to check everything better.
from missioncontrol.
Start button still isn't working but home and bk button now work
from missioncontrol.
Just trying out lz and rz in some games to see if I like the combination but verything else works goods
from missioncontrol.
Don't like it cause it doesn't fully work I think it might be better using down on the dpad and the back buttons cos the combination doesn't always work with start
from missioncontrol.
The combination not working might be due to a logic error in my handling code though, so if that's your only complaint it still might be the better choice since those center buttons don't get used so much. Did you notice any pattern to it failing to trigger? I would imagine the case where you might legitimately hit a dpad button with a shoulder button and not want the combo might pop up more frequently
from missioncontrol.
It's cos the games I was using it on used + for like maps and setting up options so it wasn't working with some shooting games
from missioncontrol.
Ah right, so it was otherwise working as expected? This is where we get into the territory of needing to be user-configurable as everyone is going to have a different idea of what makes sense depending on which games they're playing. Since you're the only one who has requested this controller so far I can make dpad down be the default modifier for the time being if you want.
from missioncontrol.
I made this special build of hid_report_tool that filters out the normal button data. Could you run it and tell me if the controller sends any other data when it connects, or if you plug/unplug a charging cable? I want to see if it reports battery level information so I can add that.
from missioncontrol.
It just a blank screen unless I press the home button then it says 01 00 10 00 00 00 00 00 00 or back says 01 00 20
00 00 00 00 00 00 but if I keep back pressed in for about 10 seconds it say 01 00 00 00 00 00 00 00 00 and yes can u dpad down the combination please
from missioncontrol.
Yeah, that's to be expected. Sounds like it doesn't send any additional reports then. I wonder where the battery info is...
Anyway, here's a build with the dpad down combo. See what you think.
MissionControl-0.1.0-gamestick-dpad-down.zip
from missioncontrol.
That works better thank u
from missioncontrol.
I found a old Bluetooth controller that's meant to be for the gem box and it linked up if I do that same as before can we see if we can get that working too cause a good controller
from missioncontrol.
Sure, but please create a new issue for this one
from missioncontrol.
Related Issues (20)
- xbox serise x and ps5 controller not working HOT 1
- [Bug Report]: Double checked everything but PS4/PS5 controllers still won't connect HOT 2
- [Bug Report]: lag growing with time HOT 3
- [Controller Request]: Google Stadia Gamepad
- [Bug Report]: Xiaomi Gamepad Doesn't Work
- [Controller Request]: Rexus Daxa Asteria Ax1 HOT 1
- [Bug Report]: Balance Board Controls don't work properly HOT 3
- [Feature Request]: When the Bluetooth Audio is open,the MissonControl will make a high input lag HOT 2
- [Controller Request]: Google Stadia Controller H2B HOT 1
- Xbox support
- [Feature Request]: PlayStation touchpad button mapping options HOT 2
- [Bug Report]: fake ps4 controller not connect HOT 1
- [Bug Report]: Wired Dualshock 3 controller stops working with sys-con after MissionControl is installed HOT 1
- Controller Request
- [Bug Report]: Mission Control not running? HOT 4
- [Controller Request]: HOT 2
- [Controller Request]: Steelseries Nimbus+ HOT 8
- [Controller Request]: Asus ROG Raikiri/Raikiri Pro HOT 2
- [Controller Request]: flydigi apex 2 HOT 1
- [Controller Request]: Stadia controller HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from missioncontrol.