Firmware Development/TODO

These are written when tested Rev.B1. Might be obsolete atm.

= Seppo =
 * Improve socket library
 * Idle and power saving modes

= Goksel =
 * logger

= Tomi =
 * Test microphone input
 * maybe also haptic driver
 * PolarSSL on top of sockets?
 * fine tuning of the GPS code module

= Things that should be tested ASAP =
 * Battery cell voltage measurement (PB0 ADC12_IN8)
 * High voltage input voltage measurement (PC0 ADC12_IN10)
 * Microphone (MEMS_MIC_OUTPUT/PA3 ADC12_IN3)
 * Haptic driver (EN pin high + PWM from MCU to driver, refer datasheet)
 * GSM voice call audio output using speaker (AUDIO_AMP_SHUTDOWN high + start voice call)
 * SDIO (memory card driver)
 * GSM line-in from MCU's DAC (PA5, DAC2_OUT) <500mV peak-to-peak!!! (ask Lauri if more info needed)
 * USB OTG power output (only battery cell or high voltage input attached), power management chip should be able to output up to 1A@5V from the USB port. Refer chip's datasheet for more info.
 * Sleep current consumption measurements (theoretically sleep currents with RTC on down to 17uA is possible to achieve)
 * If possible, try to force GSM module to 1800MHz band (or reduce max power from 2W) when powered directly from 500mA USB port without battery cell

= Manufacturing test plans =
 * Attach USB cable + battery cell + (HV input) + SIM card + memory card + (GPS antenna + GSM antenna) (this should be able to complete without breaking the boards off from the PCB panel)
 * Flash the device using DFU
 * Run the script (virtual com port logs through USB)
 * Measure battery voltage (and high voltage input voltage if decided so)
 * Poll all the I2C chips
 * Identify microSD card
 * (Power on the GSM/GPS and send a text message (with random characters) to own number and continue after received correctly)
 * (Wait for GPS fix if decided so)
 * After the test is completed, upload log file (or just the result) to our server
 * Blink green/red led if the test passed/failed