As I am living in a very old "castle" with really huge walls, I never ever had GPS signal, so what I got via UART was garbage most of the time. I simply ignored the fact that I cannot make GPS related code run in the homeworks and lived with it. In the end, this course was not about GPS solely, so for me it was not really a showstopper.
HI Brent -
I've had the same thought lately - there are plenty of people who could not participate in the course due to cost (of the hardware), and while the wiring, the soldering and physical setup of the hardware is a critical component of the learning (at least, I thought so), the course might have broader appeal using emulated devices too.
I'm pretty sure this is possible - at least, it was in older versions of the Java ME SDK. Definitely something I'll look into later. Further, a simulated GPS could model actual travel from point A to point B, and simulated temperature devices could model significant changes in temperature in the container, etc.
I was able to get good consistent readings from the GPS when using the USB to Serial TTL connection and placed in a window, however when plugged into the breadboard and placed in the same position by the window, or even positioned outdoors in the open for a few hours, the GPS would not obtain a fix at all. Even after numerous reboots and leaving it in the window for a day or two. So I only used it plugged into USB, though I would have liked to have it work on the breadboard as well.
I may someday purchase the external antenna and see if that resolves the problem.
P.S. When clicking on Create above I see there is an option for a Poll, am assuming you can create one there.
Like Markus, I live in a house with thick walls and a very solid tin roof. Any attempt to put the GPS outside and in the clear was stymied by no egress for power and network cables. So once I proved to myself I was able to read the GPS I simply got my midlets to substitute fake data into the readings. In one sense it was annoying, but in another sense it improved my learning. I'm quite glad the GPS was included, if only because I learnt a bit more about the GPS system, and also have the potential to use it going forward
Well, let me share what my friend does. For me, I can read the signal at home, though not quite stable.
He is not able to catch the signal at home too. So he do all the programming first (not difficult when compared with the pressure sensor), then he just go outdoor. With :
- Respberry Pi + GPS with the phone external battery.
- Laptop with 3+ hours power.
- Smart phone that can share WiFi.
So he can catch up the signal, proved it worked, and finished the labs!
The only concern is: those passed by people will look at you while you are typing on a laptop with a box blinking next to you, thinking if you are making a bomb right there
Initially I was going to buy the antenna suggested by Andy, however I managed to resolve the matter by doing the following:
1) Place the GPS an arms length away from possible work station interference such as wireless mouse or wireless router (works better than it used to having it close, got this idea from of Adafruit forums).
2) Place the GPS close to a window, in my case on a windowsill where the Pi has a wireless connection to a home router (works the best, GPS lock in less than 5 mins).
Both the setup above are done using the cobbler on the breadboard (so no USB involvement at all). If all else fails (assuming you don't have a faulty GPS module), then the antenna approach is probably the way to go as it really depends on your environment.
I think an embedded course with content like this one, without some soldering and working with hardware modules will not be as fun, educational and exciting (note I am speaking from a first time experience after doing this course). I really enjoyed the course and it feels like going back to undergrad CS 101 practical lab session days. I would hate doing it all on an emulator after seeing what Java ME can do for real on embedded devices. The hardware from the recommended kit can be reused for other projects so its worth the investment.
However, if you like a suggestion, perhaps structure a simpler but separate course/tutorial that would teach basic Java ME 8 embedded API fundamentals on emulator that is not so much involved like this one.
I agree, don't ditch the "good stuff"! I think you have to experience the electronics part of the course to fully appreciate it.
I don't even like my suggestion on the simulator other than a way to keep people from losing heart in the middle of the course. I ran into all sorts of strange and inconsistent errors based on whatever junk came out of the GPS device. That is, of course, something that is real-life and should be handled, but perhaps not in the training course.
Just throwing out support for how much I enjoyed the hands-on parts of the class.