So many Open Source repos assume that you already know what the proprietary version is and don't bother to explain what they are, just how they relate to $other_thing. I got through the whole introduction without any sense for what this was and was hopeful when I saw a Features section that it'd finally explain itself... but no, all I know now is it can download apps (what kind of apps, and to what?), modify buttons to do "any function" (out of what set?), and integrate with discord and weather but not some other things (what does 'to be migrated' mean?).
If you're writing a README like this, it's a good idea to remember that there are a bunch of people who may be interested in your tools because they're FOSS but would never have interacted with whatever proprietary thing you're comparing them to. Do us all a favor and give a two-sentence explanation for what you're building on its own terms.
Can't help but feel that you're barking up a somewhat nonexistent tree here. This project is for interfacing with the deprecated Spotify CarThing. If you don't know about it, you're very likely not their target audience, so I think it's pretty fine if you don't get it. If you do know what the CarThing is, the readme intro covers what this project does pretty well.
In similar vein, you wouldn't expect a Javascript library readme to start by explaining what Javascript is or what a software library is, but if you didn't know those things, you would feel equally lost.
It's a common misnomer to think HN is just software developers, there's people here from all sorts of varied backgrounds. Similarly, CarThing has had posts about it on HN countless times [0], many users here will know what it is. Complaining about it feels pretty moot, especially when it would've taken less time to look it up than to comment about it.
I'mma be completely honest, I had no intentions of this blowing up like it did. The Readme has been in desperate need of a revision and documentation is all but nonexistent. Why? Because I'm just a college student who likes coding and figured I'd take on a fun little project. I'm not a company, an organization, and i have no idea what the crap I'm doing half the time! A formal wiki is in the works and will eventually be implemented and linked to across the ReadMes and websites.
No worries at all! I'm more commenting on this as a trend even from people who post Show HNs of their own than asking for specific changes to this project!
Do what's fun for you, no more, but definitely polish it up if you're looking for broader uptake.
Seems kinda like it does about 10% of what a Streamdeck does, minus the physical hardware. Of course, for most of those users having the hardware (16 or 32 key macro board with user-controllable displays behind the (clear) buttons. Basically it looks like a keyboard with LCD keys.
A mini description of this since the page doesn't explain it very well: The CarThing is basically a mini Linux device that runs a web app that lets you control your phone's Spotify from the hardware itself. It was designed to be attached to old cars that don't have dedicated media centers.
Spotify discontinued it a while ago and subsequently open-sourced some of the bootloader and kernel code. Researchers then were able to tear it apart, and as a result you can now do whatever you want with it. DeskThing is a project that makes it easier for you to do so; it's basically an app store of custom web apps made by the community that you can upload back into the CarThing.
Thank you! I don't know how many projects I've seen on github which sound like they might be interesting, but where there's no way to really understand what it does without installing it. If people want their widget to be used, they ought to provide a video or at least some screenshots that show it in action.
The instructions are also completely messed up, if you're using macOS you need to go into a Discord server to get the real instructions. If the owner is reading this, I suggest focusing on one thing at a time instead of trying to finish everything / all platforms at once :)
To be honest, the scope of this project has been blown out of proportion. I had no idea it would hit mainstream media so aggressively like this. We're right now working on an official Wiki that goes over the DeskThing and all the aspects of it - but I can only do so much while balancing my school and work at the same time.
Looks like a project to open up Spotify’s discontinued Car Thing to homebrew apps.
If the devs are reading this: the GitHub README and homepage both don’t have a description of what the project is. I had to click around for a while until I found the about page.
This is like the 20th Cool Thing that I’ve seen posted on HN that could be explained by a photo and yet the creators seemingly didn’t even think to take one (despite building out a whole website and everything). How does this keep happening?
I also just posted a few images - the GUI has changed so much over the last couple months that any photo I would've taken would be outdated as of now. There's a lot of content on the subreddit though!
I was thinking the same thing! I was looking all through the repo and site to see if they had any pictures of the apps running, or a setup using the device. To me, this is the easiest way to sell your project and show how cool it is!
Even knowing what it is, and having a Car Thing somewhere in a box in a closet, I still don't have any idea what this DeskThing thing is.
Some Chromium shell with yet-another-appstore that can somehow show (or maybe control) Spotify, Discord and weather, with Trello and Audible planned is my best guess. I guess, a couple screenshots or photos would've done wonders in this regard.
Either way, I fail to understand why I might prefer a separate low-power device to do something with the apps I can already see and control from desktop. But I'm glad someone found a use case for their Car Thing.
TBF... this has just been a personal passion project for me. I'm new to the OS scene and just did this for fun - not expecting people to actually use or be interested in it as much as they are.
I'm just a guy who hasn't even graduated college yet ¯\_(ツ)_/¯
I'm not sure how someone manages to make an entire project like this and provide absolutely zero pictures of it. Almost impressive how someone can just completely forget the most important thing to get people to understand what your project actually does.
I have a CarThing and managed to get this working on it after several attempts and it is actually pretty good. If they revamp the website and README it really has the potential to take off.
If the dev came here and posted this themselves, maybe. My public repos are all nonsense but anyone could post them here, and now I’m suddenly on the hook to a bunch of miserable nerds for not explaining myself well enough? Please
From the FAQ page of the Car Thing (the spotify device)
"What should I do with the device?
We recommend resetting your Car Thing to factory settings and safely disposing of your device following local electronic waste guidelines. Contact your state or local waste disposal department to determine how to dispose of or recycle Car Thing in accordance with applicable laws and regulations."
That's sad. They should link to this project, or officially release kernel/drivers.
They can't. They're legally washing their hands of the product. If they recommended anything else, they could be liable for defective products or for supporting a general purpose computing device, which comes with a plethora of other legal potholes (including export restrictions).
That sounds like one of those things rich people say when they don’t want to do something and want people to be mad at “lawyers” or “government regulations” instead of them.
Car Thing is a physical device that looks alike a 7" tablet with a giant knob/button sticking off the face. It originally only did Spotify, ow it can do other stuff I guess.
Is there a simple BOM for making something like this without a Car Thing. Would an arduino/rock chip with a tft touch screen work or does it warrant pi levels?
The computer is the easy part — any 10-year-old Android phone would do the compute part, and the networking part, and the screen part; and would be easier to program; and would cost less than pretty much any SBC kit.
The hard part (at a DIY level) is, honestly, the physical buttons and knob — wired as an input device to the compute without hogging the device's (likely only) port — and with good industrial design (no gross 3D-printed textures that easily get dirty from being touched a lot; no deep wraparound plastic bezel that prevents you from touching the corners of the display; dynamic-function side buttons thin enough to allow the screen to show the labels for them; etc.)
Right now you can get an Amazon Kindle Fire 10 HD for $75 - it has a screen ~3x the size of the CarThing. Spotify works out of the box on it. Same with Web Apps. You can put it in Developer Always On mode in about 10 seconds via the menus and it works great as a dashboard.
The actual Car Thing runs Linux on an Amlogic S905D2 (quad Cortex A53) with 512MB RAM/4GB flash and an 800x480 screen. So you could do something similar with pretty much any random cheap ARM SBC.
If you're writing a README like this, it's a good idea to remember that there are a bunch of people who may be interested in your tools because they're FOSS but would never have interacted with whatever proprietary thing you're comparing them to. Do us all a favor and give a two-sentence explanation for what you're building on its own terms.