2

I have 2 Playstation Buzz! USB controllers, so 8 people can participate in parallel. I also know that these buzzers can be connected to the PC.

Use case: I am doing trainings for all sorts of things (Wireshark, Debugging, ...) After a lesson, I'd like to perform a quiz with the participants. The participants can win small things, e.g. sweets. In the past, I did everything manually, but sometimes discussions arose who were the first to provide the answer. Since all the trainings are deep technical, I thought using the buzzers would be a nice gimmick.

I am now looking for a software that

  • runs on Windows 7 x64 and Windows 10
  • recognizes all controllers (support at least 2)
  • allows the moderator to start a question (make the buzzers ready)
  • finds out the first person that presses the buzzer
  • play a sound when the first buzzer was pressed
  • stops the question (puts buzzers on hold)
  • highlights the buzzer of the person that pressed first (red light)

That's already it. I don't need support of the remaining 4 buttons, since answering the question will be handled by me.

I know Buzzmania, but that's already too automated and I don't want to generate questions in advance. I could not make You don't know JackBuzz work.

1

Wow, I didn't think it would be that easy. I got everything up and running in 45 minutes using the BuzzIO Nuget package for .NET.

Main parts of the application (excerpts):

// Find all handsets (à 4 buttons)
handsets = new BuzzHandsetFinder().FindHandsets().ToList();

// Register event handlers
foreach (var handset in handsets)
{
    handset.ButtonChanged += ButtonPressed;
}

// Set lights of the buttons (this API part is not so convenient)
handset.SetLights(value, value, value, value);

// Check for red button (buzzer button)
for (int buttonNo = 0; buttonNo < 4; buttonNo++)
{
    if (args.Buttons[buttonNo].Red)
    {
         ...
    }
 }

 // Playing sound from embedded resource
 Stream buzzerStream = Resource.buzz;
 buzzPlayer = new SoundPlayer(buzzerStream);
 ...
 buzzPlayer.Play();

Hint for Windows 10: the controller might be installed as "HID-compliant game controller". In this case, the library may not find the connected controllers. To fix that, go to the device manager and switch the driver to "HID-compliant device".

For the Buzzer sound I used Audacity and generated the following sound

  • tone generator 2
  • wave form: sawtooth
  • frequency: 300 to 200 Hz
  • amplitude: 0.8 to 0.8
  • interpolation: linear
  • duration: 0.2 seconds

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.