> I found out about the data stream from https://iss-mimic.github.io/Mimic/, which has considerably more and more interesting stats than just how full the piss tank is.
> I will not be adding any of them.
This, right here, is how you communicate non-goals of a project. Just perfect open-source communication best practices. We all stand to learn from this project.
(Though, predictably, some of us sit to interact with it.)
I don't know why, but I imagine a situation where all communication has broken down, and the only working sensor is the one in the piss-tank, and the astronauts have to communicate in morse by modulating the delta in the tank. And some guy with ADHD, and this menu bar app installed, is going to figure out whats going on what is going on, and save them all. (Hey, Hollywood - if this turns into a movie - I want my royalties)
> Hey, Hollywood - if this turns into a movie - I want my royalties
We already have precident on that topic via that short story about the reverse isekai airplane carrier to ancient Rome that was written on Reddit in early 2010s.
By writing the original on a social media platform you've effectively given full copyright to this company. If royalties need to be paid, they'd be paid to yc, not you
> We already have precident on that topic via that short story about the reverse isekai airplane carrier to ancient Rome that was written on Reddit in early 2010s
Can you please talk about this some more? A cursory search did not give me anything. What short story are you talking about and which adaptation of it?
Fwiw, this sounds like a take on the novel and subsequent franchise 1632. This sci-fi/historical fiction has a quarterly fan fiction compilation that has continued even after the original author’s death.
> On October 21, 2011, Reddit administrators explained that the licensing terms were designed to protect the site from potential legal action, and that they did not intend to block the production of the movie.
Tho most likely they wouldn’t pay out any royalties and if there is legal action, they’ll just count it against the profits of the movie and record the whole thing as a wash and pay no taxes and no royalties.
> We already have precident on that topic via that short story about the reverse isekai airplane carrier to ancient Rome that was written on Reddit in early 2010s.
... do you mean precedent of a scifi premise from social media being turned into a movie? or the precedent of a piece of media using a piss-tank's levels as a means of communication?
I meant the precedent of wherever he'd be able to get royalties for something he wrote on a social media website.
you're giving full copyright to the social media website you're posting on. If someone wanted to buy a licence to use this - whatever it might be - the discussion would be between the social media platform and the licensee.
the original author of the work would not have any stake in that theoretical situation.
If you were wondering which specific case I'm referring to, ForHackernews linked to the wiki article. there is a small note on the licensing issue at the end there.
From what I remember, he had gotten a WB offer - which ultimately didn't pan out because a licensing agreeming couldn't occur. He'd have had to rewrite the story off-reddit for them to be able to license it. And that never happened.
(Well, he did rewrite it - but probably took too long, so the window of opportunity had already closed and it was never made into an actual movie)
A social media site typically takes a soft licence allowing it to store and reproduce your content (which is needed to be able to function), and maybe use it in marketing. Some go a little further, but please show me one mainstream site that takes over all your (copy)rights when you post?
You might be correct that I'm mistaken wrt the intellectual property of comments. I'm not an IP lawyer and cannot state it with confidence one way or another.
What I feel comfortable stating is however that we have precident for the exact scenario the person I responded to (wanting royalties for a storyline they posted on a social media website) and this precident showed that are least the lawyers of WB were of the opinion that a rewrite outside of any social media platform was necessary.
It wasn't a book, it was on Johansen's laptop. And the ASCII was for communicating by pointing the camera on the mars rover, because it couldn't be positioned precisely enough for 26 different positions.
Why, wasn’t The Martian an example of hard sci-fi, a story that conforms strongly to the known laws of physics? Not necessarily probability, economics or politics, but hard sci-fi is written to be plausible.
The story is enjoyable, but like most such tales is amounts to building a string of deadly obstacles for the protagonist and then giving him just enough to survive each one. (FWIW the least realistic step was the ship turning around to get him, because spaceships typically don't carry any extra fuel. But in general there were too many resources lying around for him to use, especially the unattended lift vehicle. The plutonium core and the potatoes were a nice touch, though.)
It's been a while since I've read the book / seen the movie, but I believe the ship intercepted a resupply payload launched from earth as it was performing it's slingshot.
> FWIW the least realistic step was the ship turning around to get him, because spaceships typically don't carry any extra fuel.
The turning around and returning to Mars bit may have been realistic. They would have needed fuel to get into Earth orbit. (That said, the timing to return to Mars in any sane trajectory would likely be off.) The real problem would be getting into Mars orbit at the end of the return journey.
Even hard science fiction takes liberties since it pushes the boundaries of science or engineering. It explores the plausible, rather than what has been accomplished. If it didn't do so, it would not differ all that much from regular fiction (i.e. the story may be made up, but it is anchored in everyday reality).
As for the ASCII table, I wouldn't be surprised if it is one of the most commonly reproduced data tables in print and I would be surprised if it wasn't the mostly commonly reproduced table digitally. Virtually every *ix system will have a copy of it. The documentation for most development tools will probably have it. All you need is someone technically inclined in your life, which you will almost certainly have on a mission to Mars, and you will likely have a copy of an ASCII table (whether anyone knows it is there or not).
I mean, why even use an ASCII table at that point? For initial comm you could just do A=0, B=1 etc. for initial comms (until you get to the point you want to reprogram the eeprom) you can have higher bandwidth communication.
If I remember correctly, the book addressed this. 26 division of a circle was too much for reliable determination of which sign the camera was pointing at, so 16 (hex) made the angles more workable.
If we're talking efficiency, I wonder why he didn't consider Morse code. Well I guess that's easy, even though it's faster it takes a skilled operator to read it in realtime, and he had little time to write any individual bit of information down (cumbersomely writing in sand is slow)
You can't represent 26 possibilities with a single hex digit. So it'll require 2 hex digits.
If you're going to require 2 digits, then that can be done with 2 decimal digits as well. So there's no need for hex, and no need for ascii tables.
However, if you need more than just the 26 letters, e.g. if you also need numbers and/or punctuation, then ascii might be useful, and hex might be useful to encode ascii into 2 digits.
He later painstakingly translates machine code transmitted via the camera to the rover which patches the software to allow him to chat via text, so hex came in handy
I didn't say it needs to be sent 2 digits at a time.
The points of my previous comment:
* Ascii is only needed if we need to encode things other than just letters (or if case matters).
* Hex is only better than decimal if hex allows the number of digits to be reduced. If we need to only encode 26 elements, then hex doesn't reduce the number of digits compared to decimal, so hex has no advantage over decimal in the 26-element case.
Using just 0 or 1 will increase the number of digits needed, so has a clear disadvantage compared to hex or decimal.
> Hex is only better than decimal if hex allows the number of digits to be reduced. If we need to only encode 26 elements, then hex doesn't reduce the number of digits compared to decimal, so hex has no advantage over decimal in the 26-element case
He had more than 26 things to encode, I believe he started with numbers, letters and a question mark.
> Using just 0 or 1 will increase the number of digits needed, so has a clear disadvantage compared to hex or decimal
Using 0 or 1 decreases that to only 3 cards (including question mark), and increasing the safety margin to 120° on the setup he had. It'd take longer but be more robust.
There's also the scenario where a pattern of intelligence is found in the noise from the life support sensors telemetry, halfway between Poltergeist and Contact.
Dear, this is a dangerous bit of information to discover. Incredibly tempted to spend wayyy too much time making an SVG of the ISS and animating it based on this.
Heh, I follow a Bluesky bot that posts HN stories that have gone over 50 points and unexpectedly saw a very familiar Github link. I'd made a Show HN story about this ~5 days ago (https://news.ycombinator.com/item?id=42464454) and I was like "huh, how'd that suddenly get more traction" but turns out it wasn't even my post!
I'm so delighted that this is easily my most popular OSS project over the past 15 or so years (I have my "serious" stuff elsewhere), and I'm not being sarcastic here.
I'll happily answer any questions folks have (expect some reply lag because holiday season). I figure the most popular question is probably going to be "… but why?" though, and the honest-to-the-gods answer is "because I thought it was funny"; I was trying to come up with a nice and simple 1st project to do with Swift (holy crap that language's concurrency story is confusing), and once I ran into iss-mimic I knew what I had to do.
Absolutely! Realtime data will require a subscription, which will also include an LLM analysis of the past week's data. I think one of the VCs funding my upcoming disruptive space station piss tank telemetry platform requested that.
I'm pretty sure I can also shove a blockchain in there somewhere too even though they're a bit passé.
pISSStream is already a quantum application as I wrote it while in a box with a poison gas system that can be triggered by the decay of a radionuclide, allowing me to be in a superposition of being alive and dead – technically the app both exists and doesn't exist.
I'm 100% certain this is how quantum computation works and am available for department chair positions and speaking engagements for conferences.
That makes sense, but what if your service goes down and we can't get a hold of all the valid data? Before I invest in the $0/year fee, I'd like you to confirm that you're using the Blockchain somehow?
I regret to inform you that waterfall planning is often considered a fail state in the toilet development world (and a messy one to clean up).
I can however recommend the Spiral Model [1] as a lesser known Waterfall variation, which carries a heavier focus on risk management. It resembles a conch shell, and may require up to three attempts [2] to get your toilet development process correct.
It'd be fantastic to have the flag of the country last pissed on in the menu bar item.
Ie. when the tank level increased last I guess? The value doesn't always seem to just monotonically increase though, but I could be wrong – frankly I haven't paid that close attention to the value. Could also be something like microgravity causing a bit of… uh… slosh making the sensor reading slightly inaccurate, or something along those lines?
This has nerd-sniped me waaaay too much. Now I need to know the capacity of the ISS urine tank since an average adult urination is between 200 and 350ml.
For some reason I assumed they ejected the piss out into space so I was imagining using pee volume drop plus station location to determine trajectory of the pee and effectively track each load as it ventures out into space.
It actually started life as a Swift library package + cli tool without any sort of Xcode project, but somehow when I tried to add it to an Xcode GUI project I just kept getting weird-ass linker errors and gave up after a while (nobody ask what those errors were, it's been a week and I can barely remember what happened yesterday)
I know they're working on ways to recycle the urine into water. Can you add a display of water levels and somehow show when it transfers between the two?
There is a metric or code already that shows when the recycling happens - if I recall correctly it’s at least a couple of times per day, but I’ll check my notes tomorrow…
Ok I was the the tech lead and a flight controller at NASA with the team that released this telemetry as part of Isslive which this api (used by ISS mimic) used - we spent a number of years educating the public about the space station program
But on a more serious note, while my use of live ISS telemetry is probably about as maximally frivolous as can get, it's nothing short of amazing that this sort of abject silliness is not only possible but actually trivial to pull off. So hats off to you and the rest of the hard-working folks at NASA (et al) who made it possible in the first place.
And yes there's definitely all kinds of interesting telemetry available from the ISS. Seeing the dashboard that the ISS mimic project has was quite an eye-opener
Thousands of people are today learning about these metrics thanks to your funny project. And from that, someone else will also make something cool and useful.
I was wondering, when the ISS will finally be shut down and destroyed, will the telemetry stream run until the very end? In that case, I’m going to wait in front of the terminal for that last farewell of the station when the time comes…
Interesting. I asked Claude and ChatGPT-4o similar things and got quite a bit of variance. Using Aider and giving it your prompt, "Output a single HTML page with included JavaScript and CSS that fetches the latest levels of the urine tank on the ISS and displays it appropriately - it should be mobile friendly" and adding "use the same api as the swift code" worked in one shot. However, Claude could not one-shot it If I just asked for a "web page", and it took a couple more prompts to get it working. ChatGPT-4o kinda failed at the task. It hallucinated a URL to load lightstream.js from, but didn't realize that and I had to gasp debug the problem myself. I also tried with Copilot in VSCode since that's now free and got similar results.
With such variance though, it now becomes much easier for me to see why the question of if LLMs are any good at coding is so contentious every time it comes up on HN. If, even for such a small, well defined task, there's such variance in behavior from seemingly small prompt changes, it's now easier for me to see why some people see it as the second coming and others think LLM-assisted program is all hot air.
Oh it definitely does reflect how much astronaut urine is in the tank, but the value changes (sadly?) don't indicate direct use of the toilet due to how the system is configured.
Heh yeah I was meaning to change background & foreground colours on the menu bar item, but apparently SwiftUI's MenuBarExtra labels don't actually support changing the colors – at least not in any way that I found immediately obvious. I naturally forgot to remove the unused enum after I gave up trying to customise the label.
I didn't know that working for a state-funded college meant my pay information would be public information until one day someone told me they googled me and found how little I was making...
I was a LIGO member, which is publicly funded, and our live data stream was extremely secret, and in fact when you publish a paper you have to go through an internal review process called P&P that checks if you're using any secret data without permission
Could you then start to identify which astronaut by the amount? I didn't follow the link to see what other data that is not being used contains, but if there's any other chemical analysis data it could be done. NASA could then solve their funding issues by selling all of that analytics to data hoarders and start showing ads on all of the screens on the ISS. Hell, I'm now surprised that some YC startup hasn't released a Smart Toilet that does this.
Depending on the frequency of data updates, rate-of-change and rate-of-rate-of-change could be calculated and possibly correlated with specific user(s).
I’m just waiting for Apple to invent the iSpace Station, where privacy is taken seriously and Google writes them a trillion dollar check to be the default service provider.
Hmm. Maybe the next version should use AI to deduce the path the whizzing crew member took, by combining the tank fill status with other telemetry data like station orientation, vibration in different components etc.
Somewhat incredibly, v0.2 is out thanks to a contributor! Adds signal loss handling, so now you can see at a glance if ISS telemetry is actually even being received by the ground station.
Yeah that'd be the telemetry stream, probably specifically the new telemetry status & timestamp subscription that got added in 0.2, it gets updated maaaaaany times per second. Unfortunately it's a push and not a pull model stream so I'm not quite sure if there's any "clean" way for the app to throttle the incoming data except eg. periodically just unsubscribe from the very chatty status subscription.
yes of course. If you go to https://iss-mimic.github.io/Mimic/ you can see the websocket to `wss://push.lightstreamer.com/lightstreamer` being opened and the stream of events. That provides a stream of ALL ISS telemetry data and this app is only making use of the urine tank data.
wanted this but didn't want to run another app when I'm already running SwiftBar--here is a version suitable for use with SwiftBar/xbar/etc. (error handling left as an exercise for the reader):
#!/usr/bin/env node
var Ls = require('lightstreamer-client-node');
var sub1 = new Ls.Subscription("MERGE",["NODE3000005"],["Value", "Status", "TimeStamp"]);
sub1.addListener({
onItemUpdate: function(obj) {
const percentage = obj.getValue('Value') + '%';
console.log(`${percentage} `);
process.exit(0);
}
});
var client = new Ls.LightstreamerClient("http://push.lightstreamer.com","ISSLIVE");
client.connect();
client.subscribe(sub1);
I added Immersive Experience with 3D for Vision Pro. If you want to see a urine tank with a fullness rate with 3D. Please check this Pr. https://github.com/Jaennaet/pISSStream/pull/7
This is exactly the sort of reaction I was hoping to inspire.
Like I said in my Show HN story, this is clearly a ridiculous and more or less completely useless application (probably even if you work for ISS Environmental Control and Life Support System), but it really is kind of amazing that this is possible in the first place, and didn't even involve all that much effort apart from the obvious newbie hurdles like "how in the hell am I supposed to do XYZ in Xcode?"
I love that the project embraces piss as its central theme, the name itself, all variables such as "pissAmount"... But then the project description modestly calls it "urine".
Good point! I'll have to add that in at some point after the holidays.
My motivation was entirely that I thought this was both a hilariously stupid use of a space station's telemetry stream, but also kind of amazing at the same time. Also a great excuse to learn Swift, but the sheer ridiculousness was what drove me.
Like I said in my earlier Show HN post on this (I think? Or maybe on Bluesky), it's remarkable that we live in a world where it takes an afternoon to bang out a joke application that reads actual realtime telemetry data from a space station's toilets.
Yes, the solid matter goes into waste containers that are burned up on re-entry of the supply craft. Unfortunately there doesn’t seem to be a reading for the solid waste containers.
It makes wishing on a falling star less romantic, though, when you realise you could be wishing on flaming astronaut poop.
I'm tempted to do something similar for Gnome extensions, how straightforward is it to write an extension that does the same thing on Gnome? Gnome is a Linux desktop.
Just checked github and the folder/file names are totally unreadable. Even rust project has better folder name like src/ test/ instead of these pISSStream.xcodeproj pISSStream etc...
I remember David Beazley of SWIG fame saying that he uses this as a metric. Include stuff in the course that makes people say... " I don't know how that's useful but damn that is cool".
The real story here is that a man with no Swift experience but who had a funny idea banged out a Mac app in a spare afternoon, probably with LLM assistance
Space toilets are one of those things that are both critical and ignored in most depictions of space. Even in all the years of Star Trek they have "sonic showers" , but never depict a toilet.
It's amazing that NASA publishes this data in real time.
> Space toilets are one of those things that are both critical and ignored in most depictions of space. Even in all the years of Star Trek they have "sonic showers" , but never depict a toilet
Why would they? They have artificial gravity everywhere and iirc it’s never failed like every other piece of technology when the plot demands it. The toilets wouldn’t look any different, except maybe the ones to accommodate non-human species (THAT would be interesting). Star Trek elides a lot of things that would otherwise be boring because “post-nuclear war Utopia solved it.”
Evacuation is only interesting in zero-G. Although to be fair I don’t remember the expanse or most other hard scifi touching on the topic.
I suddenly realize, though, that I can't ever remember seeing a bathroom door anywhere on any USS Enterprise or similar.
Like, wouldn't there be one tucked away in a back corner of the bridge, or a corner of a room or passage adjoining the bridge? Shouldn't we see a bathroom door, or at least the open entrance to a "bathroom corridor", as the characters do a walk-and-talk down the hallways?
And then... regular TV shows show women putting on or taking off their makeup in the bathroom mirror, people having a conversation through the shower door, someone in a stall overhearing a conversation by the sink... has Star Trek ever shown that?
What the heck does a bathroom look like on Star Trek? And the bathroom signage?
There is a bathroom door off the Enterprise-D bridge labeled HEAD. And the official deck plans have a second bathroom off of Picard’s ready room. But those are the only official ones.
The Battlestar Galactica reboot had a few scenes in the locker room/shower/toilet area. Pretty spartan, but probably familiar to anyone who served on a navy ship.
I remember one Star Trek writer theorizing that the Klingons were so cranky because they never put toilets in their ships.
I loved Babylon 5. One minor reason was because a scene was filmed in a restroom. With ultraviolet lights used in place of water for the handwashing. A sign that the characters are living in The Future. Showrunner J Michael Straczynski did this specifically as a small dig against Star Trek.
My understanding is the waste gets resequenced and used to create other items.
* Enterprise - S1E8 Breaking the Ice
> Tucker: The first thing you've got to understand is we recycle pretty much everything on a starship. That includes waste, and the first thing that happens to the waste is it gets processed through a machine called a bio-matter resequencer. Then it gets broken down into.
> So the waste is broken down into little molecules and then they get transformed into any number of things we can use on the ship. Cargo containers, insulation, boots, you name it.
* Discovery - S3E12 There is a tide...
> Admiral Charles Vance: It's made of our shit, you know.
> That's the base material that we use in our replicators. We deconstruct it to the atomic level and then reform the atoms.
Having spent an uncomfortable and expensive night in a foreign hospital after creating my own personal fatberg, this sounds like a technological innovation that would bring tears of joy rather than stress to my eyes.
Isn't it a joke in Space Cowboys, where Tommy Lee Jones inspects a gadget and one of the young astronauts tell him it's the "ACM - Asshole Centering Monitor"
> It's remarkable that we live in a world where it takes an afternoon to bang out a joke application that reads actual realtime telemetry data from a space station's toilets.
Now I’m curious when and how the tank is emptied. Is the waste periodically picked up and brought back to Earth? Is it flushed directly into space? If not, is it because there is a risk of septic satellites, so to speak, stuck in orbit for other satellites to collide with? Moreover, what happens if the tank reaches capacity?
It's recycled as drinking water on ISS. For the shuttle, it was dumped creating an ice cloud that was visible from the ground with the sun in the right position.
The water you can find to drink on earth has most likely been
recycled through men and beasts countless times over millions of years.
Though the precise permutation atoms could be new.
The Expanse (book series) has a nice quote about water that "had been piss and tears and sweat and blood. The circle of life on Ceres was so small you could see the curve."
(Can't remember if these 2 are actually back-to-back, or even from the same book, but I think they were. Been a few years).
I can't remember the original source but I recall a pseudo inspirational quote that X atoms in your body were once part of Michaelengelo (or some other famous person). Seems plausible, yet another mind bender attributable to quantum physics.
Oh believe me I would have used that metric if there was one, but apparently there is no fecal storage tank as such; your poop is collected in a bag by the Universal Waste Management System or UWMS (which is what you call a space toilet when you're NASA and don't want to say "space toilet"), and those bags are stashed in a "removable fecal storage canister". Some of those canisters are returned to Earth "for evaluation" ("yup, it's poop"), but most are loaded onto a cargo ship that is then burned up on re-entry. Couldn't see any obvious telemetry for the UWMS' urine / feces separatator fan system kajigger either (the "Dual Fan Separator" + sort of gearbox, because apparently a space toilet needs a gearbox.)
Leave a feature request issue! I might actually get around to it one beautiful day, and if we're very lucky that might even happen before the heat death of the universe.
Hey man, it sounds like you had a shitty experience on some payment platform, so you made this account to complain and rile people up?
Sucks that you had a bad experience, it may be worthwhile posting a more direct tale of it - people here love commiserating about things and may even be able to help out.
Not sure what's up with your other racist comments though, that's pretty weird my dude.
> I will not be adding any of them.
This, right here, is how you communicate non-goals of a project. Just perfect open-source communication best practices. We all stand to learn from this project.
(Though, predictably, some of us sit to interact with it.)