Voyager 1 contact restored

  • lechatron
    link
    fedilink
    English
    arrow-up
    104
    ·
    8 months ago

    The actual news release has a bit more information.

    The team discovered that a single chip responsible for storing a portion of the FDS memory — including some of the FDS computer’s software code — isn’t working. The loss of that code rendered the science and engineering data unusable. Unable to repair the chip, the team decided to place the affected code elsewhere in the FDS memory. But no single location is large enough to hold the section of code in its entirety.

    So they devised a plan to divide the affected code into sections and store those sections in different places in the FDS. To make this plan work, they also needed to adjust those code sections to ensure, for example, that they all still function as a whole. Any references to the location of that code in other parts of the FDS memory needed to be updated as well.

    Source: https://www.jpl.nasa.gov/news/nasas-voyager-1-resumes-sending-engineering-updates-to-earth

    • Infynis@midwest.social
      link
      fedilink
      English
      arrow-up
      23
      ·
      8 months ago

      That’s incredible. It also reminds me of the episode of Star Trek Deep Space 9 where they need to find space to store a bunch of people’s transporter patterns, so they just dump them into the stations computer, replacing everything that used to be there lol

      • nilloc@discuss.tchncs.de
        link
        fedilink
        English
        arrow-up
        5
        ·
        8 months ago

        It interesting that the memory is so discrete that it can be reprogrammed when a single ROM fails. And it’s really neat that they made the whole thing accessible to a radio controlled boot loader. The planning that went into building and maintaining Voyager is really incredible.

        I wonder if we could still build one as robust these days?

      • Karyoplasma@discuss.tchncs.de
        link
        fedilink
        arrow-up
        34
        ·
        8 months ago

        The problem was that Voyager sent junk data back to us due to a memory fault. It was still responsive to receive updates from Earth and to pings.

        Pinging Voyager 1 takes about 2 days, so testing updates is naturally quite slow.

        • halcyoncmdr@lemmy.world
          link
          fedilink
          English
          arrow-up
          20
          ·
          8 months ago

          Not only round trip time, the hardware only supports bandwidth of 160bps at this range. Down from the 21.6kbps at launch.

      • histic@lemmy.dbzer0.com
        link
        fedilink
        English
        arrow-up
        15
        ·
        edit-2
        8 months ago

        Im guessing it could still listen just not talk back

        Edit read the article

        Although the radio signal from the spacecraft had never ceased its connection to ground control operators on Earth during the computer problem, that signal had not carried any usable data since

      • lorkano@lemmy.world
        link
        fedilink
        arrow-up
        1
        ·
        8 months ago

        This Satelite must offer option to install software updates over the air, so they modified software and slowly uploaded it to the satelite.

      • Richard@lemmy.world
        link
        fedilink
        English
        arrow-up
        11
        ·
        8 months ago

        I know that this is supposed to be a joke, and I do find it funny, but I also find it sad that it carries a large dose of truth. C is such a “low-level” high-level language that it makes you deal directly with memory allocation and management as well as pointer arithmetic to advance addresses in the stack, which in my opinion is very important for programmers to gain an understanding of the actual hardware and architecture their programs are running on, because I feel that many don’t have that understanding. Should Rust replace C in many applications, especially low-level, I fear that we will ultimately end up with worse code because of that. (BTW I know that Voyager’s program is not written in C, this is just purely about your statement on Rust.)

        • Kualk@lemm.ee
          link
          fedilink
          arrow-up
          8
          ·
          8 months ago

          C will never fully go away.

          Constrained environments will always remain in C.

          But RUST offers the best trade off today. It is way better than C++.

          C IMO is not comparable to RUST.

    • lorkano@lemmy.world
      link
      fedilink
      arrow-up
      8
      arrow-down
      1
      ·
      edit-2
      8 months ago

      Can we appreciate how they can basically change software of this 45y/o satelite over the air? Original designers thought everything through