Tournament Manager Audience Display question

We are attempting to set up a stream for an event in a school gym. Because the WiFi is abysmally horrible, webcam streaming is out of the question. Obviously not allowed to touch wired network, goes without saying. The school uses a LocalLive service for streaming sports events. They have a large camera that they can pan and zoom and a smaller one that always points to a score board. They use a picture in picture approach where the scoreboard is always in a corner. So if we are allowed to use the service (not sure if the school fully understands this is a whole day event, this might be cost prohibitive, but one can only hope…) then perhaps we can point the small camera to an audience display to show match events and scores.

I can’t figure out how to have the Audience display automatically show in-match info, then when match ended switch to the score of the last match scored. It seems that once a match starts it switches from wherever it was to in-match (which is awesome and crucial so grateful for that feature, prevents forgetting to switch) but then when the match is over it just stays there.

Also, the only way I know to advance the info on the Saved Match Results screen is to go into the main TM interface into the scoring tab, right-click last scored match and select “Send to Default Saved Match Results”. It does not automatically increment when a match score is saved.

That’s an awful amount of clicking and razor sharp focus required from the volunteer(s) running TM especially on a fast pace 3 field set. Now I finally understand why at most events the scores displayed on the Audience Display are way out of touch and randomly displayed at weird times lol. As a spectator I always wished the score to be displayed immediately after the refs finished (assuming one head ref who moves from field to field) and before next match started. But now I understand it is not as easy as it sounds.

By the way, so far loving how robust the entire TM system is. It’s just that the event operator interface is a bit clunky and not very friendly.

Is there any other workflow, best practice, tricks I’m missing or this really is the only way to have an up to the minute in match plus score display (always make sure you right clicked a scored match and sent it to the Default Save Match Results then switch the view to Saved Match Results) ?

I definitely don’t envy trying to solve your connection problem. When we stream events, a wired connection is a requirement for us (but we run our bigger events in professional venues, so it’s not really a fair comparison).

Have you considered using mobile data to stream? (assuming there is sufficient signal where you are) It’s not something I normally recommend because other options are usually better, but it might be the best option in your case.

There is a still-growing discord server “VEX Livestream Community”. You might want to reach out there and get some other peoples’ thoughts:

In terms of sending the just-saved match results to the Saved Match box in the field control window, this is supposed to work automatically (and it does for me - I just tested).

Looking at the TM User Guide there is this note on page 27 describing the intended behaviour:

Tip - When you save a match score using the Save Scores button and the match you
are saving is one of the last 2 matches that were in the Match On Field box, then the
match just saved will be automatically placed in the Saved Match box on the field set
window. This saves time during typical usage where the match results are shown either
immediately after the match is played or after the subsequent match is played.

I would suggest making sure you are on the current version of TM (Version 2022_23.2.2), and if that doesn’t work try creating a new test tournament from scratch. Also, just to double-check - are you running TM on Windows or Mac? The software almost always runs better on Windows.

As for automatically changing the Audience Display to show the results once they have been sent to the Saved Match box, I am not aware of any way to do this within TM.

I’m glad you understand why most events have trouble showing up-to-date scores. It always pains me when I see that on a live-stream. We came up with an innovative solution for this at our events: we don’t bother trying. We typically run 3 fields at our major events (both IQ and VRC), and we run them fast enough that we’re well into the next match by the time the score is finalized. For qualification matches at least, we don’t bother trying to showing scores. Teams go and get them from the Pit Display, Vex Via, or RobotEvents. We do show scores for eliminations, since they are a little slower-paced and the score affects who will advance.

The workflow you’ve described probably is the best way to get scores as up-to-date as possible. Although it might be worth asking yourself: do you need to?
If you’re showing rankings on a pit display (assuming widescreen), the scores of recent matches will be shown on the side of the screen, meaning teams have convenient access to them. And if you’re uploading results to RobotEvents/Vex Via, both teams and online viewers can get them there.

Not sure if that would work for you?
Hope all of this helps.


Here is our MS stream - slow pace 5 minute match cycles - Framingham VRC Spin Up January MS Tournament - YouTube

but it is easy to follow the flow:
Camera wide shot with PTZ
Intro on TM
Start match TM displays In Match
Switch to on field camera
end of Match switch to Rankings
(if you have save scores display them, if you have skills challenges display them, if you have music play if gap between matches…)

if running behind schedule, you might skip some save matches …

Our video set up:
1 PTZ camera up high
3 field cameras
1 Raspberry Pi as Audience display overlay mode
Black Magic Design ATEM mini extreme switcher/streamer

