Help Centre
Log in Get Started
Toggle theme
Log in Get Started
Adding your first switch

Adding your first switch

Step-by-step: from "I have a Shelly in my hand" to "it shows up Online in the dashboard". Takes about 5 minutes.

3 min read
Updated May 12, 2026
Switches

This walks you through pairing your first physical device. We'll use a Shelly Mini Gen3 as the example, but the steps are identical for any Gen2/Gen3 Shelly.

Info

You need the device powered up and on a Wi-Fi network with internet before you start. The Shelly app or the device's own AP mode covers Wi-Fi onboarding — that part is outside dynamik.app.

</div>
## Before you begin

You'll need:

  • The Shelly device's "device ID" — looks like shelly1minig3-aabbccdd1234. Find it on the device's local web page (http://<device-ip>/) under Settings → Connectivity → MQTT in the MQTT prefix field. Same string you'll see as the Client ID.
  • The device's local IP address — typically your router's DHCP table shows it, or the Shelly app.
  • Access to a dynamik.app project with permission to add switches (your manager workspace, manage_company_settings role).

Step 1 — Add the switch in dynamik.app

  1. 1

    Go to Projects → open the project this device will live on.

  2. 2

    Click the Switches tab.

  3. 3

    Click Add Switch.

  4. 4

    Fill in:

  5. 5

    Click Save.

A modal pops up with the MQTT credentials we just generated for this device. **Copy them now** — the password is shown only once.
Warning

The password is bcrypt-hashed on save, and we keep only the hash. If you close the modal without copying, you'll need to click Regenerate Credentials later, which forces you to re-enter them on the device.

</div>
## Step 2 — Configure the Shelly

Open the device's local web UI in a browser (http://<device-ip>/):

  1. 1

    Go to Settings → Connectivity → MQTT.

  2. 2

    Enable MQTT → on.

  3. 3

    Connection type → choose TLS without client certificate.

  4. 4

    Servermqtt.dynamik.app:8883

  5. 5

    MQTT prefix → leave it as the default (it's the device ID). Don't change this.

  6. 6

    Client ID → also leave default.

  7. 7

    Username → paste from the dynamik.app modal.

  8. 8

    Password → paste from the dynamik.app modal.

  9. 9

    Tick Enable RPC over MQTT.

  10. 10

    Tick RPC status notifications over MQTT — essential, the device won't broadcast state changes without it.

  11. 11

    Click Save settings.

The device reboots (~5 seconds). Within 30 seconds the badge in dynamik.app transitions from **⚠ Offline** to **● ON** or **○ OFF** with no page refresh needed.

Step 3 — Try toggling

In dynamik.app, click the power icon next to the switch row. You should hear an audible click on the device, and the badge flips state.

Now press the physical button on the Shelly. The dashboard updates within a second — no refresh — and the action shows up in the Activity modal as "State changed externally" with no causer (meaning: not done from the app).

Success

You're done. Every toggle from now on — yours, your team's, the client's, or the physical button — gets logged and broadcast in real time.

</div>
Next: [Configuring access for clients](/switches/giving-clients-portal-access).