The Dark Spring: Hard Science Fiction
Page 1
The Dark Spring
Hard Science Fiction
Brandon Q. Morris
Contents
The Dark Spring
Author's Note
Also by Brandon Q. Morris
A Guided Tour of Comets
Glossary of Acronyms
Metric to English Conversions
Excerpt: The Triton Disaster
The Dark Spring
August 15, 2026 – DLR Control Center, Cologne
“I’m concerned about TIRA,” Marcel proclaimed.
Karl Stoll wiped beads of cold sweat from his forehead. He had just come in from the blazing sunshine, but the air conditioning was on max. He hoped he wouldn’t catch a cold.
“Good morning to you, too,” he said.
“It’s almost midday.”
“That’s true. But a few friendly words—”
“Man, I’ve been awake since just after midnight, and I still don’t know what’s wrong with TIRA.” The thermal infrared instrument had first started causing problems shortly after the launch of the Hera probe—they could not get it to stay properly calibrated.
“If necessary, we’ll have to do without it,” Karl replied.
“Then I’ll be calling in sick when the mission gets serious. The researchers will be breathing down our necks.”
Every instrument on the probe had its own group of scientists. Karl could understand their frustration. They’d had to wait for more than three years, and now they wouldn’t get their measurement data? That would delay their research careers, because without data there would be nothing to publish, and not publishing meant a career setback—publish or perish!
Karl was glad that, as an engineer, he had nothing to do with evaluating the data. “We’ll get TIRA working eventually,” he said. “What’s it griping about today?”
“After a warm start of the probe, it insists on starting the measurements.”
“But the Didymos system is still weeks away.”
“Exactly. So of course the measurements produce no results, and then it defaults to maintenance mode. So I initiate a warm start, and once again TIRA starts measuring, and—”
“I get it,” Karl said, letting him know he’d heard enough. “You go home. Your wife must be waiting.”
“She is. She wants to give me the little one and then rush off to the hospital.”
“She’s working again?”
“Yeah, I know, and the kid’s only six months old.”
“Well, have fun with your offspring.”
“Thanks, Karl, I will.”
Marcel left the room, which was about the size of a college classroom. The back wall was made of glass, so Karl could see into the ISS control room on the other side. Only two colleagues were currently working there. He sat down and adjusted the office chair, being a head shorter than Marcel, and lowered the middle monitor of the three arrayed there.
“Okay, TIRA, let’s see what nonsense you’re up to,” he said.
Karl started the debugger for the probe’s source code. Sending every change back and forth would take too long, because Hera was now 30 light-minutes away, so he always tested new program code on the computer model first.
How had Marcel described the problem? Whenever TIRA was restarted, the instrument began immediately taking measurements. Someone must have tried to ‘improve’ the launch sequence. Karl went through the lines of code. There it was, in step 3FA. User JK had made the last change. That was Joshua König, who worked the night shift before Marcel.
There was no mention of why he’d built the measurement code into TIRA’s launch startup sequence, and he wouldn’t be able to ask him until evening. Surely just turning the instrument on was enough, wasn’t it? And, why hadn’t Marcel noticed the change to the code?
Karl shook his head, then changed the line. The simulator didn’t report a problem, so he sent the new code via the uplink to the probe. He would know in an hour whether it had been successful.
The phone rang. Karl pushed aside his carton of Vietnamese noodles. Couldn’t he eat lunch in peace just this once?
“Hello, Karl!” It was Johannes Düstermann from ESOC in Darmstadt. Karl had already guessed when he saw the area code on the display. Today was going to be one of those days. Hey, how’s my ex? Are you happy together? He refrained from voicing this question, although he was quite interested in the answer.
“Hello!”
“It’s me, Joe.” That’s what Karl used to call him before Düstermann stole his woman.
“Oh, it’s Joe now, is it?”
“Haha, very funny.”
“What do you want? The day’s already going down the crapper, anyway.”
“Good to hear from you, too.”
“No, seriously, Düstermann, is there something important? Otherwise I’d like to go back to my noodles while they’re still warm.”
He almost felt sorry for Joe. His ex-wife had probably thrown herself at him. Almost sorry. He’d still chosen her over their friendship.
“Of course, Stoll, I wouldn’t have called otherwise.”
Joe sounded tense. He shouldn’t be so hard on him. But life hadn’t always been kind to Karl, either. He could still hear Marcel berating him, ‘You shouldn’t let yourself go like that, Karl. You’ve still got a long life ahead of you. You’re barely over 50.’ Marcel was a fine one to talk. He was barely 30 and had a wife and a baby.
“Karl?”
“Uh, yeah, what is it?”
“Do you remember Neville? Neville Youngs?”
“The hard-drinking Australian?”
Youngs had been in Germany for some ESA program, and they’d gone with him to Munich for the Oktoberfest. He’d drunk so much they’d barely managed to drag the babbling Youngs back to his hotel room.
“Exactly.”
“Is he still in New Norcia?” The small town in Western Australia was home to one of the three main antennas of the European Space Tracking Network, ESTRACK.
“Well, that’s where he was calling from. He received some interesting data.”
“What’s that got to do with Hera?”
“Nothing, Karl. But I still thought it might interest you.”
“I’m swamped right now. The rendezvous with the Didymos system is scheduled for two months from now. We intend to put two landers on the moon of an asteroid that doesn’t have any gravity to speak of. And now, one of the instruments is flipping out.”
Karl was exaggerating the problem a little. Hera would still be able to complete its task, even if TIRA malfunctioned and couldn’t measure the infrared spectrum. But he didn’t want his former friend to think he wasn’t stretched to capacity.
“Fine. I just thought—”
“It was nice to chat with you again.”
“Rosetta. That’s all I’ll say.”
Was that a hint of triumph in Johannes’ voice? The man knew how to entice him. The mission to the 67P comet had been the most exciting adventure of his entire career. He, Sylvia, and Joe had been a good team back then—Sylvia, who’d persistently sought her doctorate, and whom they both had courted. She’d chosen him first, and then Joe in the end, because Joe simply had his life more together.
“What about Rosetta?”
“There’s a new development.”
“Then send the data in an email,” said Karl.
“Sorry?”
“Yes, asshole. You can send it to me. Please.”
“With pleasure, Mr. Stoll. Enjoy the rest of your meal.”
The line went dead.
Karl sighed. The noodles were cold now, anyway. He folded up the box and threw it in the wastebasket, which would be emptied that eveni
ng by the cleaners.
His computer beeped. He rolled over to the desk. There was the email Joe had promised, one which Neville had originally sent to Joe from a private address.
“Dear Joe, Dear Charly,” it began.
Neville seemed to think he and Joe still worked together. Well, they had been very good friends back in the day.
“I’m writing from my personal email address because I retired six months ago.”
Crazy. Neville was already retired. Karl had always assumed they were the same generation. But he himself still had 12 years to go.
Dear Joe, Dear Charly,
Now and then I help out with night shifts. It’s not easy to find qualified people in the provinces. And I’m happy to supplement my pension a bit. But I don’t want to bore you. You probably have a lot to do. I’ve heard things are getting exciting with Hera. I’ll get to the point. I heard a signal during one of my shifts that immediately sounded familiar. But I don’t want to bias you. Maybe I’m wrong, because it’s impossible, so I’m simply attaching the data. Have a look at it, and if I’m mistaken, please don’t hold it against an old codger.
Take care, my friends, and say hello to Silvia from me. Neville.
Karl leaned back. He didn’t know any Silvia, and Johannes had probably already passed on the greeting to his Sylvia. Karl looked for the attachment and clicked on it. The virus scanner launched automatically and found no threats. Karl opened the dataset in a special program.
But this is... impossible! Either Neville or Joe—or both—was trying to jerk him around. He slammed his fist on the desk. And he’d wasted his time on this! When Johannes had uttered the word ‘Rosetta,’ it had worked on him as if it were a magical incantation. But this wasn’t Rosetta. It couldn’t be. If he took the data at face value, then it meant the tiny Philae lander had made contact again.
Philae, about a cubic meter in size and weighing 100 kilograms, had been sitting on Comet 67P since November 13, 2014, in the shadow of a rocky overhang, orbiting the sun with the comet. Karl had been there when it separated from its mother probe, Rosetta. He was there when it impacted the comet, bounced off, and finally found a landing site. He’d watched the lander report back in June the following year. And he was among those who had finally terminated Philae’s contact with the Earth, allowing the mother probe Rosetta to crash into the comet and destroy itself. Without transmission via Rosetta’s powerful antennas, it was impossible for anyone on Earth to hear the tiny lander—not then, and not in the future.
So what was it Neville had received?
His computer signaled that the simulation was finished. Karl scrolled through the results. Again, TIRA had tried to measure a non-existent object immediately after the warm start, which led to an error message, which required a warm start, at which point TIRA... But he’d removed the command from the code himself!
Karl mentally apologized to Marcel. His young colleague had probably already tried that. He’d underestimated him again. He pulled the program up on the screen. Where was the damned error? It was no use, he’d have to widen his search. If he was unlucky, it would take hours. But better they found the error now than after Hera arrived at the double asteroid.
The launch sequence wasn’t the problem. At what point did the program initiate the command to start measuring? He paused the debugger. When the program reached the critical point, it would now freeze and Karl could investigate. Beep. A red exclamation mark appeared on the left-hand monitor. So that’s where you are. And where did you come from? He ran it backward. That was the magic of programming, an ability that had always delighted him.
He ended up in error management. This part of the program was always fired up when an error surfaced somewhere. And there it was. Here, too, TIRA was receiving the command to begin the measurements after a warm start, which was stupid, of course, because it resulted in an endless loop. The programmer responsible for this section had presumably lazily borrowed the lines from somewhere else where they made sense.
Karl simply deleted the line that prompted the instrument to start measuring. That half-solved the problem. But only half, because the program should never have ended up in error management in the first place, because this wasn’t the error that was supposed to trigger the warm start! His thoughts were going around in circles.
Wait a minute. The program sequence had been redirected to error management, so there must have been an error warning. But maybe not the one he was expecting? Karl printed out the status of the simulated probe, which was still in flight mode. Sensitive instruments had protective covers. TIRA, too. For a warm start of the instruments, the cover didn’t move. Whose idea was that? Was that sensible? Hera had spent a large part of the journey in sleep mode to save energy. After that there had been a cold start, whereby the entire probe was woken up. At that moment the cover should open, too. But it stayed down, resulting in an error at every warm start, which prompted another warm start, which started the measurements, which...
Enough. Karl stopped the mental loop. There was a simple solution. They had to open the cover, preferably by repeating the cold start. It was anyone’s guess what had gone wrong there. It was a typical coordination problem. An engineer’s perspective was different from that of a programmer. But that was why they were there. However, before he could restart Hera, he’d have to clear it with the group, since a colleague might have been currently working on another instrument.
Karl rolled his chair back, put his feet up on the desk, and clasped his hands behind his head. He didn’t care that he could be seen from the corridor. He’d completed his work for the day and could now think about the egg Neville had laid in his nest.
It seemed unlikely anyone was jerking him around. 67P, where Philae must still be waiting under the rocky overhang, was a short-period comet. It approached the sun roughly every six years, not quite as close as Earth’s orbit, but still close enough that Rosetta could reach it. It was last here in 2021, six years after a robot had explored it. Its period had recently shortened a little, probably due to Jupiter’s gravitational influence. So its next visit should be... this year.
But that wasn’t enough. Philae could call out as often as it liked, and no one would hear. Its transmitter was too weak, and it was too far away. But what Neville had received undoubtedly came from the lander. How could that be? There must be a connection somewhere. A radio signal like that just couldn’t happen by accident.
What was the little lander actually capable of? Karl didn’t have to think about it for long, because he knew its technical capabilities. Philae had a battery that it could charge with its solar cells. The efficiency of the solar cells might be somewhat reduced after 12 years, but the capacity should still be enough to switch on the lander and operate its most essential systems for a few minutes.
Back in 2014, Philae had wound up at least partly in shadow. The solar cells hadn’t provided enough power, and Philae had run out of energy and fallen silent. If the lander was transmitting again, it must have left the shadow. Something must have happened on 67P to alter its location. That would be quite an exciting development for a researcher! But how did the signal reach Earth without the Rosetta probe as a go-between? He had no idea.
But he knew people who might be able to help him. Karl looked at the clock. It was still too early for the first call. Robert Millikan at Green Bank Observatory probably wasn’t in his office yet. And he was nervous about making the second call.
No one knew Comet 67P as well as Prof. Dr. Sylvia Stoll.
Karl opted for a more friendly approach this time. “Hello, Joe!”
If Joe sensed that Karl was trying to backpedal, he didn’t let on. “This is a surprise. Karl. What a pleasure. What can I do for you?” he asked.
“I’d like to speak to... your wife. Is she there?” Karl deliberately avoided using her name. He’d have to get used to the idea that she was no longer...
“She’s helping the older one with his homework.”
“Homework?�
��
“Yeah, they still get it at school these days.”
Karl laughed. His ex-wife was helping the son he never wanted to have. A stroke of luck—he didn’t have to speak to Sylvia. He probably wouldn’t have been able to get a word out.
“Good. Then just ask her if she could...”
“Wait, she’s coming. Must be finished.”
“Who is it?” he heard faintly in the background.
“Your ex-husband,” replied Joe.
Something clattered.
“This is a surprise,” said Sylvia’s voice on the line.
“That’s what your husband said.”
“You’ve never called us at home, not since—”
“—since the divorce.”
“Exactly.” She sounded a little piqued. “To what do I owe this... honor?”
“A professional question.”
“And that couldn’t wait till tomorrow? I have to be at the university at ten.”
“Sorry. I’d like to call another old friend next, and I need your opinion first.”
“Fine. What’s it about?”
“67P.”
“I’ve had nothing to do with Churyumov-Gerasimenko for ten years.”
“But you have the memory of an elephant.”
“You always accused me of that. And now you want to exploit it?”
“I just want to know how likely it is that the comet could have changed.”
“Come on, Karl, that was so long ago. 67P consists of two parts, but I don’t have the details in my head anymore. Right now I could tell you every detail about Didymos and Didymoon, but old Churyumov—”
“Please, Sylvia.”
“It’s too much to ask right now. I want to spend the evening with my family, even if that’s hard for you to understand.”