this post was submitted on 24 Feb 2024
766 points (98.9% liked)
Technology
59169 readers
3204 users here now
This is a most excellent place for technology news and articles.
Our Rules
- Follow the lemmy.world rules.
- Only tech related content.
- Be excellent to each another!
- Mod approved content bots can post up to 10 articles per day.
- Threads asking for personal tech support may be deleted.
- Politics threads may be removed.
- No memes allowed as posts, OK to post as comments.
- Only approved bots from the list below, to ask if your bot can be added please contact us.
- Check for duplicates before posting, duplicates may be removed
Approved Bots
founded 1 year ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
Tons of Point of Sale terminals run Windows instead of Linux for some reason, probably because the software they run is only written for Windows.
Makes sense, but a vending machine shouldn't need a fully fledged OS in the first place imo
I don't get it either. What do vending machines need to be computerized for at all? What was wrong with the old kind that was around for decades where you put your money in, pushed a button, and stuff came out? I certainly can't think of a reason for a vending machine to have a camera. That's nuts.
It's 2024, most people don't carry cash, and the whole world runs on automation. These kinds of vending machines are completely over the top, but it's actually a pretty bad idea to not use computers for this application. Just knowing when machines need to be refilled remotely saves more money than such an implementation would cost.
It's not hard to know when machines need to be refilled. You just come regularly, take note of how much or little stock has been purchased, then adjust your refill amounts and times accordingly. This has to be done regardless of a handful of computerized machines because plenty of them still aren't.
Accepting a credit card or tap-to-pay would probably require computerization, but the technology should be no more complex than any other, similar piece of hardware and the machine should even be able to work if the card network is down and just accept cash if that happens.
So sure, part of the machine should be computerized. The part that accepts money. The rest is unnecessary, probably raises the price of the machines unnecessarily and certainly never justifies a camera.
I worked in the arcade/vending business in the 1990s. That blind maintenance model was a crapshoot for the machine owners. We had to routinely send a crew (usually me and one other person) to drive to a location - near or far - with games, photo booths, vending stuff, etc. just in case the supplies in some machine or another ran out, something needed fixing, etc. Sometimes we'd arrive and learn we have hours of refilling and/or maintenance work to do on a machine, sometimes it had been a slow week or two and a crew had just spent their whole workday and a tank of gasoline to collect $50 from the cash box and go home again. Remote administration really changed the game for that whole business.
Fair enough. Sounds like I was wrong.
An IoT SIM costs a whole lot less than sending a technician to every machine to check stock. I'm not arguing in favor of facial recognition, I've already made that clear, but you are dead wrong if you don't think automation at scale isn't economical.
If you're already putting a modem in the box for credit cards, why not collect some telemetry? Sensors are cheap and effective.
They have to go to every machine to restock regardless. All they have to do is note down on a little notepad or even an app on their phone what sells, what doesn't and how quick.
I'm sorry, I just can't go along with internet-connected public vending machines. If you want to connect everything in your house to the internet, fine. But a machine that sells candy bars does not need to be connected to the internet just because it's marginally more efficient to do so than the way it had been done previously for decades. Because it results in this sort of shit. And unnecessary price-gouging through selling a university expensive machines with an unnecessary connection to the internet instead of something that worked perfectly well already and didn't cost as much money.
But by managing stock over IoT one can minimize the amount of visits to only when machines need restocking, instead of also having to go to check stock
A $5 esp32 has more than enough computing power to run a vending machine, cameras and connectivity too. Would be cheaper than having to run all the analogue circuitry.
As if Linux based vending machines aint a full fledged OS even with a minimal installation?
This aint embedded.
No, Linux is a kernel.
OS is a specific distribution, so like a Debian is the full fledged OS.
So just write your inventory inside the file, and bind the vending machine keys to it, and ignore 99% of the OS. The coin slot I would expect runs its own validations.
Linux Standard Base is full fledges OS then
Yes of course Linux is a fully fledged OS, my point was a vending machine should not need any OS, my bad if I didnt make that clear
Why not? A full windows environment (though not really, because these things run what's called the kiosk mode) can run on cheap SBCs and gives you a ton of hardware and software flexibility, and is also pretty convenient. It's very commonly used for very good reasons.
TIL about windows kiosk mode!
I can understand it from the perspective of the developers who need to implement all this crazy tracking/advertising/graphics functionality, but imo a vending machine should only do three things:
Vending machines have done this for decades without requiring an operating system. Keep it simple!
Simple in what way?
You could make logistics simpler by giving these things networking capacity so you can remotely track their stock and cash levels.
If your software needs to run on multiple different device configurations, you can simplify development and deployment by letting the OS handle a lot of the low level stuff.
In other words, a simpler machine is not necessarily going to be simpler to operate for the company.
Let's stop kidding ourselves, the "good reason" is the cto's yearly Microsoft financed holidays and/or too much legacy code to restart from scratch. But from a purely technical aspect, there's no reason to touch windows
It isn't. It would most likely be windows IoT. it's an embedded windows OS that allows for a single app instance to be running.
You'd be surprised how many things run windows IoT right now...
A low end Windows PC can be had very cheap these days. Why bother doing something proprietary, if you can just cobble together something from off the shelf parts?
This isn't even remotely true. Everyone knows that if you're trying to do a cheap embedded product, you use SBCs and Linux. Using Windows for these kinds of applications is almost always the result of a company having a contract with Microsoft that leads their development strategy towards Microsoft's offerings rather than the best offerings.
Also, in what universe is a Linux platform more proprietary than Windows?
People here are delusional, booting windows eats more ram than your typical embedded product needs to run. Same goes the hard drive.
And this people also think maintaining a yocto/build root image is proprietary 🤷♂️