Setup Guide

MOTIONSENSR + DAKboard

Turn a family room PC into a photo and calendar kiosk that wakes when someone walks in, shows DAKboard when idle, and sleeps when everyone leaves. Fully automatic.

In this guide
  1. What you're building
  2. What you need
  3. Configure MOTIONSENSR
  4. Set up DAKboard
  5. Install the AutoHotkey script
  6. Configure the AHK script
  7. Get the timing right
  8. Test it
  9. Troubleshooting

1. What you're building

The end result: a PC in your living room (or kitchen, or hallway) that shows a fullscreen DAKboard photo calendar whenever no one's using it. When someone walks into the room, the PC wakes up from sleep and the display comes on. When the PC sits idle for a few minutes, DAKboard takes over the screen automatically. When everyone leaves and the room goes quiet, the PC puts itself to sleep.

MOTIONSENSR handles the physical presence detection: wake on motion, sleep on no motion. A small AutoHotkey script handles the software side: launching DAKboard when the desktop is idle, and dismissing it when someone shakes the mouse.

Motion detectedMOTIONSENSR sends PAUSE
PC wakesscreen turns on
Desktop idle 9 minAHK launches DAKboard
No motion 10 minMOTIONSENSR sends SYSTEM_SLEEP
Mouse shaken 0.6sAHK dismisses DAKboard
Desktop restoredback to normal use

2. What you need

MOTIONSENSR, plugged into a USB port on your PC. motionsensr.com

A DAKboard account (free tier works fine). Set up a screen at dakboard.com with your photos, calendar, and whatever else you want to show.

AutoHotkey v2, a free lightweight scripting tool for Windows. Download from autohotkey.com. Make sure you install v2, not v1.

Microsoft Edge, pre-installed on Windows. The script uses Edge's --app= mode to open DAKboard in a clean, chromeless fullscreen window. You can adapt this for Chrome if you prefer.

3. Configure MOTIONSENSR

Plug in MOTIONSENSR. A drive called MOTIONSENSR will appear. Open CONFIG.TXT and set it to:

mod =
key = PAUSE
light_on_motion = 1
cooldown_ms = 10000
nomotion_enabled = 1
nomotion_after_ms = 600000
nomotion_mod =
nomotion_key = SYSTEM_SLEEP

Save the file. The LED blinks green to confirm. Here's what each setting does in this setup:

SettingValueWhy
key PAUSE Wakes the PC without interfering with any app. PAUSE is ignored by virtually all software, so it won't scroll pages, dismiss dialogs, or type into text fields.
cooldown_ms 10000 Sends PAUSE at most once every 10 seconds. This keeps the OS idle timers reset while someone is in the room, without spamming the keyboard buffer.
nomotion_enabled 1 Turns on the auto-sleep feature.
nomotion_after_ms 600000 10 minutes of no motion before sleep fires. This should be longer than the AHK idle threshold (see timing section).
nomotion_key SYSTEM_SLEEP Sends a USB HID System Control sleep command directly to the OS. No software needed for this. The device puts the PC to sleep all by itself.
Key point
MOTIONSENSR handles system sleep directly. You should disable your OS's built-in sleep/standby timer (set it to "Never" in Power Settings) so the two don't fight each other. Let the device be the only thing putting the PC to sleep.

Disable the lock screen on wake

By default, Windows shows a lock/password screen every time the PC wakes from sleep. That defeats the purpose of a kiosk. You want DAKboard to appear instantly, not a "Enter your PIN" prompt. You need to disable this for the setup to work seamlessly.

1

Open Settings → Accounts → Sign-in options.

2

Under "Require sign-in" (or "If you've been away, when should Windows require you to sign in again?"), change it to Never.

Security tradeoff
Disabling the lock screen means anyone who walks up to the PC can use it without a password. This is fine for a shared family room kiosk, but don't do this on a PC with sensitive data or in a shared office. This setup is designed for a dedicated display PC where convenience matters more than access control.

4. Set up DAKboard

If you haven't already, create a screen at dakboard.com. Add your Google Photos album, calendar, weather, whatever you like. Once your screen looks good, grab the private URL for your screen. It looks something like:

https://dakboard.com/screen/uuid/xxxxxxxx-xxxx-xxxx-xxxxxxxxxxxx

You'll paste this into the AHK script in the next step.

5. Install the AutoHotkey script

Download the script: dakboard_idle_kiosk_v3.ahk

Save it somewhere permanent on your PC (e.g. C:\Scripts\). Double-click to run it. You'll see a small green "H" icon in your system tray, which means it's running.

Start on boot (optional but recommended)

To have the script start automatically when Windows boots, create a shortcut to the .ahk file and place it in your Startup folder:

1

Press Win + R, type shell:startup, and hit Enter.

2

Create a shortcut to dakboard_idle_kiosk_v3.ahk and drop it in that folder.

The script will now launch every time you log in.

6. Configure the AHK script

Open dakboard_idle_kiosk_v3.ahk in any text editor. The configuration section is at the top:

; ----------------------------
; USER CONFIGURATION
; ----------------------------
IdleMinutes := 9

