Using the viper 8khz make the WindowServer buggy in a way. As it can't handle as much event as what is send.
So I ended up trying to change polling rate unfortunately it wasn't working. openrazer already start working on it a bit openrazer/openrazer#1426.
I've tried to adapt it here the work isn't 100% finished but it's a good base start.