FMS-OBS Integration

First, some background. I’m working out details on upgrades to our broadcasting equipment at the Michigan Advanced Robotics Competition this year. I’d like to develop a more advanced audience display to integrate into Open Broadcaster for the web stream (and hopefully displays at the event itself), but I’m going to need some help in order to achieve it.

I’m looking for anyone who has knowledge of FMS to discuss possibilities for hooking into its match data in real-time. I know that the system runs on an MSSQL database and in the worst case I might be able to get the admins to create a read-only user and tie into that. I’m hoping to find out if there are more convenient event-based hooks in the software, however.

I know that custom audience displays are possible - we used one a couple years ago, but it displayed locally and we had to use a scan converter to fetch the video signal from FMS. I want to explore the possibility of expanding upon that with a daemon that will transmit data across the local network, so that hopefully we have an easily customizable display that we can run in HD.

So, if you know anything about this topic, any replies would be greatly appreciated. If this isn’t something we can talk about in the open, I’m open to private messages as well.

Please keep in mind that this is all just ideas at this point. If we don’t have time to get and test the equipment I’ll just fall back to the “legacy” broadcasting setup we have now.

Thanks!

This is probably the best way you can get to real time data during the season. Note that this information is not available in off-season.

http://docs.frcevents2.apiary.io/#

Thanks, but this is for an off-season event, and I need data while the match is in play. I’m entirely replacing the audience view that we use.

Use Cheesy Arena and modify its (open source) audience display?

I’d prefer not to interfere with the FMS setup that FIRST in Michigan already has in place, beyond installing my own software to interface with it.

There is no way to query the FMS data directly even if you are on the same network.

I was more planning on having an application running alongside FMS that will transmit the data to a client. The issue is finding the best way for the server to integrate with FMS’ data. Accessing the SQL database is one option but I’m hoping there’s a better way.

I would think that installing anything on the FMS would be, let’s say, frowned upon.

That would certainly be the case in season events. Being that this is a large off-season event and everything would be done under the supervision of the FTAs, I don’t see a problem. We’ve certainly had custom audience view software running on it before.

Well, if I were going to approach this, rather than touching the FMS I’d look into impersonating the Azure back end. Of course then you’d have to have the in-season software not the post season software that disables syncing. That way as soon as the scorekeeper hit commit you’d have updated data. It would require a bit of networking and coding legerdemain but if it were accomplished it would be transparent on the FMS itself.

That’s an interesting idea. That wouldn’t enable live score display mid-match (for the lower third) though, would it?

No.

Also, is it at all possible to set up my own FMS environment to see how it works? I don’t really know if the software has been made available.

I know it is possible to get some data from the FMS (at least it was two years ago).

In 2014 we used a combination of a quasi light FMS to control the robots, with a bunch of custom software that would monitor the FMS and automatically start the custom hot goal and scoring software at the same time as the rest of the match.

My advice would be to get a copy of the off-season FMS and have a look with wireshark to see what you can get. See what packets are transmitted at match start, when you queue up a match, when you push scores etc.

You can also probably grab scores, rankings, team numbers and anything else on the standard display, as these are transmitted on the network to work with some of the audience displays.

Good Luck!

That information is immensely helpful, thank you. Do you happen to know how I can get my hands on the off-season FMS?

No 2016 yet. 2015 is here: https://usfirst.collab.net/sf/frs/do/viewSummary/projects.offseasonfms/frs

Hey Brandon,
Here’s another resource for Off Season FMS which is FIRST sponsored. https://usfirst.collab.net/sf/projects/offseasonfms/

It looks like you could make a request to them on the discussion forum there. That’s actually where I would post this question. Looks like that’s where you can download FMS Lite as well.

Thanks! I happened to find it on Google before I saw the replies to my post (I stopped receiving email notifications for some reason).

Thanks to you as well. I’ve downloaded FMS Lite which appears to use the same audience display so I should be able to analyze the network traffic and impersonate the display.

I appreciate all the input!

EDIT: As it turns out, FMS Lite (the off-season version) has been neutered in terms of network capability. I’m now talking with the dev(s) on TeamForge.

Sorry for the bump!

First, a correction. The software has not been neutered in any way. The networking capability is simply not ready yet and the button was left in.

For now I’ve given up on writing software to integrate with FMS. Perhaps next year if networking capability is in I’ll give it another go. For now, I’m just going to work with the video out on FMS and a capture card.

On that topic, does anyone recall if the First in Michigan FMS unit has an HDMI out? I seem to recall that they’d installed one last year but I’m not really sure.

Thanks for all the help! :slight_smile:

I believe the scorpion cases used by districts (those without scan converters) have HDMI outputs installed. Of course, I haven’t seen them since last year, and it may also depend on FiM’s A/V setup, which I have no idea about.