Mozilla WebThings
hacks.mozilla.org
hacks.mozilla.org
I do love that this dashboard can even be ran on your router. Also the web UI looks really clean.
I don't know if it's doing better in non-US markets. But I don't think so; someone else _did_ take the Firefox OS source code which of course had an open source license, and adopt it and rebrand it as KaiOS. I am not sure what their aspirations for it are. Currently, I do not think it is the promise of what people hoped FirefoxOS would be (and may or may not ever have been).
https://www.bgr.in/news/jiophone-kaios-surpasses-ios-india-s...
By being mostly proprietary in new and important parts, built on top of an open foundation which itself is not the most valuable part for customers.
I suspect that key parts of Kai OS are proprietary, and the foundation left from Firefox OS is very basic. Important, but totally insufficient.
GerdaOS (LineageOS for KaiOS) allows people to import and run FirefoxOS packages without modification, though many apps will need some changes to allow it to work without a touchscreen.
The unofficial rumour mill says that with the extra investment from Google, KaiOS will probably shift to Chrome(ium) at some point in the future, but that's just a rumour and remains to be seen.
Mozilla spent years with dozens to hundreds of devs working on getting it to be snappier than every other low end phone, short of Google paying for this type of dev work on KaiOS, there will likely be nothing more than security patches and cosmetic changes to KaiOS.
“KaiOS is based on the Firefox OS open-source project and we are committed to abide by the rules of the applicable open source licenses.” https://support.kaiostech.com/support/solutions/articles/350...
[1] almost, because every smartphone needs proprietary drivers to run …
Free phones are slowly popping up https://puri.sm/products/librem-5/
It’s bizarre to me when people complain about things like “tivoization” or “open core”. These are by design or they are solved problems if the creators care for the trade offs.
That is the Mozilla community’s issue. They chose the licensing. They have revised the strategy a number of times. I remember when code was tri-licensed.
Or it’s also a consumers issue. Money talks.
That being said, this is the minimalist interpretation of the license, and not what is commonly understood as open source (where the repo is available somewhere, at the very least).
Looking at the commit history, they keep on referencing bugs in a private tracker though (I know I'm moving the goal posts :-).
I trust KaiOS less than Android in that regard.
I wonder how much of this will be Rust? :)
https://news.ycombinator.com/item?id=18887403
I'm excited to hear more.
Synology's ARM line is generally underpowered compared to their Intel offerings, in terms of clock speed, memory capacity, and core count. They also tend to gate additional features (e.g. hardware-accelerated encryption) behind their Intel offerings.
edit: We're mostly talking Atoms / Celerons here, so not exactly screaming performance either way.
There are third-party package managers for the ARM devices but there are a lot of broken packages so I wouldn't recommend using it.
Edit: I've read the article and Mozilla even mentions reskinning/basing off of OpenWRT. Which only puzzles me even more given you write "the beginning of apps for routers" as if OpenWRT/pfSense/etc doesn't exist.
Likewise, uninstalling via a package manager handles orphaned dependencies automatically for you.
> How often do you want to go messing with your router
That's the thing when you're running what is essentially Linux (in the case of OpenWRT): it's not a router, it's an OS and you can manage just like you do any other OS. Your description of "apps" as containers seems to abstract away the OS level and leave you with just some frontend (which is probably running Linux/*BSD underneath) and no control.
Yes, and fairies are real, and so is Santa. I wish things were this way, but the reality is that most package managers aren't 100% perfect when it comes to install/uninstall and cleaning up of stuff. opkg is especially bad at it. If you look at how it actually works, the core files of the package are handled by the package manager, which usually (though not always works). But most packages aren't just binary blobs to be moved around. Take something like mysql-server for example. Not only will it install the MySQL binaries, it will also create /var/lib/mysql for all the data, and a few cache dirs as well. It'll also add files to /etc/, /etc/defaults/ and so on. Oh, and after it is installed, it will start the mysqld process. When you try to uninstall this stuff, but default the /var/lib/mysql directory won't be removed. Who knows, you might want the data that's there. Oh and that config file? That's staying too. So if you uninstall and reinstall mysql-server because something went bad, you'll just get the same config and data. Is that what you really wanted? You can of course do something like `apt autoremove --purge mysql-server` and that'll mostly work, assuming that mysqld isn't frozen, at which point the pre-remove script fails to kill it and you suddenly are left with a system with an inconsistent state. Last I checked, opkg didn't even have a purge option. And it doesn't stop there. The pre/post install/uninstall scripts can do whatever they want, and if they error out, you again are left with a mess you will be cleaning up by hand. I have done this on many distros many times and it is always a mess. apt/dpkg are one of the better systems out there. The rest? They will make you want to nuke whatever device you are working on from orbit.
I am not on the "containers for everything" bandwagon, but the idea that opkg is somehow comparable in this case is laughable.
NAS apps sound interesting, but not what I'm looking for. Router apps have untapped potential because routers are relatively inexpensive, always on, and have a real Internet address, unlike the rest of the home/office network.
What kind of apps would developers create? All kinds! Some would succeed and some would fail, just like phone apps. The point is to unleash developer creativity. Today, nearly all Internet traffic is routed to Netflix, Google, Amazon, and Facebook. Over the next few years, consumers will buy millions upon millions of upgraded routers. I think they would like to buy routers that do more for them than send all their traffic to a tiny number of huge companies.
[…]
What kind of apps would developers create? All kinds!”
Give what we know of applications on smartphones, I fear “all kinds” will include many, many that claim to be anti-virus/anti-hacking/pro-security, but steal data instead, and that grandma, grandpa and zillions of others will happily install them, possibly even pay for them.
Using https prevents your router from reading most of what you send, but that also prevents software in your router from doing much, so I fear the router’s software would have to MITM your https connections to do anything useful.
Does grandma even _want_ to install packages on their router (which is likely a modem combo provided by the cable company), let alone know what a router is? Grandma wouldn't even be able to get her shows if she messed with the MoCa for FiOS, for example.
I've also run several generations of OpenWRT and I've decided it doesn't make sense for me to spend time maintaining it. For example, I'm interested in installing something like Zulip (an open source team chat service) on my router, but I know from experience that anything special I install in OpenWRT requires custom configuration and will need regular manual maintenance and upgrades. It's a big time commitment and I have to be careful with my time.
In a better world, I would tap to install Zulip on my router, automatic upgrades would be enabled by default, and I would be prompted to also sign up for a Zulip-oriented encrypted backup subscription service. Having spent only a minute or two to install Zulip, I would gladly pay for the backup service since the developers proved that they respect my time. I would no longer feel the need to sign up for another cloud service. Privacy would win!
I spent far too much time trying to maintain a setup of HASS. It's schizophrenic with it's MQTT support and the two paths don't play well. It "supports" SSL through Let's Encrypt but it was problematic with MQTT. It's kind of awful to configure with files being scattered all over the filesystem. It frequent updates and frequently breaks configurations. It also has weird limitations with certain Smarthome integrations (e.g. Insteon) that make it unusable.
Contrast this with HTTP and WebSockets that are extremely simplistic to use. Largely by virtue of bigger communities using them, but so it is.
Where's the benefit of MQTT? The code is just as large and more opaque by being an uncommon standard (compared to HTTP). Everyone says bandwidth, but that's hardly a concern often and when it is...I can never seem to find the numbers of how much data usage MQTT would save for a given application.
1. Most implementations are quite weak. E.g. the Paho implementation for C can't send and receive at the same time, can't publish multiple messages concurrently, and will block it's only execution thread for lots of seconds until the server might response. That might be ok for very low-throughput devices, but in general it's neither performant nor resilient. Libraries like these also don't track whether subscriptions already have been performed or not, don't perform retries, etc.
2. The specification has a few warts, that imho make things like QoS1 and above impossible to implement correctly. E.g. if a message is sent with a certain messageId and the server doesn't respond within a timeframe, the client can't really time-out only this publication. If the client forgets the messageId, continues to work and later on publishes a new message with the same Id (there are only 64k of those), then any ACK for that is ambiguous and the client couldn't tell for sure which delivery was ACKd. That basically voids the at least once delivery property. I don't any implementation out there blacklists the IDs in order to avoid the ambiguity (which would also not work long term anyway, due to the low address space).
3. Most applications want some kind of transactional or request/response semantics. Of course that can be implemented on top of MQTT in the application layer, but it's more tedious and error-prone than using a protocol which already enables it.
4. Lots of applications also want to stream bigger amounts of data for some use-cases. Implementing a multi-megabyte upload or download with MQTT requires to build a custom flow-control, retransmissions, buffering for out-of-order messages, etc. Or in other words: They are required to implement the equivalent of TCP on top of UDP.
Overall my opinion is that it can be used for certain applications, but it's actually a far weaker option than assumed. Due to the issue 1) and 2) I would recommend to mainly use QoS0 if talking to a MQTT broker is a requirement - and to move all reliability concerns into the application layer instead of relying on MQTT doing it right.
I’m impressed. Almost sold, even.
All I’m left wondering about is device-support.
How does this compare to (for instance) Home Assistant?
A lot of emphasis is on their Web of Things protocol that looks really cool and would be fun to play around with if you wanted to add your own home-made device (or hopefully more vendors will be adopting that protocol soon).
Where's the love for IoT DIY/tinkerer gadgets though? i.e. Arduino, Beagle bone, ESP8266/32?
[0] https://iot.mozilla.org/framework/
[1] https://github.com/mozilla-iot/wiki/wiki/Supported-Hardware
Things Gateway also can control IoT machines, but its simple rule-based system. It is currently losing point and improvable feature.
I'm very excited with Things Gateway philosophy, so I can't wait for its next evolving.
The hope for a better Internet.
It's opposite feeling with Google.
It did not lead to widespread Firefox mobiles, but it was not wasted work.
The real thing that kills this is that there's no native support from Google Home or Alexa. They're easily the best way to control IoT devices.
But since you pointed out a necessity, and for every necessity there is a customer, one can start a SaaS for (Mozilla) gateways, charging for traffic/storage.
There are others IoT providers, but I think there is none for Mozilla's (?).
Any chance Google stops funding them soon?
(Wow, a question was asked. Better censor it Mozillans!)
You can see Mozilla's latest annual report report at https://www.mozilla.org/en-US/foundation/annualreport/2017/
And the latest public financial statement at https://assets.mozilla.net/annualreport/2017/mozilla-fdn-201...
(Disclosure: I work for Mozilla, but not on WebThings or producing those reports)
Is getting $500 million dollars a year from Google not a sweet deal?
Is that a relevant question considering that Mozilla Foundation is a non-profit organization?
> Any chance Google stops funding them soon?
Probably, but that won't stop them from doing what they're currently doing. Also, Google doesn't "fund" them so much as pay them for search integration.
> (Wow, a question was asked. Better censor it Mozillans!)
The question was not presented in good faith. In fact, it's clear that you weren't actually asking a question at all. You were stating your opinions sarcastically in the form of a question.
Yes. Absolutely.
> Probably, but that won't stop them from doing what they're currently doing. Also, Google doesn't "fund" them so much as pay them for search integration.
It's 97% of their income. I think things would change a lot.
> The question was not presented in good faith.
Yes it was.
> In fact, it's clear that you weren't actually asking a question at all. You were stating your opinions sarcastically in the form of a question
Nope. I'm actually wondering if anyone has some insight as to whether Google intends to stop funding them.
You claim it's a relevant yet provide no reasoning as to why.
> It's 97% of their income. I think things would change a lot.
Sure, one major thing would change: the default search provider. People are quick to forget that Mozilla received no funding from google between 2014 and 2017. The only reason they signed a new contract with google in 2017/18 was because Yahoo went under. Without Google they would need to find a new search partner, and there are definitely other companies chomping at the bit.
> Nope. I'm actually wondering if anyone has some insight as to whether Google intends to stop funding them.
As far as I am aware, no, Google has no intention to end their contract with Mozilla. Also, you keep using the word "fund". That's not really what's happening here. The default search agreement is a business contract. It's in Google's business interests to be the default search provider on every possible platform; that includes Firefox. In fact, Mozilla actually holds most of the cards in this agreement. That's why google had to offer such a lucrative deal.
That said, I have no doubt in my mind that google would kill Mozilla without hesitation if they had the option. Luckily, they do not have that option.
That aside, Google's approach to introducing experimental APIs like Web Audio, Web USB, Web Bluetooth etc has been... less than ideal. Having been involved in it, I don't think it's surprising that other vendors are not interested in helping.
> Note: If booting WebThings Gateway from an SD card on a Raspberry Pi, please be aware that logging large amounts of data to the SD card may make the card wear out more quickly!
This is exactly what I'm talking about. It's not about keylogging your passwords or getting into your bank accounts. It's about the subtle metadata they'll be able to skim to start fingerprinting you for advertising profiles, and integrating into learning models. It just disgusts me that this has become the defacto behavior for every tech company now rather than "we want nothing to do with any of your analytics". Data is the new oil times 10, and this is Mozilla doing some exploration.
Mozilla does know how to build a community around the projects they work on.
https://en.wikipedia.org/wiki/Privacy_by_design
ps: I am a contributor of it ;)
What do you mean by "another move" here? Mozilla isn't gathering anything!
I can't tell what exactly their management is thinking, but from my sofa it looks like that just as everyone else, Mozilla wants you to be a part of their proprietary[1] ecosystem.
_______
[1] Proprietary as in "unique to the company, not compatible with anything else and in full control of that company", not as in "closed source" or "non-free/non-libre software".
So pretty much the opposite of what you're afraid of.
I eventually abandoned it when I was cutting back on things I had to manage, but maybe I'll take another look soon...
Mozilla is a registered non-profit. This means they are legally required to uphold their mission statement: https://www.mozilla.org/en-US/about/manifesto/ . Mozilla Corp. (the for profit arm of Mozilla) simply exists as a funnel for money into The non-profit.
It is not in Mozilla's best interest to create any sort of walled garden. In fact, Mozilla has a long history of fighting against the concept of walled gardens on every front.
It's reasonable to be worried about Mozilla turning to the dark side, but claiming that they already have is simply false. What we need to do as people concerned with the well being of the internet and the people that use it is support Mozilla financially and politically to keep them on the right path.
Just as an example, if people were more willing to donate to Mozilla, do you think it would be necessary for them to take on search partnerships?