Sound the fanfare, we finally have a fully functional haptic harness!
It's by no means perfect, and half of it is still held together with tape (though it is black electrical tape now, which is far classier than masking tape), but hey, at least it does something.
We performed our first user test today. Our victim/participant did make it through our entire test course, after much circling and aimless wandering and pauses for confusion. The whole process was really quite helpful. Whereas before we were just kind of working on nitpicky little tasks without a strong sense of direction, the user test immediately pinpointed loads of things that need to be fixed. Structural modifications for the vest, signals that were unclear, suggestions as to how to better document our proceedings, etc.
The only downside of testing: it is far, far too hot outside for such shenanigans.
That's going to be our main issue when testing, methinks. Because the GPS can't get a clear signal when traveling between tall buildings, we have to test out in the open, where the shining Texan sun can smile (evilly) down upon us as we meander along our (too lengthy) course. It is really ridiculously hot in the middle of the day to do such things, and our poor participant today had an excellent harness-shaped sweat stain on his back, lovely. We'll have to perform our tests earlier in the day or in the evening, after the sun has set. It's far too unpleasant to do anything else. We'll never get any participants, and the IRB (the board responsible for keeping research from doing harm to their test subjects) will be on our back when all of our subjects die from heat stroke (or skin cancer, your pick).
But hey, again... IT WORKS. Pats on the back all around.
Wednesday, June 29, 2011
Tuesday, June 21, 2011
Almost There... Just Kidding.
The past week or so has been a rather large struggle.
We're falling farther and farther behind, unfortunately. An essential part of this project is the user testing: when we check to see if the technology we've created is actually intuitive and user-friendly... of course, we also want to make sure that it works, period.
Problem is, it doesn't.
We've been exceedingly close to being able to test, but every day we find another small bug in the program that keeps the haptic vest from being fully functional, and it takes us forever and a bit to figure out how to fix it.
To top it all off, one of my lab-mates (I will not say who, of course) managed to fry the compass we use to get the wearer's bearing, which sets us back even more, as now we have to wait while another compass is being ordered. Excellence. We have the compass built in to the Android phone to use in the meantime, but this just means we'll have to waste more time in the future re-integrating the other compass back into the program once we get it.
But, for now, I think we've managed to work through the bug that was holding us back today, so hopefully we'll be able to test first thing tomorrow.
Of course, we thought we'd be able to do that this morning.
And last Friday.
And the day before that.
Oh well, c'est la vie. We'll see tomorrow, fingers crossed.
We're falling farther and farther behind, unfortunately. An essential part of this project is the user testing: when we check to see if the technology we've created is actually intuitive and user-friendly... of course, we also want to make sure that it works, period.
Problem is, it doesn't.
We've been exceedingly close to being able to test, but every day we find another small bug in the program that keeps the haptic vest from being fully functional, and it takes us forever and a bit to figure out how to fix it.
To top it all off, one of my lab-mates (I will not say who, of course) managed to fry the compass we use to get the wearer's bearing, which sets us back even more, as now we have to wait while another compass is being ordered. Excellence. We have the compass built in to the Android phone to use in the meantime, but this just means we'll have to waste more time in the future re-integrating the other compass back into the program once we get it.
But, for now, I think we've managed to work through the bug that was holding us back today, so hopefully we'll be able to test first thing tomorrow.
Of course, we thought we'd be able to do that this morning.
And last Friday.
And the day before that.
Oh well, c'est la vie. We'll see tomorrow, fingers crossed.
Monday, June 13, 2011
Where Am I?
The good news: I've managed to finish setting up the GPS, the location recognition, the distance calculations, and all other GPS-ly things in the Android code. Success!
The bad (annoying) news: I can't get the stupid GPS coordinates to set up a test course.
What I'm trying to do is get the coordinates at several points around the lab building, so that the course can be a very basic rectangle that moves the user around the building. Problem is, when I'm trying to acquire the coordinates from my phone, the phone can't make up it's mind as to where it actually is in the world. It's like trying to figure out where in the world Carmen Sandiego is, except Carmen isn't entirely sure where she is either. If that example is even relevant anymore. If you have no idea what I'm talking about, here. You're missing out.
If I stand in one place long enough, the GPS coordinates begin to creep and steadily increase the longer I stay there. The differences come down to changes in the ten-thousandths place, which seems trivially small, but when we take into account the kind of precision I'm trying to achieve, along with the size of the world and this measurement system, those slight variations can add up to a rather significant problem. I don't want to be told that I'm standing 28 meters from my starting location... as I stand on the exact spot where I began taking coordinates. Bah.
(Okay, the main issue is that I have to stand on these spots for an extremely long time, and I like walking around barefoot. Standing for a very long time in one place at 4 in the afternoon on asphalt in Texan heat = burned feet. But I don't want to sound too whiny.)
At least everything else is working out fine and dandy-like. Hopefully we'll be able to get a prototype shirt up and running so we can finally begin testing on subjects. Mufufufu.
The bad (annoying) news: I can't get the stupid GPS coordinates to set up a test course.
What I'm trying to do is get the coordinates at several points around the lab building, so that the course can be a very basic rectangle that moves the user around the building. Problem is, when I'm trying to acquire the coordinates from my phone, the phone can't make up it's mind as to where it actually is in the world. It's like trying to figure out where in the world Carmen Sandiego is, except Carmen isn't entirely sure where she is either. If that example is even relevant anymore. If you have no idea what I'm talking about, here. You're missing out.
If I stand in one place long enough, the GPS coordinates begin to creep and steadily increase the longer I stay there. The differences come down to changes in the ten-thousandths place, which seems trivially small, but when we take into account the kind of precision I'm trying to achieve, along with the size of the world and this measurement system, those slight variations can add up to a rather significant problem. I don't want to be told that I'm standing 28 meters from my starting location... as I stand on the exact spot where I began taking coordinates. Bah.
(Okay, the main issue is that I have to stand on these spots for an extremely long time, and I like walking around barefoot. Standing for a very long time in one place at 4 in the afternoon on asphalt in Texan heat = burned feet. But I don't want to sound too whiny.)
At least everything else is working out fine and dandy-like. Hopefully we'll be able to get a prototype shirt up and running so we can finally begin testing on subjects. Mufufufu.
Thursday, June 9, 2011
To the Left, to the Left
This week has been the equivalent of jumping into a very large pool full of code-I-do-not-understand, if such a thing were possible.
But never fear, I'm learning how to swim (though there were several near-drowning experiences earlier in the week).
We've begun to build our Android code from scratch, in a haphazard sort of way. None of the undergrads in my research team have any experience coding Android applications, so we've all been assigning pseudo-tasks to each other, then wandering off and familiarizing ourselves with all things Android, some related to our tasks, some not. At least, that's what I've been doing.
I've been attempting to figure out how to work with the GPS in Android phones. I made a small application that has a preset course, tells the user their current GPS coordinates every few seconds, and tells them the next destination they should go to once they reach a waypoint in the course. Well, theoretically. After a few days, all I've managed to do is
Again, success.
Now, I'm working to implement all of what I've learned (the few shreds of knowledge) into our official Android code. Should be interesting.
Until we meet again!
But never fear, I'm learning how to swim (though there were several near-drowning experiences earlier in the week).
We've begun to build our Android code from scratch, in a haphazard sort of way. None of the undergrads in my research team have any experience coding Android applications, so we've all been assigning pseudo-tasks to each other, then wandering off and familiarizing ourselves with all things Android, some related to our tasks, some not. At least, that's what I've been doing.
I've been attempting to figure out how to work with the GPS in Android phones. I made a small application that has a preset course, tells the user their current GPS coordinates every few seconds, and tells them the next destination they should go to once they reach a waypoint in the course. Well, theoretically. After a few days, all I've managed to do is
- Create a program that doesn't crash once asked to do something (anything).
- Make it print out text... without crashing... a wild success! (I'm a noob, I know)
- Recognize and alert the user as to their current location
Again, success.
Now, I'm working to implement all of what I've learned (the few shreds of knowledge) into our official Android code. Should be interesting.
Until we meet again!
Monday, June 6, 2011
Rocket Science
Hello all! Welcome to the compilation of all my ingenious ideas and activities, AKA my research journal for the summer. Here, I'll be documenting my research experience with DREU in the Computer Science and Engineering department of Texas A&M.
There will be laughing, there will be crying, there may be explosions, and occasionally there may be wild successes (can't guarantee that last one, though). Mostly, I will be rambling about myself and my fellow undergrad researchers sitting in front of computers and attempting to make something (anything) happen.
Stay tuned!
There will be laughing, there will be crying, there may be explosions, and occasionally there may be wild successes (can't guarantee that last one, though). Mostly, I will be rambling about myself and my fellow undergrad researchers sitting in front of computers and attempting to make something (anything) happen.
Stay tuned!
Subscribe to:
Posts (Atom)