A couple of reasons I prefer a single table:
(1) with multiple tables you'll almost always be performing unions and you pay for the core data multiple times
(2) you can easily optimize for a subset of attributes or a combination of devices and attributes with indexes and use sparse columns to minimize wasted space
I wrote a bit about EAV here - it is by no means perfect but we used it to solve many performance problems (at the cost of others) at my previous job.