Our fields:
Raspberry Pi 3 wired ethernet
VEX V5 Brain running field control application

Our displays:
Competition area:
Two rPi 65" display rankings / elimination brackets
Two projectors taking switcher program output
PIT area:
Two rPi 65" display rankings / elimination brackets
Two 65" displays with Live stream from Competition area

we typically have two people manning operations, one for TM and one for Video. we can run event with one person using Elgato’s Stream Deck (thanks John Holbrook for making plug-in)

We have been running competitions for a while - so this as been building up over time.



Your T/M operator is one of those key volunteers who can make-or-break the smooth flow of the event. If everything were running perfectly, with no scoring glitches or problems, you might be able to automate. But I’ve never seen that happen at one of our events. You don’t want the audience to see a “false” score accidently, so that’s why T/M operator needs to post the score at the right time. If a good flow is going on, the score for a match can be displayed at the end of the next match, and if your M/C are experienced, they will be expecting that to happen. By posting the score after the next match, the scoring referees have time to untangle string, verify scores with the teams etc, while the head referee starts the next match. But if there’s a rules questions, you’ll have a delay waiting for the head ref to come back to the just-scored match and make resolution.

The school won’t even let you plug into a network port with your own equipment? We have all our own T/M and livestream equipement self-contained and portable…plug into the wall, plug one network cable into the venue, and we’re ready to go.

Are you trying to do all this, and be the EP??? Hoping not to sound presumptuous, I think you need to get your T/M and event management in order first, with enough dedicated volunteers, then look at live streaming as a future project. Be sure to network with the other teams in your area that are experienced with hosting events, as they can be a source of help/advice/volunteers too.

If it’s of any help, here’s a paper about our livestream: Team 3547 Livestream Equipment.pdf - Google Drive
We’re currently working on some updates, so this is slightly out-of-date: we’ve added some PTZ cameras to the mix, and we’re needing to upgrade some equipment to handle a “double live stream” for when we do a simultaneous ES/MS IQ event or a simultaneous MS/HS VRC event.


I think the others have already answered this pretty fully, but I just wanted to expand on this: TM switches to the “in match” view because that’s going to be what the TM operator/EP wants nearly 100% of the time, everywhere from a small scrimmage event all the way up to Worlds. Showing the score, on the other hand, is highly variable. Just from this thread you can see different events handle this differently. Some events show the match scores delayed 1 match (play Q10, show score of Q9, play Q11, show score of Q10, etc.). Some events that run a little slower prefer to show the score for the match after it’s done before the next match starts (play Q9, show score Q9, play Q10, show score Q10, etc.). Some events move so fast that they don’t show the score at all. Some events play 3-4 matches in a row, then show all the scores they haven’t shown yet.

Furthermore, back when all this was developed (which is >15 years ago now), the “standard practice” was the announcers would make a big deal about the score. “OK, we have the results in from match Q27, let’s see who came out on top …(dramatic pause)…(reveal score)… AND THE RED TEAM TAKES IT!”. With that kind of presentation, it requires the TM operator to click over to “Saved Match Results” on cue from the announcer. With the increase in match pace and total number of matches I think a lot of events have gotten away from this, though (except for elims). Along those same lines, at some events (especially using overlay mode), the preferred video production is to show a few shots of the alliances and/or field after the match finishes, and then go to a saved score ~10-15 seconds later. Personally I think that looks way better than switching to the saved scores as soon as the buzzer sounds - audience members may want a look at the field on video in its final state, things like that.

The bottom line is we can’t automate things that aren’t done consistently event-to-event. TM is always a tradeoff between trying to give the EP/TM operator lots of control to do things the way they want versus keeping things simple and automating things as much as possible. With all that said, I’ve wondered for a while now if it would be possible to automate the “qualification match drudgery” a bit more for TM operators. We’ll keep thinking about it, though anything done here is likely to cause at least some events to have to switch up how they run things which will probably cause complaints. It’s a tough balance.


I think the ability for one of the scoring referees to start the match on their tablet helps relieve the “drudgery.” We do this about 75% of the time at our events.

Thanks everyone for tips and advice. The support shown is what makes this so awesome.

@kmmohn : I will actually have an EP partner, she will take care of all the admin/logistics and talking to people. I’m the techie type so I will probably take care of wires, make sure everything runs, run TM main and be there when things break. We have a great MC, a seasoned ref, a volunteer to run skills and an entire team of coaches who pretty much run all the events in our area so they can jump in if I do something dumb or have a question. I just have a faulty level of curiosity and when someone tells me “this is how we do this” my very first instinct is to ask “why?” and “how do we do it better?”.

