Mooltipass BLE Internal Clock

83 views
Skip to first unread message

Ian Kelly

unread,
Aug 14, 2021, 3:11:14 AM8/14/21
to mooltipass
I have a problem with the time , six days ago I connected my Mooltipass BLE to Moolticute and updated the time and fully charged the battery. I then disconnected and tested the TOTP whilst comparing the results with my Yubico Authenticator and they all matched up fine, although the Moolticute was about 2 seconds out so the transition between the new codes was not the same but very usable.
A couple of days later I did the same test, without connecting to Moolticute to update the time, and the codes were never the same, the clock on the Mooltipass was so far out that the TOTP was unusable. I ran the test a couple of times later, ensuring that the battery was charged, this was done by using a battery bank, with the same results.
Today I connected the Mooltipass to Moolticute and the TOTP worked fine.
I then did the following test:
Setup:
Connected Mooltipass to Moolticute and updated the time
Ran Authy and Yubico Authenticator at the same time and on the same monitor.
set up a stop watch to keep track of time.
Started the stop watch when the above authenticators started their 30 second display of codes and made a note of the code.
Three different accounts with 2Fa were used
Viewed the credentials on the Mooltipass BLE and when the code noted above appeared on the Mooltipass I stopped the stopwatch and noted the time difference.
Results:
Test 1. 1154hrs.2 Seconds (This was immediately after disconnection from Moolticute)
Test 2. 1200hrs.3 Seconds
Test 3. 1234hrs.71 Seconds
Test 4. 1235hrs.71 Seconds
Test 5. 1237hrs.82 Seconds
Test 6. 1253hrs.105 Seconds
Test 7. 1300hrs. 117 Seconds
Test 8. 1310hrs. 134 Seconds
Test 9.  1400hrs. 172 Seconds
               1405hrs. Connected Mooltipass to Multicute to update time
Test 10. 1410hrs. 3 Seconds

I was wondering if there was any way to view the time or change it manually on the Mooltipass BLE without having to connect to Moolticute.
I also noted in the logs that when the Mooltipass is connected to Moolticute the time in the log refers to the time in moolticute and not the time present in the Mooltipass. 
I have the logs available if you want them.

Regards

Ian

mathieu...@gmail.com

unread,
Aug 14, 2021, 3:18:03 AM8/14/21
to Ian Kelly, mooltipass
Hello Ian,

As mentioned we're actually working on improving this (by using the bluetooth transceiver crystal instead of our internal, low-precision one) but it's also important to note that while the device fetches the time for moolticute upon connection, moolticute also regularly sends the time in order for the Mini BLE to "self-calibrate" by discovering its current time offset and then storing a self-correction value.
If during your test the device was only connected once to your computer for a couple of minutes, the self-calibration mechanism doesn't kick in. I'd therefore be curious if you could do the same test, but after having left your device connected to moolticute for 3 hours first as it's what we did during the development process. However (and I just remember about this) we are not remembering that calibration value across reboots (I've therefore just created a todo list item).
Right now you can't see the time on the Mini BLE but I could send you a special firmware update to access the debug menu to do so.

Mathieu

--
You received this message because you are subscribed to the Google Groups "mooltipass" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mooltipass+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/mooltipass/9723389c-a32c-4d6d-8e3c-f1be6ab54663n%40googlegroups.com.

Ian Kelly

unread,
Aug 15, 2021, 2:27:26 AM8/15/21
to mooltipass

Hi Mathieu,

Thanks for your prompt reply. Yes please, I would like the special firmware to allow me to see the Mooltipass BLE time . Will this allow me to see the time on the actual device or only in the debug files.
On the point of the self calibration can you confirm that this calibration will only be valid whilst the Mooltipass has power. If the battery went flat would the calibration be lost and the unit would have to be reconnected to moolticute to retrieve the time and leave connected for 3 hours to complete the self calibration. Is there any way to do time correction via bluetooth connection to a phone or can it only be done using Moolticute.
I have rerun the tests after connecting the Mooltipass to Moolticute for 4,5 hours and the first test (Test 1) being done whilst it was still connected  to the PC running Moolticute, the PC was configured not to hibernate or go to sleep:

1015hrs: Connect Mooltipass BLE to Moolticute.
Test 1: 1444hrs.....4 seconds
1445hrs: Disconnect Mooltipass BLE from Moolticute
Test 2: 1450hrs.....6 seconds
Test 3: 1520hrs.....25 seconds
Test 4: 1630hrs.....143 seconds
Test 5: 1645hrs.....160 seconds
1700hrs: Connected Mooltipass BLE to Moolticute
Test 6: 1705hrs.....6 seconds


The above indicate that the Mooltipass BLE lost 160 seconds over the two hour period 1445-1645hrs
yesterdays tests between 1200-1400 hrs showed a loss of 172 seconds

Do you  think there may be something wrong with my unit.

Mathieu Stephan

unread,
Aug 15, 2021, 2:33:36 AM8/15/21
to mooltipass
Hello Ian,

Cool! Can you send me a private message with your device's serial number?
The calibration is indeed lost across reboots (I have no idea why, I'll change this in the coming days) and a re-connection is indeed needed for the Mini BLE to get the time again using Moolticute.
Thanks for the updated tests! This is not ideal indeed. In theory our calibration routines should compensate for this, independently of the hardware.
Can you perhaps re-run the test, without disconnecting the device and just stopping moolticute?

I'm currently organizing a new mass production batch as we're out of stock but want to get to this ASAP.
Mathieu
Reply all
Reply to author
Forward
0 new messages