# Defining device settings runtime

**URL:** <https://community.homey.app/t/defining-device-settings-runtime/128018>\
**Category:** Developers\
**Tags:** devices\
**Created:** [January 16, 2025, 9:38pm UTC](https://community.homey.app/t/defining-device-settings-runtime/128018 "2025-01-16T21:38:01Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![enodis](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/enodis/32/122569_2.png) [@enodis](https://community.homey.app/u/enodis)\
**Post date:** [January 16, 2025, 9:38pm UTC](https://community.homey.app/t/defining-device-settings-runtime/128018/1 "2025-01-16T21:38:01Z")

</div>

Hi. I want to define the device settings at runtime, not having them predefined in the json file. Is that possible? Thanks.

---

<div class="post-metadata">

**Author:** ![robertklep](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/robertklep/32/160628_2.png) [@robertklep](https://community.homey.app/u/robertklep)\
**Post date:** [January 17, 2025, 6:13am UTC](https://community.homey.app/t/defining-device-settings-runtime/128018/2 "2025-01-17T06:13:36Z")

</div>

> **[Device - Homey Apps SDK v3](https://apps-sdk-v3.developer.homey.app/Device.html#setSettings)**

---

<div class="post-metadata">

**Author:** ![enodis](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/enodis/32/122569_2.png) [@enodis](https://community.homey.app/u/enodis)\
**Post date:** [January 18, 2025, 7:54am UTC](https://community.homey.app/t/defining-device-settings-runtime/128018/3 "2025-01-18T07:54:45Z")

</div>

Thank you. Unfortunately I don’t get it to work. What I want to do is programmatically add a few settings without having to add a driver.settings.compose.json file since I don’t know the number of, and name of, the settings at build time.

Could you provide a code example using the API you referred to? I have tried to provide an array of settings or a single setting but nothing seem to work in my case. It will not be included in the device’s settings at all for me.

Thank you!

---

<div class="post-metadata">

**Author:** ![RonnyW](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/ronnyw/32/10879_2.png) [@RonnyW](https://community.homey.app/u/RonnyW)\
**Post date:** [January 18, 2025, 6:47pm UTC](https://community.homey.app/t/defining-device-settings-runtime/128018/5 "2025-01-18T18:47:38Z")

</div>

You can only use settings that are defined in driver.compose.json.  
The mobile app/web app dynamically created the settings view based on these settings.

I don’t know a way to add further settings programmatically without adding them to driver json.

---

<div class="post-metadata">

**Author:** ![enodis](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/enodis/32/122569_2.png) [@enodis](https://community.homey.app/u/enodis)\
**Post date:** [January 20, 2025, 12:20pm UTC](https://community.homey.app/t/defining-device-settings-runtime/128018/6 "2025-01-20T12:20:33Z")

</div>

Ok thanks!

---

<div class="post-metadata">

**Author:** ![RonnyW](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/ronnyw/32/10879_2.png) [@RonnyW](https://community.homey.app/u/RonnyW)\
**Post date:** [January 20, 2025, 12:29pm UTC](https://community.homey.app/t/defining-device-settings-runtime/128018/7 "2025-01-20T12:29:47Z")

</div>

btw… If you need complex device settings, you can use the “repair” view. There you can use html to create custom (special) settings.
