The schema you described seems reasonable for modeling IOT data. However, I see that you are creating a time-series collection, but have two additional non-time series collections. You can merge them into one ie, making the device and variable collection as metadata. Here’s how the time series collection will then look like:
Please note that your actual query performance, however, will also depend on the queries that you will be using. A general rule of thumb while doing schema design in MongoDB is that you should design your database in a way that the most common queries can be satisfied by querying a single collection, even when this means that you will have some redundancy in your database. Thus, it may be beneficial to work from the required queries first, making it as simple as possible, and let the schema design follow the query pattern.