As the designer of your application, just because your users are saying one thing, doesn't always mean they mean exactly that.
More often than not, users tend to say one thing, but do another. Don't ask them what they don't like. Instead, watch them and then have them speak out their mind.
The reason why I bring this up is because if you allow a "contains text" functionality, this will cause far more frustration for the users:
What if they just type A because they want Apple and Asus, but it will enable all As. They will have to start unchecking everything.
What I understood your users are saying is that the interface isn't easy to use. Rather than hiding brands and devices, why not allow those filters to be exposed always?
When I worked at a well known company's web team, we had filters that were thrown all the way below the fold to the right which made our user base not know we had filters and those who used it were unhappy with the way it worked. So we redesigned it to be on the top of the page (ever present) and revealed the most used filter so that they could automatically click it without extra work.
Why not go towards that approach and reveal your filters immediately with a "save filters" button that implements all their filters? Try that and see what happens, because my gut instinct is telling me that your users feel like your current filter system isn't easy to use.