Monday, November 21, 2011

Mon., Nov. 21st

This is a short week due to Thanksgiving.  Some things to tackle:
  1. [/] Get GPS module acquiring satellites again.
  2. [/] Disable CTU debugging output under control of a slider switch.
  3. [/] Burn working CTU design to DE3 board.
  4. [ ] Maybe experiment with faster clock for GPS timing edge capture in CTU app.
  5. [ ] Start writing up some notes on Python server code for use by Cp.E. students.
Working now on satellite acquisition.  Using UwTerminal, I streamed command files to select the default configuration.  Then I hooked up the kit to the PC via USB and attempted to initialize using the approximate site coordinates in minutes & seconds (30*25' N, 84*17' W) and the current system time (14:50 EST).  I briefly saw a satellite flicker from gray into red once or twice, but not enough to get any coordinates or even download an updated almanac?  Although I'm not sure about the latter b/c the satellites are moving slowly.

Aha, finally got a fix after letting it sit for a while.  Now, let's see if I can switch into my custom config and start the GPS app...  Here are the steps for that:

  1. Turn off debug stream with "$PDME,13,5,0" command.
  2. Exit GPS kit eval app.
  3. Plug in PC's COM1 cable with null modem back into NMEA port.  (With left switch in left position.)
  4. UwTerminal at 4800, no flow control.
  5. Plug in 6V adapter, unplug USB (it interferes with serial).
  6. Stream C:\Users\Mike\Documents\My Dropbox\FAMU\COSMICi\GPS FPGA app\NMEA command files\NMEA-off.txt
  7. Next, show-backup.txt.  Yes, custom config is still in flash.
  8. Next, select-backup.txt.
  9. Next, hot-start.txt, & switch baud rate to 115,200.
  10. Unplug COM1 cable.
  11. Plug in pin 24 of J5 from DE3, power on DE3, unplug AC adapter.  That works!
  12. At this point you can burn the Quartus .sof file to start the design running.
At this point, I added the capability to switch off the debug output.  I added a new PIO from the slider switches and added macros PRINTF() and PRINTF_R() to check that slider switch 1 is up before sending any output.  This worked.

Next we (Darryl is here) tried burning the design to the board (to the EPCS device) so it would run automatically on power-up.  This worked, but 20 seconds was (in this test) not quite long enough for the Wi-Fi to finish starting up.  Changed it to 30 seconds (for now) and added a countdown display on the 7-segment digits so that the user doesn't get too impatient.

We also cleaned up the formatting a bit on the NMEA-formatted output.  There is a minor existing weirdness where it doesn't finish receiving & processing the WIFI_READY message (from just before the script main loop is entered) until a subsequent command line is typed.  Maybe I didn't terminate that line properly?  Anyway, go back and figure that out someday.  Everything else works fine.

    No comments:

    Post a Comment