django-otp supports at least TOTP, static, and HOTP. It also provides a separate packages for YubiKey and Twilio support.
We should figure out a way to make django-allauth-2fa check any appropriate 2FA systems when logging in, not just the totp devices. Some information about this is available in the docs: https://pythonhosted.org/django-otp/overview.html#plugins-and-devices