Seems I've been neglecting this page a bit. My bad!
Well the project is reaching the "end". Not really... but the time has come to release some things in exchange for a grade :)
Without further adieu, you may obtain the wii board java library (and within a day or two, a python version!) at the following place:
Yep. Right here
Hopefully this will be of use to people. Enjoy :)
Wednesday, November 19, 2008
Thursday, October 2, 2008
let there be light!
Progress report of rewriting drivers for open source use:
setting the light on the board works! hooray!
I've designed the library to be as close as possible to the wiimote-simple architecture, the idea being programmers are already used to that library...
It will remain open source at least.
Next step will be to get some useful information (like... let's say... the weight readings?)
setting the light on the board works! hooray!
I've designed the library to be as close as possible to the wiimote-simple architecture, the idea being programmers are already used to that library...
It will remain open source at least.
Next step will be to get some useful information (like... let's say... the weight readings?)
Friday, September 5, 2008
Connection woes II
I want to conduct a test over the weekend, specifically aimed at draining battery power!
I'm fairly sure that if no listeners are actively "listening" (that is, not requesting data from registers) then the board will save a lot of power in regards to transmitting data.
If the board doesn't take up much 'juice' in this idle state, then why not create a daemon process that is just connected to the board, but leaves it in the idle state. then any programs can query the daemon for the board and attach listeners, then the board starts sending stuff again.
Sounds like a hacky fix!
I'm fairly sure that if no listeners are actively "listening" (that is, not requesting data from registers) then the board will save a lot of power in regards to transmitting data.
If the board doesn't take up much 'juice' in this idle state, then why not create a daemon process that is just connected to the board, but leaves it in the idle state. then any programs can query the daemon for the board and attach listeners, then the board starts sending stuff again.
Sounds like a hacky fix!
Thursday, August 28, 2008
Come one, come all
Apparently I'll be showing off some simple games/demo's using the Wii Balance Board at UNSW's open day on the 6th September.
No details on when/where, but will also be talking about the "Wiihab" rehab project since its progressed a fair bit and there's something to talk about! =p
Will update this with other progress of the project once I get home..
No details on when/where, but will also be talking about the "Wiihab" rehab project since its progressed a fair bit and there's something to talk about! =p
Will update this with other progress of the project once I get home..
Sunday, August 17, 2008
Speed test
2 minutes of my time has discovered the following:
* An event is sent (or received I should say) every ~5ms from the board (from a test run of collecting data for 10 seconds)
Meanwhile...
While I still haven't figured out the quick connect problem (if it can even be solved), the little program showing where "balance" is is coming along quite nicely.
I think its safe to assume that the bottom left and bottom right values should be the same for centre of balance. Now as for the top two values, I thought I read somewhere that weight should be spread evenly across the feet (heel to toe)....
Reading time!
update: I was wrong, the heel takes 50% of the weight and everything else is evenly distributed (giving the front two values a lower reading vs back two).
There must be some sort of relationship between the front values and back values to determine the user is standing naturally (not leaning forward or backward intentionally). I get to play with graphics now... yay!
On another note, I was looking around at wii board things (as one does), and this kind of use never came to mind:
http://au.youtube.com/watch?v=GjI88WH3WbI
an additional input device that you rest your feet on. Perhaps I'll get that working too, I'm always finding a lack of hotkeys in games (and refuse to buy the keyboards made for games?)
* An event is sent (or received I should say) every ~5ms from the board (from a test run of collecting data for 10 seconds)
Meanwhile...
While I still haven't figured out the quick connect problem (if it can even be solved), the little program showing where "balance" is is coming along quite nicely.
I think its safe to assume that the bottom left and bottom right values should be the same for centre of balance. Now as for the top two values, I thought I read somewhere that weight should be spread evenly across the feet (heel to toe)....
Reading time!
update: I was wrong, the heel takes 50% of the weight and everything else is evenly distributed (giving the front two values a lower reading vs back two).
There must be some sort of relationship between the front values and back values to determine the user is standing naturally (not leaning forward or backward intentionally). I get to play with graphics now... yay!
On another note, I was looking around at wii board things (as one does), and this kind of use never came to mind:
http://au.youtube.com/watch?v=GjI88WH3WbI
an additional input device that you rest your feet on. Perhaps I'll get that working too, I'm always finding a lack of hotkeys in games (and refuse to buy the keyboards made for games?)
Wednesday, August 13, 2008
Connection woes
Apparently, according to the author of WiiRemoteJ, there is no current easy way of saving connection state of the bluetooth pairing with the board.
" the code for the quick-connect stuff is buried in firmware and isn't accessible over the standard Bluetooth interface. Until someone figures out a way to access it, we're stuck with having to press the sync button (or 1 + 2 on the Wii Remote) every time. Sorry!"
Damn. =(
" the code for the quick-connect stuff is buried in firmware and isn't accessible over the standard Bluetooth interface. Until someone figures out a way to access it, we're stuck with having to press the sync button (or 1 + 2 on the Wii Remote) every time. Sorry!"
Damn. =(
Friday, August 8, 2008
ooh flashing lights
flashing lights, and numbers!
I've managed to start reading data from the board. Good progress.
Things that annoy me / limitations:
* WiiRemoteJ is closed source (to those in the meeting, sorry I was thinking about something else being open source. my bad)
* The board sends too much data.
Well alright its not huge problem when someone's standing on the board, because its useful and changes in data are important.
However!
Currently, the board listener is firing off button presses and mass readings when its just sitting there. If its an implementation detail on the PC side its no problem, however if the board is actually sending all that, I can only imagine the batteries giving up sometime soon.
* Connection is annoying! Each time I want to re-run the program, I must press the red discovery button located "conveniently" under the board, next to where the batteries are placed.
Also, if the program is terminated without disconnecting the board and shutting down the bluetooth stack properly, it won't connect the next time...
* Its accurate. (A great thing! but I need to do more exercise oO)
Here's a snippet of some of the readings I got from it by pressing my hand down on the board:
Board found! 001FC5AFCFD2
--Status--
Battery:0.885
LED: true
~~Mass~~
total weight: 2.0945097456241313
Top Left: 0.2508513053348468
Top Right: 0.30131503716409375
Bottom Left: 0.8152753108348135
Bottom Right: 0.727068092290377
~~Mass~~
total weight: 2.323162019423905
Top Left: 0.27014755959137343
Top Right: 0.2624356775300172
Bottom Left: 0.8052101835405565
Bottom Right: 0.9853685987619584
~~Mass~~
total weight: 3.4545152931615912
Top Left: 0.22190692395005673
Top Right: 0.38879359634076616
Bottom Left: 1.0165778567199526
Bottom Right: 1.827236916150816
I've managed to start reading data from the board. Good progress.
Things that annoy me / limitations:
* WiiRemoteJ is closed source (to those in the meeting, sorry I was thinking about something else being open source. my bad)
* The board sends too much data.
Well alright its not huge problem when someone's standing on the board, because its useful and changes in data are important.
However!
Currently, the board listener is firing off button presses and mass readings when its just sitting there. If its an implementation detail on the PC side its no problem, however if the board is actually sending all that, I can only imagine the batteries giving up sometime soon.
* Connection is annoying! Each time I want to re-run the program, I must press the red discovery button located "conveniently" under the board, next to where the batteries are placed.
Also, if the program is terminated without disconnecting the board and shutting down the bluetooth stack properly, it won't connect the next time...
* Its accurate. (A great thing! but I need to do more exercise oO)
Here's a snippet of some of the readings I got from it by pressing my hand down on the board:
Board found! 001FC5AFCFD2
--Status--
Battery:0.885
LED: true
~~Mass~~
total weight: 2.0945097456241313
Top Left: 0.2508513053348468
Top Right: 0.30131503716409375
Bottom Left: 0.8152753108348135
Bottom Right: 0.727068092290377
~~Mass~~
total weight: 2.323162019423905
Top Left: 0.27014755959137343
Top Right: 0.2624356775300172
Bottom Left: 0.8052101835405565
Bottom Right: 0.9853685987619584
~~Mass~~
total weight: 3.4545152931615912
Top Left: 0.22190692395005673
Top Right: 0.38879359634076616
Bottom Left: 1.0165778567199526
Bottom Right: 1.827236916150816
Subscribe to:
Posts (Atom)