This module enables both U2F and TOTP Authentication (like Gitlab). Therefore, users can use their TOTP instead if they don't have their U2F device.
Difference between enabled both U2F and TOTP is that only one page is displayed instead of displaying first a choice menu.
In the manager (second factors), you just have to enable it:
This module has no self-registration. You have to use U2F and TOTP self registration modules. Example: suppose you want to allow U2F registration only if a TOTP secret is registered:
$_2fDevices =~ /“type”:\s*“TOTP”/s
Automatically, U2F registration will be hidden for unregistered TOTP users and displayed then.