I do recommend this approach, it will make things more efficient so that systems that don’t need to know about certain content won’t have to deal with it at all.
It does also make sense to have an “All” or “Shared” custom site for the things that are mostly common to all. You would not be gaining efficiency by having the same content in multiple non-overlapping custom sites. It is best to put it at a shared level.
If you have a lot of shared content, you might consider further breaking it down by OS as well, so you might have:
If you have a lot of content for particular manufacturer, then you might also have something like:
Really any time you have a large enough body of content that can be grouped together in such a way as to exclude most non-relevant endpoints from it in an easy way, then it makes sense to do.