> 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.
... 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?
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.
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.
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.
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.
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
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é.
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?
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?
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...
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).
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’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.
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".
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?"
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.
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"
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".
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).
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.
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.)
> 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.)
reply