"I still don't think a 32 bit microcontroller is the right processor for these devices."
Why *not* use a 32 bit microcontroller? The driver is usually cost, not capability. As long as it will do the needed job, you use a 16 bit or even 8 bit controller because it's *cheaper*.
What happens if that's *not* the case, and there isn't a significant cost difference in using a 32 bit core?
The ARM Cortex M-0 mentioned elsewhere is arguably overkill for the stated usage, but the ARM architecture is widely deployed and well understood with an existing toolchain to support development and engineers familiar with it.
What you wind up with is capability you won't use, but you don't care because you get the advantages of familiarity and lower time-to-market at a total price that's probably comparable to using a lesser controller.
I suspect it's host controller architecture agnostic. It's a separate component, communicated with by the host controller over a bus. As long as the host can communicate with it and use the functions it provides, you likely don't *care* about host architecture. It could be ARM, x86, MIPS or something else entirely.
A Book For All Reasons Bernard Cole1 Comment Robert Oshana's recent book "Software Engineering for Embedded Systems (Newnes/Elsevier)," written and edited with Mark Kraeling, is a 'book for all reasons.' At almost 1,200 pages, it ...