# Matter QPG6200 Thermostat Example Application

## Thermostat

A thermostat example application showing the use of
[Matter](https://github.com/project-chip/connectedhomeip) on the Qorvo QPG6200
can be found in this folder.

## Qorvo SDK

More detailed information on the Qorvo SDK can be found in the
[Qorvo Matter SDK](https://gitlab.com/qorvo_sdk/public/devkits/qpg6200-iot-sdk).

## More information

For more information on our product line and support options, please visit
[www.qorvo.com](https://www.qorvo.com) or contact us at <LPW.support@qorvo.com>
