Live data from Hacker News

What computer and software is used by the Falcon 9? (2015)

space.stackexchange.com

41–50 of 160 posts

Re: What computer and software is used by the Falcon 9? (2015)

#41
post #34

A slight inaccuracy: the flight strings are not x86, but ARM, running on a custom board. Also, only the actual graphical display application uses Chromium/JS. The rest of the system is all C++. The display code has 100% test coverage, down to validation of graphical output (for example if you have a progress bar and you set it to X% the tests verify that it is actually drawn correctly).

How stateless and independent is each display?

Re: What computer and software is used by the Falcon 9? (2015)

#42
post #34

A slight inaccuracy: the flight strings are not x86, but ARM, running on a custom board. Also, only the actual graphical display application uses Chromium/JS. The rest of the system is all C++. The display code has 100% test coverage, down to validation of graphical output (for example if you have a progress bar and you set it to X% the tests verify that it is actually drawn correctly).

How stateless and independent is each display?

Can't say exactly re statelessness, but I would not be surprised if you could power-cycle all displays if needed in the middle of a mission.

As far as independent, completely independent from each other.

Re: What computer and software is used by the Falcon 9? (2015)

#43
post #32
post #26

Earlier quoted context omitted.

Why not Javascript? I would argue that a good usable UI in a spacecraft is a good thing, and Javascript is a great language for building UIs

> Javascript is a great language for building UIs I disagree. It is easy to build something presentable with HTML and browsers, and there have been many JS frameworks that lower the barrier. However, that is not because JS is a good language for it; it is because JS is the only language available in that environment. In fact, there are at least two other languages that transpile to JS, because you need JS to be able…

You haven’t made any arguments about why Javascript isn’t good for building UIs there. Here’s mine for why it is:

- first class functions (callback style is a good fit for UI programming)

- async/await and single threaded - many components of UIs are async by nature, Javascript supports you well here while keeping things simple with its single threaded model

Re: What computer and software is used by the Falcon 9? (2015)

#44

Sounds kinda disappointing/irresponsible. Chromium is an overly complex, relatively buggy piece of software. For example I recently experienced a bug where a text I selected was significantly offset from what should have been selected given the pointer position (on linux), a misclicky kind of bug. Considering that the majority of Crew Dragon's controls are through touch screen, maybe even manual docking(not sure, but…

I'm reasonably sure that quite a bit of the complexity is more or less directly caused by the amount of features it provides. I agree with you in that Chromium probably brings in a lot of features they don't need, but I would also say that reimplementing the features they do need is also a huge liability and would incur quite a bit of complexity too... but it'd make it their insular system with no other resources flowing into improving it.

I don't have the data to make that call, but I would think someone at their end evaluated this quite thoroughly and determined the risks of rolling their own to exceed the risks of using Chromium.

(Also they mentioned on the stream that they do in fact have a few hardware buttons for important things. Can't cite this, sorry...)

Re: What computer and software is used by the Falcon 9? (2015)

#45

Sounds kinda disappointing/irresponsible. Chromium is an overly complex, relatively buggy piece of software. For example I recently experienced a bug where a text I selected was significantly offset from what should have been selected given the pointer position (on linux), a misclicky kind of bug. Considering that the majority of Crew Dragon's controls are through touch screen, maybe even manual docking(not sure, but…

The fact that it's implemented in JavaScript and Chromium just tells you the fancy display is entirely superfluous to mission success.

Re: What computer and software is used by the Falcon 9? (2015)

#46

Sounds kinda disappointing/irresponsible. Chromium is an overly complex, relatively buggy piece of software. For example I recently experienced a bug where a text I selected was significantly offset from what should have been selected given the pointer position (on linux), a misclicky kind of bug. Considering that the majority of Crew Dragon's controls are through touch screen, maybe even manual docking(not sure, but…

It should be most likely be WebGL and some glue js code. I don't think they're running everything in just js for the view code.

Re: What computer and software is used by the Falcon 9? (2015)

#47
post #25

From the latest video NASA uploaded, the astronauts explain that the UI sends "commands", and if it fails, they have physical buttons below the screen to send these commands. https://mobile.twitter.com/NASA/status/1266885097359388672

The UI at 2:22 is very similar to the one discussed in https://news.ycombinator.com/item?id=23162820 as seems to use three.js and GSAP. Also, the open-source Lato font seems to be used throughout the interface.

Re: What computer and software is used by the Falcon 9? (2015)

#48

Earlier quoted context omitted.

Unlikely that they are using javascript in the actual flight controller. Also under the screen they have a small amount of manual buttons that is likely to be seperate from the touchscreen interface logic.

>javascript in the actual flight controller. zero chances that it's the case. I meant that in aerospace applications UI is mission critical too.

> I meant that in aerospace applications UI is mission critical too.

It is, but usability of the UI is mission critical as well. The humans in the capsule need to be able to quickly and effectively consume information in a way that doesn't make important facts hard to get at, and then quickly and effectively perform commands to address issues.

I don't think a touch GUI is a bad choice in this regard, and if I'm building a touch GUI I'd rather use some existing framework. My personal choice would've been something like Gtk or Qt though :)

Re: What computer and software is used by the Falcon 9? (2015)

#49
post #26

Sounds kinda disappointing/irresponsible. Chromium is an overly complex, relatively buggy piece of software. For example I recently experienced a bug where a text I selected was significantly offset from what should have been selected given the pointer position (on linux), a misclicky kind of bug. Considering that the majority of Crew Dragon's controls are through touch screen, maybe even manual docking(not sure, but…

Why not Javascript? I would argue that a good usable UI in a spacecraft is a good thing, and Javascript is a great language for building UIs

Javascript is a bad language period. For anything. It's used for UIs for historical reasons, not because it's good.
Post reply on HN