https://help.salesforce.com/articleView?id=connected_app_manage_session_policies.htm&type=5
Just to make sure. This is where you would set the timeout value for the Connected App:
Otherwise, it'll take the value of the Profile session settings for timeout and then the Org settings.
You can control how long a user’s session lasts by setting the timeout value for the connected app, user profile, or org’s session settings (in that order). If you don’t set a value or you select None (the default), Salesforce uses the timeout value in the user’s profile. If the user’s profile doesn’t specify a timeout value, Salesforce uses the timeout value in the org’s Session Settings.
The other important question is how you're testing? Be aware of how Salesforce determines whether a user is still active or not as it won't be exactly 15 minutes depending on the circumstances:
The last active session time value isn’t updated until halfway through the timeout period. So if you have a 30-minute timeout, the system doesn’t check for activity until 15 minutes have passed. For example, if you update a record after 10 minutes, the last active session time value isn’t updated because there was no activity after 15 minutes. You’re logged out in 20 more minutes (30 minutes total), because the last active session time wasn’t updated. Suppose that you update a record after 20 minutes. That’s 5 minutes after the last active session time is checked. Your timeout resets, and you have another 30 minutes before being logged out, for a total of 50 minutes.