The device is quite simple: a microcontroller (PIC18F25K22), an ESP8266, a GPS module, a nice LCD and a keypad.
In normal operation, the display shows the speed, total fart count, heading, number of satellites used and HDOP. The last two are not very uselfull, it's just fun to see them.
The case comes from a cheap solar light. The GPS module (GY NEO6MV2) is housed inside this case with it's antenna. I replaced the GPS's on board battery because it was dead. This battery help the receiver to recover from a power failure with either a Hotstart or a Warmstart (depending on the duration of VCC outage). The LCD is a monochrome one used in "reverse video" to minimize glare at night. It has a high contrast for a better visibility in full sunlight.
When a fart is released a simple press on the star key log the coordinates/speed/heading and then a simple survey is displayed. The star key is a good choice because the symbol itself looks like... you know... every mammal's "farts output port".
The survey is only 2 simple questions to get some "farting stats": what was I thinking at that moment? What was the fart size? The survey is optional: a quick fart log can be done with a simple press on the star key and then zero.
But the most interesting is the GPS fart heading and speed: do I usually fart turning my back to some places/country? Do I fart more at high speeds?
Unfortunately my device was not ready when I got my new car so the first "farting" month doesn't have any GPS and survey data. That's about 45 farts.
Uploading farts to the cloud
The data is manually uploaded to https://data.sparkfun.com/ every friday. I like this cloud service because you can do burst uploads. I like the idea of "burst" uploading my farts to the cloud...
The main board is a DirtyPCB I have designed as a universal IOT platform. It can handle an ESP8266 ESP-01 or a ESP-07 on a breakout board. The microcontroller is a PIC18F25K22 running PicBASIC code (more on this in the FAQ).
The circuit is powered by the car's infotainment system's USB port.
The data is imported to a MSAccess database to do some computing and generate a TAB file. The TAB file is then mapped on Google Maps using GPS Visualiser. This service is great and I'll donate for sure!