Control PowerPoint with AutoHotkey v2

I am on a mission to master the control of PowerPoint during my presentations. I ZoomTeams, and share my screen a lot. I often communicate business ideas via slides and love being able to give effective presentations. My biggest issue in a multi monitor setup is flipping back and forth from Zoom or Teams to PowerPoint and having my presentation lose focus. I then go to advance the slides and nothing happens. I then Alt+Tab to find my slideshow and try again. I want to advance my slides no matter what window is in focus. My solution involves a wireless presenter remote and the AutoHotkey v2 utility for Windows. You can reproduce this configuration with any HID device like a footswitch or even an Arduino or an Elgato Stream Deck.

My previous attempts worked out well, but I recently found out that AutoHotkey has changed their configuration files and the project now defaults to AutoHotkey v2 with AutoHotkey v1/v1.1 being deprecated. I have updated my tutorial to AutoHotkey v2.

Norwii Presenter Remote for PowerPoint

Big picture. We are going to install the Norwii Presenter software, configure the buttons on the presenter remote, and create a custom AutoHotkey v2 script to intercept the button presses and send them to PowerPoint. If you don’t do this, the presenter remote will only work when PowerPoint is in focus. That works well in some situations, but it doesn’t work as well for online meetings where you are moving around your desktop to monitor the chat, look a response, or find a document.

Buy a Norwii Presenter Remote on Amazon. I like the Norwii N28 model with its not easy to miss big button for advancing slides, but the other models are lovely too. The N28 is wireless and most buttons are customizable. I also like this model since it uses a AAA battery instead of a rechargeable battery. The rechargeable model sounds like a good idea, but I have found out that it is always dead when you want to use it. With the replaceable battery model, you just replace the battery if it is dead. From my experience and usage, the AAA battery lasts almost a year.

Install the Norwii Presenter Utility for Windows. This software has the driver for the wireless dongle and also a tool for remapping the buttons of your remote to new buttons. You can remap all of the buttons (except the laser pointer button). The software is not necessarily easy to use, but it gets the job done. Other presentation remotes lack the ability to be reprogrammed. This is why I love the Norwii models.

Customize the Norwii Presenter buttons. Click on the Customize tab in the utility and make sure N28 (M) is selected as the model. Under each key configure the short press function for each mapping that you have in AutoHotkey (more on that in a moment). The big yellow button is known as the “Page down” key. I use Shift + F12 to advance my slides in PowerPoint. you can do the other buttons if you like. I have experimented with programing all of the buttons to advance the slides. That way I don’t have to fumble around trying to pick the right button in the heat of the moment. But, I have expanded this to backing up a slide (page up key) and exiting the presentation with the enter key. I practiced a few times to get this right. Let me know in the comments what works for you.

Norwii Presenter Software Configuration
Norwii Presenter Button Configuration Mapped to Key Bindings

Also, make sure that the Norwii Presenter Utility starts up with Windows. This will make sure that the utility is running in the background after you reboot to install Windows updates. Click the Setup tab and select, “Start Norwii Presenter after Windows startup.”

Norwill Utility Setup

Install and configure AutoHotkey. We are going to use an awesome utility for Windows PCs called AutoHotkey. This utility listen for your custom key presses redirects the controls to PowerPoint. Let me warn you now ff this is your first time using AutoHotkey. You are going to get addicted to automation. YOU HAVE BEEN WARNED.

Install AutoHotkey v2 on your Windows PC. AHK will run in the background waiting for keyboard commands that match the rules that you have created. For help, check out the documentation and the Hello World video on YouTube. I know, it will be daunting at first, but a community of people for the last decade have been creating videos, examples, and tutorials. You just might be inspired to automate other computing tasks. My goal is to map Shift+F12 and Shift+F11 to Page Up and Page Down. Page Up and Page Down are keyboard shortcuts for PowerPoint.

  1. Right-click on your desktop
  2. Find “New” in the menu
  3. Click “AutoHotkey Script” inside the “New” menu
  4. Name it PowerPoint.ahk
  5. Right-click on PowerPoint.ahk and click “Edit Script”
  6. Enter the this AutoHotkey 2 code and save the file:
#Requires AutoHotkey v2.0

;; Key Bindings for AutoHotkey v2 and PowerPoint
;; nothans.com/powerpoint

; Bind to Shift+F12 - Advance slide or start presenting from the last slide
+F12::
{    
    if WinExist("PowerPoint Slide Show")
    {
        WinActivate
        Send "{PgDn}"
        return
    }
    else
    {
        if WinExist("ahk_exe POWERPNT.EXE") {
             WinActivate
	     Send "+{F5}"	
        }        
        return
    }
}

; Bind to Shift+F11 - Go back one slide
+F11::
{
    if WinExist("PowerPoint Slide Show")
    {
        WinActivate
        Send "{PgUp}"
        return
    }

    return
}

; Bind to Shift+F8 - Exit slideshow
+F8::
{       
    if WinExist("PowerPoint Slide Show")
    {
        WinActivate
        Send "{Esc}"
	return
    }

    return
}

; Bind to Shift+F7 - Advance slide or start presenting from the first slide
+F7::
{    
    if WinExist("PowerPoint Slide Show")
    {
        WinActivate
        Send "{PgDn}"
        return
    }
    else
    {
        if WinExist("ahk_exe POWERPNT.EXE") {
             WinActivate
	     Send "{F5}"	
        }        
        return
    }
}

For more AutoHotkey button mappings, check out my GitHub repository.

Use your new power to deliver the ultimate PowerPoint presentation. Now that you are all powerful, open PowerPoint and click the big yellow button on the Norwii N28 remote. This will put your presentation into presentation mode. Click the big yellow button again. Your slides or animations advance. Click it again. Your slides advance. It is a beautiful thing.

PowerPoint Control with AutoHotkey v2

Elgato Stream Deck Control

You can use the same AutoHotkey v2 configuration to control PowerPoint from the Elgato Stream Deck or Elgato Stream Deck Pedal as well.

  1. Open up the Stream Deck Software and search for “Hotkey”

2. Drag the Hotkey option to an open button

3. Click into the Hotkey field and wait for it say, “Observing keystrokes…”, and press Shift+F12

4. Rename the title to, “Advance”, and set the icon to the forward icon

Completed Elgato Stream Deck Button for PowerPoint

5. Create Stream Deck hotkeys for the rest of the key bindings in your AutoHotkey v2 configuration and enjoy the power!

Controlling PowerPoint with Stream Deck and AutoHotkey (demo)

Let me know in the comments if you try this out. Also, let me know if you have some tricks for PowerPoint or other Windows apps. I am always looking to optimize.

2 comments

  1. Thank you for sharing this utility… I have been trying to workout how I can control an app when it is no longer in ‘focus’ and your article has shown a way forward…. more than that, it has introduced me (about time too 🙂 ) to scripting…

    Steve

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.