Yes, it turns the hardware driver problem into a translation problem (translate the hardware manual/datasheet into this protocol.)
Guess what's really good/quick at translating things?
Guess what's really good/quick at translating things?
Also my experience with hardware is that the datasheet is often incomplete or misleading. Most of the time is spend fiddling with the hardware to understand exactly what needs to be done, in what order, and sometimes with what delay between commands, to make the damn thing work reliably in the way you want.