It's a joint problem. The compiler should never switch to a software RNG when a hardware RNG is coded in, and Coinkite should've done something about it when they were told there was an issue.
It's mostly Coinkite's fault because they ignored and banned those that pointed out there was an issue.
...