Team Time Clock - Open source?

I am thinking of implementing a team time clock to keep track of who was where when, and just to reflect on the amount of time spent for documentation for many reasons.

  1. To see how much time the team collectively spent
  2. Document for 3rd party data.
  3. Member activity

What we need is something simple since we are not actually doing payroll. I know we could do it with one computer in the Lab/Shop but convenience often determines the buy in. So a Mobil app with GPS functionality is desired. Additionally, or ideally free. Perhaps I am asking too much. Do anyone have something like this they use?

Any insight?


Any reason setting up a raspi with a card reader wouldnt work? I know theres a couple how-to guides for that somewhere…

I probably would but like I said, trying to make it as streamline as possible and would rather not have to remind everyone to swipe in. Additionally If some team member are doing work at home at night or weekend (programming or CAD) then the one location model wont work.

We’ve been using a (very old) version of Ticketing 4 Schools for attendance and scheduling documentation. It’s worked pretty well for us, but it’s equally effective to just have a sign-in sheet for what we use.

We’re working on updates to it this summer but lots of teams are using it successfully.

Swiping in is a lot easier than GPS stuff and it becomes habit for the students with little effort.


Our team used this and it seemed to work well. When people came in the door they scanned and then scanned out when they left. The data can be exported onto a flash drive and opens on a excel spreadsheet.](“”)

We use a google form. Super simple, super free. Here’s a copy you can look at/steal use etc. I’d suggest using a data validation field instead of the long Multiple Choice option for numbers, but at the time we made it we didn’t realize we had that option. Simple is better. And I’d tell kids to round to the nearest hour for simplicity.
We also worked up a ‘leader board’ that’s just a pivot table that collects the three categories we used and summarizes by student ID and sorts by total. We can (and do) use the data as ways to prioritize students attending competitions and for other things.

We use TeamApp as our communication system, so we set up a ‘button’ on the main screen for the Time Card and another button for the Leader Board. It helps with that friendly competition.

We’ve been using this for a few years:

A message consisting of “GTFO” will sign out all the students who are signed in.

Im sold.

Your best bet may be Google sheets/forms for that then.

This is what 294 has been running on a rPi computer for about 4 years. It can either use a CSV file as backed or connect to a backend database via HTTP. It shows photos of the signed in students if available.

We have a custom time clock written by our non-robot-software department, where each member has a 2-4 digit ID number that they enter to clock in and out. We’re revising it over the summer, and plan to have an easily-packaged version for other teams to use prior to kickoff next year.

We use:

I talked to the owner, and they have sponsored us for free for a few years now. We link them as a sponsor on our website or anywhere else we can promote them. You can get an App for your phone to use it as well and does support GPS login, though we never do that because I hate to ask our team people to enable GPS on their phone, so everyone just logins from their phone or a computer when they get to the shop (if they remember…) The only think I wished it had was a LOG OUT everyone button…it does a lot of extra stuff an FRC team doesn’t need like vacation days, a tracks payroll but also took a bit to setup the admin stuff behind the scene.

Extremely easy solution is to just have a clock in and clock out Google Form. But that’s no fun.

We looked at a bunch of different options a few years ago and just weren’t really happy with any of them. Most stuff was just far too complicated for what we wanted to accomplish.

In the end, we settled on “write your name on the whiteboard when you come in, and write the time you leave next to it when you go out.” And then I would just transcribe in into a spreadsheet. Boring, annoying, but worked for our purposes.

I have been working on a all encompassing portal for my team 2363, Triple Helix. The main part is hours tracking, but we have integrating annual registration and tracking of payment of dues, STIMS/TIMS registration, paperwork…, Tracking event registration to the point of tracking who can drive to events, who goes in which car, hotel rooms… I have integrated Slack for notifications and am working on email as well. I am in the process of making a demo site for people to view, here is the url There isn’t any data yet but i plan to populate with fake data.

Right now it pulls users from a google sheet/form that all students/mentors are required to fill out each year. This counts as their annual registration and imports any new students into the system.

Yeah. We have a bunch of Python scripts that pull data from the Microsoft Access database.

It does the job.

I am looking into a similar solution for my team, and it seems like there might be some ways to accomplish this via Google Forms and/or Google Sheets. My biggest struggle is I don’t just need to know when someone showed up and the total number of hours worked–we also track when someone leaves for safety purposes so I need a solution that clocks people out too. I posted a similar thread yesterday and got some of the same responses you did. After the one response of a Google Form, I started looking around on-line to see what else is out there that uses Google Forms for this purpose and found a few tutorials on YouTube. Our team meeting is today so I’m going to take some of that time to watch them and see if any of the are feasible and fit our needs. If so, I’ll report back with links.

Please see my post earlier in the thread. I have been working on a portal for hours tracking and much more. Students and Mentors sign in/out with a PIN. I have a cronjob that deletes any sign-in that hasn’t signed out after 12 hours as well as slack integration where if someone has’t signed out within 15 min of normal meeting time, it will send them a slack message and they can sign out using slack. Please browse the demo site in the above post. Please let me know what you think.

This web app is in active development.

User creds are below
email: [email protected]

email: [email protected]
pass: admin

Sample metrics provided:

I’m going throw out some ideas, but overall it is outstanding and my main thoughts are about how to implement this. Mostly about whether I should have a local station or rely on students logging in on their own devices?

First, my additional thoughts about the time being correct and trust for students not to cheat the system. I wasn’t finding where times could be edited, if they are incorrect, so making that simpler/more apparent would be helpful. I’m used to timesheets (one for each date) so maybe organizing that way with a page that has for one day the students, logged time, etc.
and being able to go back by date, might let you easily see any time discrepancies. Having editable fields for time/date, so that several entries can be corrected at once (in the same thought, maybe backing up the data daily would be good for security reasons). I’m not sure, signed in (but not signed out) students show up in the Time Management tab, but if not, a “signed in” list would be useful.

Next, you’ve done well to make it customizable for teams. I am thinking without multiple schools, it might be interesting to re-purpose that for squads (small groups). “Schools” could be an editable label for such purposes. Letting you add/delete event categories is another customization you could add.

Furthering customization, I thought about how this would help track lettering requirements, which sometimes are attending a % of events, attending a % of subteam meetings, or possibly an event point system. For that you’d like to easily access the events attended, then maybe calculate the % of that event category attended. For user accounts, students could add a subteam which then it would show attendance % of those meetings. You could also add a point field to events to let that be specified. Making these easily seen for each student and also to have a “missing attendance” request for the events would mimic the missing hours request.

So right now, they way for students to not cheat the system is that and Admin has to authorize signin on a device. This creates a token that gets sent with the sign in/out requests. This prevents someone from signing in from home. A future feature will to be allow remote sign in if the team wants that functionality. One thought is allow students to sign in on their phone and that sends a slack message to the mentors/admins to approve the sign in. Thoughts??

The other ideas i like and will have to look into how the best way to do them.