Chief Delphi

Chief Delphi (http://www.chiefdelphi.com/forums/index.php)
-   General Forum (http://www.chiefdelphi.com/forums/forumdisplay.php?f=16)
-   -   Team 254 Presents: Cheesy Arena (http://www.chiefdelphi.com/forums/showthread.php?t=130495)

Nick Lawrence 10-09-2014 13:54

Re: Team 254 Presents: Cheesy Arena
 
It seems that every couple years you earn a giant cookie. Great work, Pat!

-Nick

Pat Fairbank 10-09-2014 15:01

Re: Team 254 Presents: Cheesy Arena
 
Quote:

Originally Posted by Andrew Schreiber (Post 1399607)
Pat, how'd you like implementing a real web service in Go? Any things you found worked well and things that didn't?

It was an amazing experience. Go is very well suited to this sort of thing -- HTTP handling is built in and easy, network communication is a breeze, and performance is awesome (Cheesy Arena uses only 1-2% of the CPU even when running a match). Built-in unit testing and single-binary deployment are also huge plusses.

This was the first project I've used Go for so I struggled a lot with the non-object-orientedness and how to organize the code and minimize repetition. The final result isn't ideal and I need to keep working on it -- all the code is in the same "main" package, there's a lot of shared global variables, and the WebSocket handlers are more repetitive than I'd like.

Overall, though, I'd highly recommend Go for any web service work.

billbo911 10-09-2014 15:30

Re: Team 254 Presents: Cheesy Arena
 
Quote:

Originally Posted by Pat Fairbank (Post 1399634)
... The final result isn't ideal and I need to keep working on it -- all the code is in the same "main" package, there's a lot of shared global variables, and the WebSocket handlers are more repetitive than I'd like....


According to the "What programmers say vs. what they mean" translation table below, I believe the expression you are looking for is "It's a 'Complex structure'".



All kidding aside, we look forward to using Cheesy Arena at CCC next weekend. Let's hope we can use it as skillfully as it was used at CC.

Thanks again Pat, and your team, for making this and sharing it!

Puneet4778 10-09-2014 18:38

Re: Team 254 Presents: Cheesy Arena
 
Wow, looks great! I have one question: What is the protocol for feeding video to the audience display? This is my team's first time setting up any kind of fms software and we are unaware.

Thanks!

AllenGregoryIV 10-09-2014 18:45

Re: Team 254 Presents: Cheesy Arena
 
Quote:

Originally Posted by Puneet4778 (Post 1399666)
Wow, looks great! I have one question: What is the protocol for feeding video to the audience display? This is my team's first time setting up any kind of fms software and we are unaware.

Thanks!

In addition, is there a document that outlines all the hardware used at Chezy Champs? How many computers, router, etc.?

Thanks again for all the hard work.

mrscience21 10-09-2014 18:51

Re: Team 254 Presents: Cheesy Arena
 
Is there any documentation as to the network interface used to control the pedestal and hot goal lights?

Pat Fairbank 10-09-2014 19:28

Re: Team 254 Presents: Cheesy Arena
 
Quote:

Originally Posted by Puneet4778 (Post 1399666)
What is the protocol for feeding video to the audience display? This is my team's first time setting up any kind of fms software and we are unaware.

The audience display renders the overlays on a green background (or a color of your choosing). You would then need to connect the output of this to a video mixer capable of chroma keying, to superimpose it on your video. You can use a hardware or software video mixer (such as Open Broadaster) for this.

Quote:

Originally Posted by AllenGregoryIV (Post 1399667)
In addition, is there a document that outlines all the hardware used at Chezy Champs? How many computers, router, etc.?

We used one computer to run Cheesy Arena, and then one for each additional display (audience, FTA, announcer, red scoring, blue scoring, referee, red alliance stations, blue alliance stations). This page describes our networking setup, but most events can get away with a lot less.

Quote:

Originally Posted by mrscience21 (Post 1399670)
Is there any documentation as to the network interface used to control the pedestal and hot goal lights?

We built some custom hardware (an embedded microcontroller board plus an LED driver board) into a project box and put one at each end of the field. We'll post the specifications for that on GitHub once the guys who worked on it finish documenting it. The communication was UDP over Ethernet -- just a plain 32-byte packet containing RGB and transition time values for each of eight channels.

AllenGregoryIV 10-09-2014 19:41

Re: Team 254 Presents: Cheesy Arena
 
Thanks for the description.

Quote:

Originally Posted by Pat Fairbank (Post 1399677)
We used one computer to run Cheesy Arena, and then one for each additional display (audience, FTA, announcer, red scoring, blue scoring, referee, red alliance stations, blue alliance stations). This page describes our networking setup, but most events can get away with a lot less.

One PC at each of the 6 alliance stations?

NickE 10-09-2014 19:45

Re: Team 254 Presents: Cheesy Arena
 
Quote:

Originally Posted by AllenGregoryIV (Post 1399684)
One PC at each of the 6 alliance stations?

One at each end of the field connected to 3 USB monitors each.

dcarr 10-09-2014 21:07

Re: Team 254 Presents: Cheesy Arena
 
Quote:

Originally Posted by NickE (Post 1399685)
One at each end of the field connected to 3 USB monitors each.

The monitors were a nice touch - what's the model you used?

James Tonthat 11-09-2014 09:05

Re: Team 254 Presents: Cheesy Arena
 
Quote:

Originally Posted by dcarr (Post 1399699)
The monitors were a nice touch - what's the model you used?

From what I saw (on the label from the back of the display), they used the AOC E1649FWU displays.

For their PC, they used some sort of Intel NUC that was attached to the display in the center alliance station.

Pretty darn slick setup.

Travis Covington 11-09-2014 12:37

Re: Team 254 Presents: Cheesy Arena
 
Quote:

Originally Posted by James Tonthat (Post 1399728)
From what I saw (on the label from the back of the display), they used the AOC E1649FWU displays.

For their PC, they used some sort of Intel NUC that was attached to the display in the center alliance station.

Pretty darn slick setup.

Close - It was actually the E1659FWU, which adds a VESA mount and allowed us to attach the brackets which we ziptied to the player station structure.

adammiller3122 14-09-2014 17:22

Re: Team 254 Presents: Cheesy Arena
 
My one suggestion would be to make it so that the user can edit the image at the very least to make it more of a custom competition. For example, we are planning on having a mini competition that we create. It would be ideal to have that image be one of our own. Just my 2 cents.

mwtidd 14-09-2014 18:58

Re: Team 254 Presents: Cheesy Arena
 
Quote:

Originally Posted by adammiller3122 (Post 1400050)
My one suggestion would be to make it so that the user can edit the image at the very least to make it more of a custom competition. For example, we are planning on having a mini competition that we create. It would be ideal to have that image be one of our own. Just my 2 cents.

I'm not sure if it requires a build, but it seems it was designed with your use case in mind. You should see an image file called logo or something like that, that you can do a direct swap with

adammiller3122 14-09-2014 19:16

Re: Team 254 Presents: Cheesy Arena
 
Quote:

Originally Posted by lineskier (Post 1400058)
I'm not sure if it requires a build, but it seems it was designed with your use case in mind. You should see an image file called logo or something like that, that you can do a direct swap with

Thank you. I will look into that. I just put it on my personal laptop to do some testing with it. Thanks again.


All times are GMT -5. The time now is 23:59.

Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi