[00:11.050 --> 00:13.890] Welcome back to Space Security Challenge 2020, [00:13.890 --> 00:15.070] The Final Frontier. [00:15.070 --> 00:16.210] I'm your captain, Jordan. [00:16.210 --> 00:18.210] I'm actually not anybody's captain, [00:18.210 --> 00:19.790] but I can play one on YouTube. [00:19.990 --> 00:23.130] With no game changes to report on in the last hour [00:23.130 --> 00:24.850] and the game infrastructure cooled down [00:24.850 --> 00:27.910] to a less than molten state, as things are a steady state, [00:27.910 --> 00:29.590] we're gonna bring in some of the game organizers [00:29.590 --> 00:33.630] to talk a little bit more about the behind the scenes [00:33.630 --> 00:35.290] and the game infrastructure. [00:35.650 --> 00:37.690] We were gonna call this segment Between Two Jasons [00:37.690 --> 00:39.970] because we've got Jason Williams and Jason Latimer [00:39.970 --> 00:42.110] of Chromulence on the video chat, [00:42.110 --> 00:43.590] but I don't think y'all need to see my face. [00:43.590 --> 00:45.490] So, Jasons, can you hear me? [00:47.710 --> 00:48.730] Yeah, I can hear you. [00:48.730 --> 00:50.170] Excellent, all right, that was Latimer on the right [00:50.170 --> 00:51.830] and we got Jason Williams on the left. [00:51.830 --> 00:53.630] Thanks for joining me, first of all. [00:53.810 --> 00:54.330] I appreciate it. [00:54.330 --> 00:56.770] You guys have been pretty busy, I know, the last few days [00:56.770 --> 00:59.370] and, of course, even before that as well. [00:59.370 --> 01:00.750] Just first, general impressions. [01:00.750 --> 01:03.190] How are you feeling right now about how everything's going? [01:06.270 --> 01:08.350] I think everything's going really well. [01:09.350 --> 01:10.150] Sorry. [01:10.150 --> 01:12.710] All right, I'll direct into one of you specifically [01:12.710 --> 01:14.450] so I don't make you talk over yourself. [01:14.450 --> 01:17.270] Latimer, how are you happy right now with things? [01:17.270 --> 01:17.890] How are you feeling? [01:17.890 --> 01:19.110] I'm happy. [01:19.290 --> 01:20.610] We've had a little bit of a lull [01:20.610 --> 01:23.150] as teams have been working on challenge three and four, [01:23.150 --> 01:27.390] which are the harder challenges from the hacking perspective. [01:27.950 --> 01:29.950] So, we're kind of sitting back and watching [01:29.950 --> 01:32.970] and it's going pretty well today for sure. [01:33.490 --> 01:36.330] So, one of my other questions for you each, [01:36.330 --> 01:37.990] and we'll stick with Latimer since you're going, [01:37.990 --> 01:40.330] was what is your favorite challenge then? [01:40.330 --> 01:42.570] I already revealed, I think three was probably mine. [01:42.570 --> 01:43.610] Do you have a favorite, [01:43.610 --> 01:44.810] either one you worked on or one you didn't? [01:44.810 --> 01:46.930] And if it's a later one, no spoilers, of course, [01:46.930 --> 01:50.130] but feel free to tell us which one you like best. [01:50.610 --> 01:54.630] Yeah, I really liked three a lot and I was super excited. [01:54.630 --> 01:56.510] We gave the team something to work on overnight [01:57.090 --> 01:58.950] and to come back in this morning [01:58.950 --> 02:01.250] and have a couple of solves right away, [02:01.250 --> 02:02.930] that was awesome. [02:03.290 --> 02:05.330] Challenge four is going to be a challenge. [02:05.330 --> 02:07.930] So, I'm hoping that we get some teams [02:07.930 --> 02:09.930] that actually solve that this afternoon. [02:09.930 --> 02:13.430] We're going to, you know, looking at when we give a hint [02:13.430 --> 02:16.490] or two coming up, but yeah, I like challenge four. [02:16.490 --> 02:17.630] I think you guys described to me [02:17.630 --> 02:18.450] that four was probably, [02:18.450 --> 02:20.670] would you say the hardest overall of all the challenges? [02:20.670 --> 02:21.530] That was kind of the impression I got [02:21.530 --> 02:23.250] from talking to the folks that made them all. [02:23.250 --> 02:26.310] So, this is going to be important too. [02:26.470 --> 02:28.290] Certainly for the score in the game, [02:28.670 --> 02:31.230] a lot could happen in these last two solves. [02:31.230 --> 02:32.950] So, this is going to be a big moment. [02:33.890 --> 02:35.250] All right, so Jason Williams, same to you. [02:35.250 --> 02:37.510] Do you have a favorite challenge? [02:38.590 --> 02:40.710] Yeah, I think it's for me, it's going to be challenge four [02:40.710 --> 02:42.830] without trying to give too much away. [02:42.830 --> 02:44.990] As you know, we think this is the hardest challenge [02:44.990 --> 02:48.030] in the game and it exercises a lot of skills [02:48.030 --> 02:50.530] that the teams are going to need to use [02:50.530 --> 02:51.970] in order for them to solve this challenge. [02:51.970 --> 02:54.590] So, I'm really excited to see where they go with it. [02:54.590 --> 02:56.830] And hopefully in the next hour or two, [02:56.830 --> 02:58.470] we get a solve on this one. [02:58.890 --> 02:59.410] Awesome. [02:59.410 --> 03:02.010] Now, I think you each may have some components [03:02.010 --> 03:04.590] of some of these FlatSats that we can see kind of up close [03:04.590 --> 03:05.630] and maybe talk a little bit more. [03:05.630 --> 03:08.570] Jason Williams, just before we went live, [03:08.570 --> 03:11.690] you were showing me one of the boards that you had there. [03:11.690 --> 03:13.310] Do you want to go ahead and talk about that a little bit? [03:13.990 --> 03:16.230] Yeah, so on the FlatSat, [03:16.230 --> 03:18.770] we have our own hardware that we designed. [03:19.270 --> 03:21.410] And it's actually, I'll try to show it to you [03:21.410 --> 03:22.990] if you guys can see it here. [03:23.070 --> 03:24.890] It consists of a carrier board [03:24.890 --> 03:27.210] followed by two boards on top of it. [03:27.210 --> 03:29.050] One of them is a ZX board, [03:29.050 --> 03:32.470] which has on it an FPGA, an Artec 7 FPGA, [03:32.470 --> 03:34.770] which runs two soft core processors. [03:34.770 --> 03:36.250] Then the other one at the bottom here [03:36.250 --> 03:38.210] is the Raspberry Pi Zero. [03:38.210 --> 03:40.410] And this one is running the payload module. [03:40.410 --> 03:41.490] Yes, yep. [03:41.490 --> 03:43.670] And so here you can see the ZX board [03:43.670 --> 03:46.430] and on there is actually two soft core processor, [03:46.430 --> 03:50.190] an MSP430, which we use for running the radio baseband, [03:50.190 --> 03:54.230] and then a Leon 3 processor from Geissler, [03:54.230 --> 03:56.450] which Jason can talk more about [03:56.450 --> 03:58.110] that runs our flight software. [03:58.170 --> 04:00.010] Well, hold on a second though, before we go, Jason, [04:00.010 --> 04:03.550] that MSP430 soft core FPGA sounds a little familiar to me. [04:03.550 --> 04:05.070] I think I see something behind your shoulder. [04:05.070 --> 04:07.610] Was that related to that as well? [04:07.950 --> 04:10.730] Yes, if you can remember the badge service [04:10.730 --> 04:13.010] from 2013 DEF CON, [04:13.010 --> 04:14.970] it's actually the same soft core processor [04:14.970 --> 04:17.730] that was used for that competition. [04:17.890 --> 04:19.770] Yeah, Badger was the name of the challenge [04:19.770 --> 04:21.190] and I remember working on it [04:21.190 --> 04:22.690] and we kind of had an almost solution [04:22.690 --> 04:24.710] and then my team threw our broken solution [04:24.710 --> 04:26.830] and then another team fixed it and got it right. [04:26.830 --> 04:28.390] So we scored more points than that, [04:28.390 --> 04:29.890] but I worked on that during the finals. [04:29.890 --> 04:30.850] I remember that one. [04:30.850 --> 04:32.210] Yeah, that's really cool. [04:32.210 --> 04:33.530] A lot of the code is similar. [04:33.750 --> 04:34.550] That makes sense. [04:34.550 --> 04:36.070] Because you already had this sort of soft core [04:36.070 --> 04:36.830] that you needed to implement [04:36.830 --> 04:38.610] and it was compatible with what you do. [04:38.610 --> 04:39.570] So that makes sense. [04:39.570 --> 04:39.870] Awesome. [04:39.870 --> 04:44.370] Now the Leon processor then, or the payload, [04:44.370 --> 04:45.550] tell me a little bit more about that, Latimer. [04:45.750 --> 04:47.150] What's involved in that one? [04:47.890 --> 04:53.030] Yeah, so we used a Leon 3 soft core that Geissler developed. [04:53.030 --> 04:54.210] It's all open source. [04:54.210 --> 04:55.170] You can go out and get it. [04:55.170 --> 04:56.810] You can go buy an Arctic 7 FPGA [04:56.810 --> 04:58.990] and run your own Leon 3 on it. [05:00.090 --> 05:02.930] And so it's a Spark processor that was developed [05:02.930 --> 05:05.150] in conjunction with European Space Agency. [05:05.150 --> 05:07.590] So this is legit the same kind of processes [05:07.590 --> 05:09.490] that are utilized in space. [05:09.810 --> 05:12.310] So that's why we picked it for the competition. [05:12.630 --> 05:13.650] And then on top of that, [05:13.650 --> 05:17.830] we're running a NASA product called Core Flight Software. [05:18.730 --> 05:20.210] We picked that because [05:20.210 --> 05:23.570] that's a really legitimate flight software. [05:24.310 --> 05:26.070] NASA has been huge in the community [05:26.070 --> 05:28.810] as far as releasing their flight software [05:28.810 --> 05:33.310] that they are updating periodically. [05:33.310 --> 05:34.670] And there's like a number of applications [05:34.670 --> 05:36.090] that they have provided. [05:36.090 --> 05:38.130] And so we use that as a basis. [05:38.410 --> 05:39.650] And on top of that, [05:39.650 --> 05:41.110] we've developed some custom applications [05:41.110 --> 05:42.930] that actually interface with the hardware [05:42.930 --> 05:44.330] that we're using in the game. [05:44.530 --> 05:46.850] So that was our approach there. [05:46.850 --> 05:48.850] Now Latimer, how much would you say [05:48.850 --> 05:50.990] of like the overall system that you've got [05:50.990 --> 05:52.950] from the case to the boards, [05:52.950 --> 05:53.910] to the payload, [05:53.910 --> 05:55.330] all the different modules that are, [05:55.330 --> 05:57.030] how much did you develop? [05:57.030 --> 05:59.130] How much were off the shelf commercial components? [05:59.130 --> 06:00.450] How much were there other vendors involved? [06:00.450 --> 06:01.510] Like what was the sort of breakdown [06:01.510 --> 06:03.370] of the overall system? [06:04.570 --> 06:06.650] Yeah, so on the Flatsat itself, [06:06.650 --> 06:10.490] there's really like two major components, [06:10.490 --> 06:12.450] each with subcomponents. [06:12.750 --> 06:16.070] We had kind of a short timeframe to develop all of this. [06:16.070 --> 06:18.050] So when we met, you know, starting, [06:18.050 --> 06:20.930] we were talking more details in November of last year, [06:20.930 --> 06:23.770] we decided we need something quick that we can do [06:23.770 --> 06:25.670] to get sensors and actuators. [06:25.670 --> 06:26.530] So in order to do that, [06:26.530 --> 06:28.710] we bought an off the shelf training satellite [06:28.710 --> 06:30.710] that provides sun sensors. [06:30.710 --> 06:31.910] It has an IMU. [06:32.070 --> 06:35.330] It provides a gyro and magnetometers. [06:35.710 --> 06:37.790] It has torque rods, just like a real satellite. [06:37.790 --> 06:39.850] It has a reaction wheel, just like a real satellite. [06:39.850 --> 06:42.490] So, you know, that's one of the primary components. [06:43.670 --> 06:47.350] But that training satellite from a game perspective [06:47.350 --> 06:48.690] wasn't really interesting. [06:48.690 --> 06:50.270] It didn't really mimic, you know, [06:50.270 --> 06:53.210] the kind of processors that are running [06:53.210 --> 06:55.830] on like real satellites in space. [06:55.830 --> 06:58.750] So that's where we came up with the CNVH board [06:58.750 --> 07:00.270] that we developed that has, you know, [07:00.270 --> 07:03.830] that Arctic 7 and the Raspberry Pi. [07:04.390 --> 07:07.330] So those are the two kind of primary components [07:07.330 --> 07:09.290] on the flat sat. [07:09.290 --> 07:12.090] And is that where most of the sort of the game occurs, [07:12.090 --> 07:13.810] you know, where the challenge is people interacting [07:13.810 --> 07:16.170] and except is the payload module then a part of that [07:16.170 --> 07:17.450] or that I know we're gonna, [07:17.450 --> 07:19.010] maybe that's coming a little bit later, [07:19.010 --> 07:21.950] but like, where is that gonna get factored in? [07:22.790 --> 07:24.150] That's part of it. [07:24.150 --> 07:25.050] Okay, all right. [07:25.210 --> 07:28.330] Not gonna talk too much about that [07:28.330 --> 07:30.730] cause the team still have some things to figure out there. [07:30.950 --> 07:32.910] But, you know, the intent from the beginning [07:32.910 --> 07:36.590] was to take a picture of the moon. [07:36.590 --> 07:38.010] We've been telling the teams that, [07:38.010 --> 07:40.310] so the Pi is there really to provide an interface [07:40.310 --> 07:42.710] to the camera to allow them to do that. [07:42.770 --> 07:45.630] And we put some interesting things in there [07:45.630 --> 07:48.250] that the teams will soon find out about. [07:48.250 --> 07:49.070] Yeah, that makes sense. [07:49.070 --> 07:50.590] And I don't think anyone is surprised. [07:50.590 --> 07:52.670] They knew the end goal kind of going [07:52.670 --> 07:54.210] and I've definitely seen some chatter from them. [07:54.210 --> 07:56.090] So that shouldn't be too much of a surprise. [07:56.230 --> 07:56.710] That's cool. [07:56.710 --> 07:58.090] One of the other things I, you know, [07:58.090 --> 07:59.310] I've been hearing a lot about this stuff, [07:59.310 --> 08:00.750] but I was involved in a lot of production side. [08:00.750 --> 08:02.570] So I didn't know a lot of these details. [08:02.910 --> 08:05.650] When I first saw the air bearings in real life [08:05.650 --> 08:07.850] and understood, oh wait, that's how that works. [08:07.850 --> 08:08.530] That's what's happening. [08:08.530 --> 08:09.270] That blew me away. [08:09.270 --> 08:10.310] Can you talk a little bit more? [08:10.310 --> 08:11.450] You've got one there. [08:11.750 --> 08:15.030] Tell us about how that works and what's going on. [08:16.130 --> 08:16.690] Yeah. [08:16.690 --> 08:20.910] So the air bearing is like two precision pieces of aluminum. [08:21.750 --> 08:24.250] It really works almost like an air hockey set. [08:24.250 --> 08:26.010] Like we played with when we were kids. [08:26.010 --> 08:26.770] Like a table hockey. [08:26.770 --> 08:26.950] Yeah. [08:27.410 --> 08:27.930] Yeah. [08:27.930 --> 08:28.190] Yeah. [08:28.270 --> 08:31.490] So it has, you know, eight machines [08:31.490 --> 08:34.550] or eight precision holes in it. [08:34.550 --> 08:37.030] And you, you know, we hook an air compressor up to it. [08:37.030 --> 08:39.330] We set it to 10 PSI or so. [08:39.390 --> 08:43.010] And the top plate just floats on top of the air bearing [08:43.010 --> 08:45.730] and the satellites are sitting on top of that. [08:45.910 --> 08:48.550] A lot of work went into actually getting [08:48.550 --> 08:50.090] that to work consistently. [08:50.410 --> 08:52.750] And challenge two, we made the team's point [08:53.310 --> 08:55.470] at the sun for an entire revolution. [08:55.470 --> 08:58.710] And, you know, I've been playing with that for months. [08:58.890 --> 09:01.610] Air compressor in my office running consistently. [09:01.770 --> 09:04.130] So it was neat to see the teams do that too. [09:04.130 --> 09:05.970] And we didn't make it easy for them. [09:06.290 --> 09:09.610] So, so yeah, that's, that's essentially how it works. [09:09.610 --> 09:09.790] Excellent. [09:09.790 --> 09:12.330] Now, Jason Williams, how do you get air then [09:12.330 --> 09:13.530] on a thing that's moving? [09:13.530 --> 09:14.970] You have the carousel spinning around. [09:14.970 --> 09:17.490] What was, I mean, was that like a thing that you designed [09:17.490 --> 09:19.150] or built or bought or how did that work? [09:20.390 --> 09:23.210] So the center of the carousel is not moving [09:23.210 --> 09:25.290] and that's where we have the air hose come in. [09:25.630 --> 09:27.630] And then we have it hooked up to a manifold [09:27.630 --> 09:30.030] that distributes air to each of the teams [09:30.030 --> 09:31.570] on the carousel itself. [09:31.570 --> 09:33.610] And an interesting thing about the carousel is actually [09:33.610 --> 09:37.390] it's driven off of a slew drive, which is somebody [09:37.390 --> 09:39.530] if you're familiar with a solar tracking arrays [09:39.530 --> 09:42.130] the slew drives, what causes this solar tracking arrays [09:42.130 --> 09:42.970] to track the sun. [09:42.970 --> 09:45.850] So we actually got that from China, had it shipped here. [09:45.850 --> 09:47.190] It was kind of difficult to get [09:47.710 --> 09:49.910] but that's what the centerpiece you see in the room there [09:49.910 --> 09:53.890] that's rotating the carousel about 15 minutes rotation per [09:53.890 --> 09:56.430] sorry, 15 minutes per a single rotation. [09:57.590 --> 09:57.950] Awesome. [09:57.950 --> 09:59.890] Well, thank you both for taking some time out [09:59.890 --> 10:00.570] to discuss this. [10:00.570 --> 10:01.150] This was awesome. [10:01.150 --> 10:03.090] I'm sure the audience appreciates it. [10:03.090 --> 10:05.590] We'll let you go back to the game and we'll see our audience [10:05.590 --> 10:08.690] in another hour or so or next update. [10:08.710 --> 10:09.930] Take care. [10:10.470 --> 10:11.330] Thank you. [10:11.330 --> 10:12.130] Thanks.