Giter VIP home page Giter VIP logo

teamsmutebutton's Introduction

Microsoft Teams Mute Button!

Mute Button demonstration during a Microsoft Teams call

Build an easy-to-reach pushbutton to mute/unmute yourself while on a Microsoft Teams call! Because 2020.

This project uses an Adafruit Circuit Playground Express (CPX) and a large pushbutton to create a mute button for Microsoft Teams via the hot key command "Ctrl + Shift + m".

  • Skill level: Beginner
  • Estimated Build Time: 5 - 10 min
  • Estimated Cost: $30

Materials

Software

  • Arduino IDE (or VS Code w/ Arduino extension)

Build Instructions

  1. Connect the bottom pushbutton terminal to CPX pin A1.

  2. Connect the bottom side pushbutton terminal to CPX 3.3V pin.

  3. Plug in the microUSB cable between the CPX and your computer.

  4. Optional: Build a simple case for your button.

    I used a sturdy cardboard box for this -- cut a hole in the top, secure the button, and adhere the CPX to the front for easy access!

That's it!

Software Instructions

  1. Download this repo, or copy and paste the code in "TeamsMuteButton" folder called "TeamsMuteButton.ino".

  2. Open the Arduino IDE (download for free here) and open (or paste) the "TeamsMuteButton.ino" file.

  3. Open the Boards Manager (under Tools --> Board) and install the Arduino SAMD Boards.

  4. Once the boards are installed, suggested to restart Arduino IDE. Then go back to Tools--> Boards and select "Adafruit Circuit Playground Express" from the "Arduino SAMD (32-Bits ARM Cortex-M0+) Boards" option.

  5. Select the port your CPX is connected to (under Tools --> Port).

  6. Upload the code to the CPX (click the arrow key on the shortcut menu).

  7. When the code is finished uploading, check that the program works by moving the slide switch to the left (towards CPX Button A) and pressing the pushbutton.

    You should see the red LED on the CPX turn on, and the command should open the Arduino Serial Monitor.

  8. Once it's working as expected, you're ready to deploy! Use the slide switch to enable/disable the button.

Note: The pushbutton triggers the keyboard "CTRL + Shift + M" keys, which does different things in different apps. The mute function will only work if you're actively using Teams.

Troubleshooting

  1. Check the alligator clip connections between the pushbutton and CPX.
    • Ensure you're using the proper Pushbutton leads
    • Check that you're connected to CPX pin A1.
  2. Use the Serial Monitor to check the CPX slide switch status. When it is enabled, it will print "Ready to mute!" to the Serial Monitor.
  3. Use the Serial Monitor to check if the pushbutton is getting triggered. When it is pressed and read by the CPX, it will print "Pressed" to the Serial Monitor.
  4. Questions or other problems? Please open an issue or reach out to us: [email protected]

Going Further

  • This is simple prototype designed to help you get a mute button up and running as fast as possible. Want a more permanent solution? Awesome! Here are some tips:

    1. Replace the CPX with a smaller and more robust M0 board, like the Arduinno Nano 33 IoT.

      Note: You will need to change the wiring and add a resistor. Here's a helpful overview.

    2. Solder wires between the pushbutton and microcontroller, and/or coat in hot glue or epoxy.

    3. Build an enclosure for the pushbutton and microcontroller, or adhere to the side of your desk.

  • Use the Microsoft Teams API mute call to write a more complex program that can mute/unmute Teams even if you aren't actively using it!

Happy Making!

Contributing

This project welcomes contributions and suggestions. Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit https://cla.opensource.microsoft.com.

When you submit a pull request, a CLA bot will automatically determine whether you need to provide a CLA and decorate the PR appropriately (e.g., status check, comment). Simply follow the instructions provided by the bot. You will only need to do this once across all repos using our CLA.

This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact [email protected] with any additional questions or comments.

Trademarks

This project may contain trademarks or logos for projects, products, or services. Authorized use of Microsoft trademarks or logos is subject to and must follow Microsoft's Trademark & Brand Guidelines. Use of Microsoft trademarks or logos in modified versions of this project must not cause confusion or imply Microsoft sponsorship. Any use of third-party trademarks or logos are subject to those third-party's policies.

teamsmutebutton's People

Contributors

jenfoxbot avatar microsoftopensource avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

teamsmutebutton's Issues

System-wide generic mic/mute and video/webcam disable

Is it just me or should there be a couple generic and system-wide Windows mic mute/unmute and video/webcam disable/enable hotkeys? And they should work even when Teams is NOT the active/focused app. If it's generic then other 3rd party conferencing apps (i.e. Zoom, etc) could also react to these hotkeys too. In addition, projects like this would continue to work under these conditions. Vote this up! ;)

Mute Status

Is there an Microsoft Graph / Teams API or some other mechanism to show whether am muted in the current meeting (if logged in to a meeting)?
I am now using an Adafruit trinkey with a nice tactile switch to mute the call - flip side is that it sometimes get accidentally pressed and I end up being unmuted (especially during my toddler's classes on Teams :) )
Question is, will it be possible to read the Mute status of the current team's call? The Trinkey has a Color changing Neopixel - I can then somehow write a helper utility on the PC that can change the status color of the LED On the Button - kind of like a proper closed loop system. Press the key, it sends the required key codes and in return get ths current status.
Any Ideas / Inputs?

Hot-key overlays

I am passing this on in case someone else hits this. I have an AMD GPU. The included software is pretty invasive. It has hot keys enabled by default. When testing my mute button I could not figure out where in the world the small window was coming from that kept showing my hardware statistics. Every time I tried my button I would get either mute or the window. It finally dawned on me that it was showing me mostly graphics hardware data which led me to the Radeon Software window. You have to either disable their hotkey mappings or uninstall that UI. UGH.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.