@Dave_Flowerday : Thanks for explanations. I think I understand the reasons behind how stuff works better now. Would it be possible to add just a score option to the pit display? Maybe a large format display that shows let’s say the last 3 scored matches or something like that? Yes I know you can see scores on the rankings display but would be nice to have an extra display with high visibility big fonts etc for scores alone. I actually find the pit display feature to be incredibly flexible as you can create many logical displays and have the ability to control what goes on on screens that are not affected by the audience display / fields logic. You can also have a volunteer working the different pit displays while not under the extreme pressure of the main TM operator who has to queue, start matches, click autonomous winner, save scores etc… Sorry, just “thinking out loud”. And thanks. I’ll say it again now (before actually going through the curses of running an event when my opinion might change lol) - I’m loving how robust you built this thing and how it can adapt and expand depending on size and resources. Impressive. Any plans for a Linux version (so I don’t have to live in horror hoping a Windows update will not mess everything up)?


This CAN be automated with the TM OBS Switcher program by MayorMonty (GitHub - MayorMonty/tm-obs-switcher: Manages automatic switching for events that use Tournament Manager). This chief functionality of this program is that it talks to OBS and TM and auto-switches between fields for each match. It also automates the switching of the Audience Display in TM. The standard mode of operation is that three seconds after a match is concluded, it will switch the Audience Display in TM to the Saved Match Results. Then when a new match is queued, it switches to the Intro display as well as switches the scenes in OBS. Even if you cannot use your own cameras to stream, you could have OBS running and this program could automate your Audience Display. It also switches to Rankings after every 5 matches (if you want it to). My TM operators now only need to save the match results and then queue the next match after the results have been displayed after a few seconds. The refs start the matches at the fields with the scoring tablets.

The Saved Match Results will auto-increment to the next saved match, but there is one specific TM state that prevents this: if you have the Saved Match Results being displayed on the Audience Display when you save the next match result, it will not increment to the next saved match in the Saved Match Display. I have always assumed this is a failsafe feature that prevents you from accidentally revealing a saved score before you intend to do so. The workflow I teach my TM volunteer is to always wait until the next match is running to save the previous match score, so that score will be ready to display after the next match. The TM OBS Switcher tool automates the display of the Saved Match Results 3 seconds after a match ends, and then queuing of the next match brings up the Intro for the match.

It is unfortunate that you can’t get access to the internet through the building network. Ideally what you would get is one network jack that can send you out to the internet, bypassing everything else in the local infrastructure. Then you could connect your own router and switch and run your own local network. I don’t know for sure, but I wouldn’t be surprised if they are already doing exactly that for the LocalLive setup they have. I know many of those live sports streaming setups need a straight out connection and it is easier for IT to send them out bypassing filters and firewalls instead of poking wholes in the network.


At most of our events, everything is done on tablets by the referees & scorekeepers (queuing, start match & scoring). It’s not just easier, I think it produces a far better experience when all of those things are done by the volunteers who are stood at the field and actually interacting with teams. It’s also faster, and removes the need for coordination with a TM operator (which is often difficult in a noisy environment).

And for many of our events, the approval of remote submitted scores is automated. In those cases our TM computer is actually unattended for most of the event, and no-one has to be subjected to that drudgery.

@district9 If you haven’t already considered it, I highly recommend moving as much of these tasks as possible to tablets (or other mobile devices) used by referees/scorekeepers. One of the best things we ever did.

@Dave_Flowerday Thanks for providing your perspective on things. Any chance you could explain why remote scores even need to be approved by the TM operator? I’ve always thought it was a needless impediment. I certainly don’t check the scores submitted - I fully trust our referees & scorekeepers, and they usually know more about the game than I do.

1 Like

Can you share some info about how you do this?


Alas, not native for iOS devices with TM Mobile - have to use web browser interface :frowning:

Hard agree about implementing tablets massively reducing the drudgery for TM operators. I would love to hear how you are able to automate approving scores. We typically leave the TM computer unattended most of the day and have a scorekeeper referee come back and approve scores in a batch every couple of matches.

An upcoming update to the switcher introduces ATEM control and, as a side benefit, allows you to run the switcher without connecting to either OBS or an ATEM. The code for this is actually on GitHub and works pretty well, I’ve tested it a couple of times, but I’ve had trouble building it as an executable. Those users who are more technically inclined are welcome to run it from source, and get those features!

I am targeting an updated build around my spring event held Feb 4th which should include these updated features.


Yep, it’s needless and I’ve been making that argument for a while now. The good news is we plan to address this very soon.