DakURL   := "https://dakboard.com/screen/uuid/YOUR-UUID-HERE"
EdgeExe  := "msedge.exe"
DakTitleHint := "DAKboard"
SettingWhat to change
DakURL Paste your DAKboard screen's private URL here. This is the only setting you must change.
IdleMinutes How long the desktop must be idle before DAKboard launches. Default: 9 minutes. Must be shorter than MOTIONSENSR's nomotion_after_ms (see timing section).
EdgeExe Leave as msedge.exe for Edge. Change to chrome.exe if you prefer Chrome.
RequiredMoveSeconds How long you need to shake the mouse to dismiss DAKboard. Default: 0.6 seconds. Increase if DAKboard dismisses too easily (e.g. from vibration or a bumped desk).

Save the file and re-run the script (or right-click the tray icon and choose Reload Script).

7. Get the timing right

The timing relationship between the AHK idle threshold and the MOTIONSENSR no-motion timer is the most important thing to get right. The rule is simple:

The golden rule
AHK idle threshold < MOTIONSENSR nomotion_after_ms
DAKboard must always be the foreground app before the device triggers sleep. That way, when the PC wakes up, DAKboard is the first thing on screen and not your desktop or whatever app you had open.

With the defaults:

AHK idle: 9 minDAKboard takes over
+1 min laterstill quiet
MOTIONSENSR: 10 minSYSTEM_SLEEP fires

This gives a 1-minute buffer. DAKboard is on screen for a minute before the PC sleeps. When someone walks in and wakes the PC, they see the photo calendar immediately.

Why the script is PAUSE-aware

There's a subtlety: MOTIONSENSR sends the PAUSE key every 10 seconds while someone is in the room. Windows counts PAUSE as keyboard activity, which would normally reset the idle timer and prevent DAKboard from ever launching while people are present.

The v3 script solves this. It maintains its own "real keyboard idle" timer that ignores PAUSE keypresses from the sensor. This way, if you're sitting in the room but not touching the keyboard or mouse, DAKboard still activates after 9 minutes, even though MOTIONSENSR is pressing PAUSE every few seconds to keep the PC from sleeping.

This is the "desktop idle with people present" case: the room isn't empty (so the PC shouldn't sleep), but no one's using the computer (so it should show the photo calendar).

Also disable the OS standby timer
Since MOTIONSENSR handles sleep directly via SYSTEM_SLEEP, you don't need (and shouldn't use) the Windows built-in standby/sleep timer. Go to Settings → System → Power & sleep and set "Sleep" to Never. This prevents conflicts where both the OS and the device are trying to put the PC to sleep on different schedules.

8. Test it

Once everything is configured, walk through each scenario to make sure it works:

1

Wake test. Put the PC to sleep manually (Start → Sleep). Walk in front of MOTIONSENSR. The PC should wake up within a few seconds.

2

DAKboard launch test. Stop using the keyboard and mouse. Don't leave the room (keep triggering the sensor). After 9 minutes, DAKboard should take over the screen in fullscreen.

3

Dismiss test. Shake the mouse for about 0.6 seconds. DAKboard should close and your previous window should be restored.

4

Sleep test. Leave the room. After 10 minutes of no motion, MOTIONSENSR should put the PC to sleep. (You can temporarily lower nomotion_after_ms to 60000 for testing, which is 1 minute.)

5

Full cycle. Leave the room and let it sleep. Walk back in. The PC should wake and show DAKboard immediately (since it was the last foreground app).

Quick testing tip
For faster iteration, you can also press Ctrl+F12 to force-launch DAKboard immediately, without waiting for the idle timer. This hotkey is built into the script.

9. Troubleshooting

PC doesn't wake from sleep

Make sure "Allow this device to wake the computer" is enabled for the USB keyboard in Device Manager. Find Keyboards → HID Keyboard Device, right-click → Properties → Power Management tab, and check the box. You may also need to enable "USB Wake Support" in your BIOS settings.

PC wakes but shows a lock screen instead of DAKboard

Windows requires a password/PIN after waking from sleep by default. You need to disable this for the kiosk to work. See "Disable the lock screen on wake" in the configuration section above. Go to Settings → Accounts → Sign-in options and set "Require sign-in" to Never.

DAKboard never launches (even after 9 minutes idle)

If MOTIONSENSR is pressing PAUSE every 10 seconds, make sure you're running the v3 script (not v2). The v3 script has PAUSE-aware idle detection. The v2 script counts PAUSE as real keyboard activity and will never trigger while the sensor is active.

DAKboard launches and immediately dismisses

The script has a 2-second grace period after takeover to ignore input jitter. If DAKboard is still dismissing too quickly, increase GraceAfterTakeoverMs in the script (e.g. to 3000).

DAKboard opens on the wrong monitor

The script uses MoveToPrimaryWorkArea to position DAKboard on your primary display. Make sure your kiosk monitor is set as the primary display in Windows Display Settings.

PC sleeps while I'm using it

This means MOTIONSENSR can't see you. Check the sensor's line of sight. The PIR sensor detects motion in about a 100° cone, 3–5 meters range. Reposition the device so it faces the area where you sit. Also check that nomotion_after_ms isn't set too low.

The PAUSE key is interfering with something

PAUSE is deliberately chosen because almost nothing uses it. But if you have software that responds to PAUSE (some debuggers and media players do), you can change key in CONFIG.TXT to another unused key like F13 (which doesn't even exist on most keyboards). If you do, update the AHK script's hotkey handler from ~*Pause:: to ~*F13::.