- Profile: every 13 minutes
between 08:00 and 23:00
- Launch task: Request time log
- Profile: on command from AutoPebble
- Launch task: Log time
- Task: Request time log
- Show a screen on Pebble via AutoPebble
- Type: List
- Contents: %OPTIONS
- Vibration pattern: 300, 200, 300
- Task: Log time
- Save "%DATE, %RESPONSE" into a CSV file.
- Variable: %OPTIONS
- hn, work, eating, foodprep, hobbyproj, ...
Running a tool like this on smartwatch is a win, because it's minimally distracting, and easy to use for everything I do daily. As said elsewhere, I picked 13 minutes to have something below 15 minutes that won't accidentally overlap with periodic tasks or generate regular patterns on the clock. I used to have a bit of randomization in there (skip Request time log if random%2 == 0), but it turned out to be more annoying than useful, as it would frequently miss an hour worth of data.I made it one afternoon in a grand total of ~30 minutes (including debugging and testing). It requires no Internet connection, doesn't spy on me, I can use it anywhere I am as long as I have my phone in my pocket, I get to own my data in a machine-readable format, which I can trivially send out to my desktop for processing later. Overall, it's a win, and just an example of Tasker being amazingly useful tool in general.
EDIT:
Some extra use notes:
- The logged time is the time I selected an option on my smartwatch, so if I delay or miss a time log request, nothing bad happens. I don't expect my CSV to have perfectly regular entries.
- If I don't select an option in 13 minutes, the prompt will be overwritten by new one; again, nothing bad happens.
- To add, change or remove options, I simply edit the %OPTIONS variable on my phone.
- In the rare case when I select a wrong option, I pull up my phone and use nano in Termux session to quickly edit the CSV directly.