When TM Mobile was added, I think the thought process was that the person sitting at the TM laptop would still be the official scorekeeper and thus be the person to double-check the scores after they were submitted (initially TM Mobile may not have flagged invalid scores too? I don’t quite remember.). Obviously like you said that doesn’t really happen, and really didn’t happen even before TM Mobile except to notify refs if TM flagged a score as invalid (scorekeepers just entered whatever was on the ref paper mostly).


David, you guys always have a keen sense of what is needed and understandably release it when it is appropriate. It is a pleasure to run events and have TM do much of the heavy lifting.

Wishlist for iOS remote queueing and start of matches (field controls native in Android…) - and it would be nice if rPi port of TM - you guys have that development tool chain down pat, and how to maintain state (I can see it get ugly with with mobile devices having scores and reset of TM server in the middle of everything) … I can dream :slight_smile:

This season has been good with SBC devices - Internet Of TM :slight_smile:

“Needless” until one of the scorekeeping ref’s either forgets to submit (and the T/M operator is there to “yell” at them), or when they are accidently scoring the wrong match, and the T/M is the last guy to see that the correct match just got scored. I will be a holdout that having a good t/m operator remains essential for a smooth running competition.

1 Like

@holbrook @MayorMonty @lacsap I have a piece of custom software which handles all of our automation needs: score approval, control of our ATEM Switchers, control of the lighting rig (via Freestyler DMX and a USB adapter), plus supporting additional custom displays that go beyond what TM provides.

Approving remote scores is, unfortunately, the hardest part of this. There is no way to do this via the TM webserver, it can only be done via the TM user interface (or by breaking into the TM network protocol, which is something I refuse to do).

Essentially, every [x] seconds it uses the windows api to locate the match treeview component within the TM UI and take a screenshot of that area of the screen. It then searches that screenshot for shades of grey that match the “submitted, but not approved” icon. Once found, click it to select that match in the UI then click the Save Scores button to approve it. If this sounds like a horrible way to do this, it is! But it works.

Sounds like they might be removing the need for approval of remote scores soon anyway - nothing would make me happier. Actually, @Dave_Flowerday, not sure how you plan to address it, but if there could just be a checkbox somewhere in the options to toggle automatic approval, that would allow people to still use the feature if they wanted.

@kmmohn While that is always a risk, it can still happen with a TM operator in place. We’ve been using this approach for years, so we’re comfortable with the risk level. As an example: at our NZ IQ Nationals in December, we ran 232 teamwork matches across ES & MS. Only 2 matches were initially not submitted, and we were able to resolve it fairly quickly. TM is still my responsibility, even if I am not sitting there constantly monitoring it - I picked up the error shortly after it happened and brought it to the ref’s attention. I don’t remember how many matches were submitted but required corrections - I think it was 1 or 2, and in these cases the ref/scorekeeper themselves came over to tell me they hit the wrong button.

At any rate - given that we have the ability to automate it, I think it would be rather cruel to have a volunteer whose sole job was to sit there for two whole days and just check scores as they come in.



Two quick points, at the beginning of the season we get weird points. (These are IQ points YMMV) so teams got double for dumping a blue dispenser (10 points) and then all of then in the blue zone ( 20 points), so a quick sanity check is fine.

Later on in high pressure matches when teams want to see the exact scoring, having a TM person there to look the match up helps. We give each team two “Score Check” coupons they can use to check an exact score. It’s not in the EP “Do this” but it’s cut down on the millions of teams that ask HEY HOW DID THEY GET THAT.

But @BenEllery if you want to fly me to NZ to sit at the TM table where I can see all the matches for two days and have nice summer weather (vs cold, rainy Philly Weather) plus visit one of my favorite places on the planet (I lived in the Wellington suburb of Brooklyn) I’m in.

1 Like

I assume the validation step will just be eliminated and not be an option. The great thing about options is they provide flexibility for the user. The awful thing about options is it requires us to regularly test both options. There are so many options and features in TM that rarely (never?) get used, so we try to reduce or eliminate them whenever possible.

1 Like

@MayorMonty : Brendan, your code is awesome and I’m not even using what you made it for (streaming). I tried a fake tournament and it does exactly what I needed with a bit of an error. It does not show the “Intro” screen after pushing Queue Next Match but instead goes directly to the “In-Match” display. The “intro” is super useful for announcers as it shows team names. The program is displaying a “switching to scene undefined” which tells me it’s not finding the name for the scene. I’m to scared to go poke around your code, have to host soon but maybe you have a quick dirty fix. Attaching screenshot.