Quick update for the night. I got the virtual HID keyboard linked to the normal chatpad driver stuff. For now I can only type "asdf", but that's because I have been setting up the lists of keys so everything can be configurable. Once I implement the configuration file I can finish the rest of the mappings in the file itself, and they should automatically work based on how they're configured. Using the virtual HID device may be handy in some regards -- if you hold down a key it repeats automatically, for instance.
Recently I also ran some prototype install/upgrade stuff to make sure I can automatically install and upgrade the driver without making people mess with device manager. Looks like that's the case. I still need to make the installer though.
Next up, supporting a (huge) text file to configure the keys. Also, working towards getting them all working, using the configurable mapping support. Also, making/linking in the mouse HID device. I'm trying to stick with the features and requests I have now, and not add more unplanned stuff so I do not take even longer. I know this is taking forever for me to finish, but I am trying to do it well and I hope it works well for everyone in the end.
I just did a rough check, and if I did the math right it looks like I have some 8000 lines of code, comments, whitespace, header file contents, etc. It's all been handwritten in the last month or so, basically. Why are things always so much more work than they first appear?
I spent most of yesterday afternoon designing the key configuration stuff, writing up documentation, an example file, and so forth. Most of this afternoon has been spent working on the actual implementation of loading the file. That's approaching completion, and then making it actually work for chatpad keys shouldn't be too bad. More updates as I get stuff done.
*edit* Basically worked most of the night as well. Configuration file design, documentation, and loading is almost completely done unless some bugs crop up. I'm almost to the point where all of the configuration data is actually used to map keys, but I need to sleep for a while. I should be able to type stuff with the chatpad again tomorrow, with far more power to now configure what every button does from a config file. If I get that all squared away then I can work on finishing up the other features, including the last bits that need done on the kernel drivers. Those have been quite stable over the last several days, and hopefully that will continue.
thank you for doing this the right way GAF, and thank you for intending to work on the wireless version in the future too. there is still no useable driver for this device anywhere on the net that i can find, i would have to imagine you are going to be somewhat of a hero hahaha.
please forgive me for this dumb question....but I don't have an xbox, will the keyboard
work alone, or will it have to be pluged in to the controller to work???
Or does it have a usb plug...
I do already have a knock off xbox controller hard wired into my truck, so it's really not an issue, I guess I thought the keyboard was usb??? but now I am not sure
I first like to commend gaf on the hard work on this issue thats been around for years. Im not sure if this is help but there is another chat pad out there thats a knock off. Im not sure if its easier to mod or re engineer . It might be useful gaf http://www.dealextreme.com/details.dx/sku.48634
hardware mod that requires flashing a ROM on the chatpad and thus turns it into a PS/2 compatible keyboard (or something like that).
Windows level. Getting data from the controller and chatpad through my driver seems to work well. So hopefully I won't have to do more low-level debugging and experimentation until I mess with wireless controllers.
I'm coming into this a bit late, but from what I can gather we all want the chatpad to use as a keyboard. I do not have full mobility of most of my fingers, so I use a program called Xpadder to use the xbox 360 controller to play games on my pc. Mostly i just play world of warcraft. Most people are surprised when I say I play wow with a controller, but honestly even if i had all my fingers I would still play this way. Using the left trigger as shift and the right as ctrl, along with programming the up, down, left, right as action buttons, plus start and back gives me 30 button combinations. There are only two downsides to using a controller for this game: The first is that 30 are not enough and I occasionally have to reach for the keyboard in certain situations and always when I need/want to chat. The second was that my reaction time was slowed from having to sometimes go from controller to mouse, then back to controller. I eliminated this problem by buying a gaming mouse with 12 buttons attached to the side, which allows me to not have to snap my hand back to the controller in times of need and instead use the buttons on the mouse.
When I bought the chatpad I thought my days of reaching for the keyboard were over. Opening the package was a very exciting moment for me only to find out that it does not work. I've read the first page of this forum and then skipped to the last. From what I can see GAFBlizzard is close to making a driver that will allow us to use the chatpad as if it were a keyboard and I want in. I have no problem in paying for his hard work toward this goal. However, I’m on a fixed income and would very much prefer to donate for a finished product. My only concern is that if GAFBlizzard does manage to finish a working driver that it might not work for me because I use Xpadder to program keystrokes into my controller. I don’t think this should matter, but I also thought that the chatpad would work for my PC in the first place.
Now that I know this forum exists I will check it on a daily basis. I would like to thank GAFBlizzard for taking the time to try and do this. Especially considering I sent basically this same e-mail to Microsoft some time back, and they can’t be bothered. If you manage to succeed, you sir, will be my hero!!!
Great work GAFBlizzard for doing the driver properly, look forward to the release soon.