Google Developing 'Brillo' OS For Internet of Things 227
An anonymous reader writes: A new report from The Information (paywalled) says Google is working on an operating system called "Brillo" that would be a platform for Internet-of-things devices. It's supposedly a lightweight version of Android, capable of running on devices with extremely limited hardware — as little as 32 MB of RAM, for example. The company is expected to launch the code for Brillo at its I/O event next week. This is particularly relevant now that Google has acquired Nest, Dropcam, and Revolv — a trio of "smart home" companies whose devices could potentially by unified by Brillo.
32MB? (Score:5, Interesting)
32MB? Bah. I remember the days when you could fit a whole OS in a hundred K! And 640K was enough for anyone!
On a more serious note: The 'internet of things' hype is supposed to be about putting sensors in just about everything. 32MB is a lot of data for a sensor.
Re:32MB? (Score:5, Insightful)
32MB is a lot of data for a sensor.
Not if you're a spy agency.
Re:32MB? (Score:5, Funny)
Not if you're a spy agency.
Such an old fashioned term, they called advertising corporations now.
Re:32MB? (Score:4, Insightful)
No, the sensors are already there. The 'internet of things' hype is about giving control over machines and private information from sensors to large companies.
Re: (Score:3)
IoT is nothing of the sort. A few questionable corporations are creating that product that way but just because it says IoT doesn't mean that you need to give anyone else data.
Re:32MB? (Score:5, Insightful)
Yes it doesn't mean, but when it says "google", your data land at their servers. And from a security standpoint, they have control.
Re: (Score:3)
That's the typically over generalized anti-Google crap we've come to expect.
Just like Chromium and Android varieties don't communicate with Google there's no reason to expect that every device like this will either.
Yes it's likely that many such devices will, but I'll reserve freaking out for facts and data rather than anti-corporate speculation.
Re: (Score:2)
Re: (Score:3)
Could you tell us which percentage of Chrome-based browsers and Android phones do not communicate with Google?
From your misleading post it sounds like the number should be 90. If that was so, nobody would care, but the reality is the other way around.
well my amazon tablet runs android and doesn't use google services for anything but search and i was given the option to pick theirs amoung a list of several competing services. Same with chromium I choose to use google search because the competitors are shitty and/or and even more evil.
Re: (Score:3)
The trouble is that just about every fucking "IoT" device is designed to communicate over the Internet to the manufacturer's servers, even when it would make more sense for it to just communicate with a base station/server over the LAN and have the data never leave your house. Allegedly it's for ease of use, but that's bullshit -- it's for data-mining.
Re: (Score:2)
these days, the IoT term has been hijacked to mean 'we mine your personal info along with smart sensors we convince you to buy and install inside your private LAN.'
that's really a bad idea, of course. I'm very into IoT things right now, myself, but NOT cloud-based shit! not for me! MY iot stuff is about device to device and device to small server, ALL staying local and nothing going across to a WAN. nrf24l01, xbee, even esp8266 - all neat wireless protocols. but all meant to stay local, too.
if your iot
Re: (Score:2)
Started writing my own IoT library, to access various IoT-things in a generic, abstracted manner - one thing I haven't even bothered with, is cloud-based stuff.
LAN works just fine, as does VPN'ing into your home to read stuff.
Re: (Score:2)
No. "IoT" most definately == cloud. Everything that actually respects your privacy came out before "IoT" was a thing.
"IoT" is a euphemism for "home automation, except trojaned so we can steal your data."
Arduino can do RSA and others (Score:2)
> If you use those on an Arduino (I am) I guess it lacks the juice to do proper encryption?
Arduino can do RSA and others. Good algorithms are generally quite feasible on very small devices, at least for small amounts of data. Which goes to show 32MB is rather high for current IoT devices.
However, there is a $9 board about to be released which has 512MB and runs Linux. So while it's not NECESSARY to have megabytes of RAM in a "thing", it's not all that expensive either. The price per byte
Re: (Score:2)
Re: (Score:2)
For few bucks you get a chip that offload the TCPIP layer and the whole TLS/SSL protocols and encryption from the processor. That is how the IoT should be done.
Makes no sense. The chip that does the TCP/IP can also do all the other work.
Re: (Score:2)
Can make sense if the TCP/IP chip is produced in such vast quantities that it benefits from economy of scale: It might work out cheaper to use a really tiny chip plus a TCP/IP support chip than it does to use a more powerful microcontroller that has enough capacity for the TCP/IP.
Re: (Score:2)
[Home|Industrial] automation is nothing of the sort. IoT is that with marketing BS and ads plastered on.
Re:32MB? (Score:5, Insightful)
Re: (Score:2)
In bulk it is easy to purchase microcontroller with 32MB of ram for $7 (though the closest my lazy digikey search [digikey.com] turned up was $11.50 for 24M).
The cost of the microcontroller has a negligible cost on the nest retail price, and darn near every other embedded system sold to consumers.
Re: (Score:2)
In bulk it is easy to purchase microcontroller with 32MB of ram for $7 ... The cost of the microcontroller has a negligible cost on the nest retail price, and darn near every other embedded system sold to consumers.
The Internet of Things isnt really about expensive geek toys like the Nest. The idea is that, a few years from now, all of our little devices will be on the Internet - including things like commodity fire detectors and cheap toasters. Seven bucks is a big deal when you're talking about something that sells for ten or twenty dollars.
Re: (Score:2)
IoT is going to fizzle out just like X10 did. Nobody asked for this technology.
Re: (Score:2)
Yeah it seems like only yesterday where whole OSes fitted on 10k.
Oh Wait... [slashdot.org]
Re: (Score:2)
likely its the magic 32k number, which happens to be the size of the atmega 328 (arduino classic) chip!
still, 32k is too large for many sensors. attiny chips are now in the 8k range and even that is asking a lot. 4k used to be more typical.
android? HAHAHAHAH! google, you are teh funny. the security nightmare and complexity of android for IoT sensors? wow, I needed a good laugh today.
Re: (Score:3)
I shudder when I think about Google wanting to embed a Java runtime in my coffee pot and microwave...
Re: (Score:2)
"Thank you, google!"
- The black-hat community.
Re: (Score:2)
32MB? Bah. I remember the days when you could fit a whole OS in a hundred K! And 640K was enough for anyone!
On a more serious note: The 'internet of things' hype is supposed to be about putting sensors in just about everything. 32MB is a lot of data for a sensor.
For today's process geometries, it isn't. One can easily have on-board flash that contains the OS, and then have the sensor's baseband work off that
Re: (Score:2)
I'm more used to working with 1*k* of RAM and 32*k* of code for a sensor node.
32MB? Goodness. I used to run a Sun workstation as a firewall on 4MB!
Rgds
Damon
Re: (Score:2)
I've been putting sensors into everything since the 1980's and AFAIK, was one of, if not the first person to put a coffee machine on the internet (sorry MIT guys) and I have no idea what the internet of things is.
Just like the cloud, everything that becomes a buzzword is merely a repackaging of something that already existed, palatable for ignorant consumption (usually by investors).
Re: (Score:2)
32MB? Bah. I remember the days when you could fit a whole OS in a hundred K! And 640K was enough for anyone!
Pfft, I remember running 40 users on terminals on a machine with 16K that probably had less than 1/10,000th of the cpu power a laptop has today.
Luxury! [youtube.com]
I remember putting the boot card at the front of my deck, placing it in the card reader, and pressing the "load" button on a system with 4K of core memory(*).
Who'd have thought 40 years ago, we'd all be sitting here drinking chateau de chatillon [youtube.com].
(*) That part's actually true. I started on an IBM-1130, predecessor to the IBM-360.
Re: (Score:3)
I can beat that :) I started on an IBM 1620 (in 1966) with 2k of core memory --- old fashioned doughnut core. 2k was the "big" machine, by the way.
Re: (Score:2)
this is what i came here to say. how dare you steal my 30 seconds of glory!!!
Soooo (Score:2)
It's Android.
Yay!
I mean Brillo, sorry Google.
The ultimate... (Score:3)
32MB (Score:2)
32MB is not "extremely limited hardware". I've programmed on devices with 32KB of RAM before.
Re: (Score:3)
32MB is not "extremely limited hardware". I've programmed on devices with 32KB of RAM before.
That's nothing! I've programmed on a device with 64 bytes before! Specifically a PIC12F675. I think some of the attiny and PIC10F have even fewer bytes (32?).
But yes, typical things like radio microcontrollers (like the TI and Nordic ones) have RAM measured in the tens of k, and those are the backbone of small, low power wireless devices.
Re: (Score:2)
Not quite the same. When you consider who to connect one of these microcontrollers an an IoT device you need all sorts of additional parts. We're basically offloading the software from the OS to specific hardware / firmware combinations that handle it for us. There's a lot more than 64bytes of code running on your project.
Re: (Score:3)
Re: (Score:2)
32KB of RAM? That's luxury. Try 8KB.
Next up: someone who's programmed devices with less than 8KB of RAM.
Re: (Score:2)
8kB? Many RAM such luxury.
It's amazing what you can squeeze into 512B of RAM.
Re: (Score:2)
Yep. 128 bytes. With 4K of flash, granted. And we did have to upgrade to the 16K version eventually (still 128 bytes of RAM, we got 256 in yet another revision though)
Re: (Score:2)
32k, Im working on an Arduino (328p) with 2k of SRAM and 32k of flash storage.
So far, I have a webserver running on it that controls a light switch up to 10A.
Re: (Score:2)
Web server on a 328p? I'm betting it can't do any server-side scripting at all...?
Re: (Score:2)
Web server on a 328p? I'm betting it can't do any server-side scripting at all...?
Sure you can. An Arduino WizNet adapter has the whole TCP/IP stack on it, so all you need on the 328p is the TCP client code. 32K is more space than you might think when it's all your code.
Re: (Score:2)
Im doing it on the enc28j60. It does not contain the tcp stack on the unit, you have to handle it in the CPU.
The current code uses 27,626 bytes (89%) of program storage space and 1,543 bytes (75%) of dynamic memory.
Handles web interfacing for the switch, network config, rebooting the unit, and offers a json API call for pulling current state.
That is a wired connection version. I am also working on one that uses the ESP8266 wifi unit which does have the TCP stack on it. That one is much smaller code.
Re: (Score:2)
First PC I used was a zx81 with 1KB of RAM. Saw my first code on that.
32MB vs 10KB (Score:2)
Re:32MB vs 10KB (Score:4, Insightful)
U.S.A.: 32MB
China: 10KB
Guess who's more efficient and guess who's trying to cram spyware into everything.
Re: (Score:2)
U.S.A.: 32MB
China: 10KB
Guess who's more efficient and guess who's trying to cram spyware into everything.
The Chinese stuff might just have a one-line routing table pointing everything to one of their government servers - that wouldn't require many bytes.
Sigh (Score:5, Insightful)
"as little as 32 MB of RAM, for example"
I'm getting old.
My first full PC had 2MB of RAM.
My first computer had only 48Kb of RAM.
Hell, I have an "computer" next me to capable of connecting to the Internet (even to act as HTTP server, DHCP client, NTP client, etc.), controlling relays, performing some computations, etc. It has 32Kb of Flash, 2Kb of SRAM and 1Kb of EEPROM. It's called an Arduino UNO.
By comparison, then, 32Mb is over 1000 times more than needed for IoT crap.
Re: (Score:2)
Not only various other variations of this (my first PC in particular only had 448kB of RAM, and only 64kB of that was on the mainboard) but my first computer that ran Linux was a 386DX25 with 8MB of RAM and a 120MB disk. And while I threw it away recently, I used to have an iOpener with some kind of rinkydink Linux with an ancient browser on it in just 32MB of disk. ISTR it having 16MB RAM. If anyone would like the wizztronics adapter, I have one here along with a low-profile cooler that fits inside the iOp
Re: (Score:2)
for the heck of it, remove the disk drive to even the playing field with an IoT device and then tell us how well it runs
I'll get that right away (Score:5, Insightful)
Google is definitely the company I want making the OS that will be in every fucking electronic device in my house, because they're so serious about my privacy.
Re: (Score:3)
You jest but I'll bite. Google most definitely care about your privacy. In the number of companies willing to share your information with 3rd parties Google is right at the bottom of the list for one simple reason, control. There are a lot of companies out there that share the data they collect. Google keeps the data and provides an API to let someone target your anonymised data set.
Google is the number 1 offender for collecting my private data.
Google is also the number 1 company I trust not to simply sell
Re: (Score:2)
Idiot. That Google most definitely cares about any person's privacy does NOT follow from their practice of not selling or sharing your personal habits. I'm glad you are in no position to legislate, you moron.
I thought your country had a no child left behind policy. Guess I was wrong.
SubjectsInCommentsAreStupid (Score:2)
They called that app 'inkulator' which in italian sounds very, very, VERY and i mean, seriously WRONG!
As little as 32MB? (Score:2)
I can recall when an entire Linux -- not "pared down" -- ran in "as little as" 16MB. (No X Windows; server only.) It was the Anaconda installer that forced me to upgrade systems to 32MB. (At least temporarily; after getting Linux installed I could pull out that extra memory.) Of course, this was a "few" years ago. Nowadays, I have more memory than that in my old Laserjet. What's limiting these devices to have only 32MB? Power?
Re: (Score:2)
do you recall running linux on a system with no disk drive?
Correctly named? (Score:5, Insightful)
Re: (Score:2, Funny)
I bet it gets scrubbed.
Jerry Sandusky is pleased (Score:2)
32*M*B? (Score:5, Interesting)
I regularly work with devices having 32*K*B or RAM. That talks TCP/IP. (And much smaller than that, but they do very limited amount of networking, like CAN.)
And I remember running Linux on devices with a lot less than 32MB...
What's the challenge with 32MB? And how is that extreme in any way?
Re: (Score:2)
but they do very limited amount of networking .... snip .... What's the challenge with 32MB
You answered your own question in the example. You want networking you either need to implement a network stack or offload that stack to another component in which case you're just cheating by moving code around and ultimately still using the same amount of resources.
Though I admit that 32MB sounds high for what we're talking about, I'll happily callout anyone who compares it to programming a simple PIC micro and thinking they are badass.
Re: (Score:2)
My total code + static web page storage (in a small external flash) is around 196KB. That isn't anywhere near 32MB.
I'm in the process of moving to a PIC32 platform to be able to support HTTPS and IPv6, along with a lot of other functionali
Re: (Score:2)
3.8K of RAM results in piss-poor networking performance, since it can only hold two full sized network packets.
Are they serious? (Score:3)
Re: (Score:3)
All of them. Why are you asking such a silly question?
typo? (Score:2)
I hope that's 32 kbytes of RAM, not 32 MB of RAM, because most IoT devices don't need and don't have that much memory.
Re: (Score:2)
What you need depends on the application, what you have depends on you meeting your design criteria.
32MB memory chips cost $5 in quantities of 1. If you have an IoT application that needs a full Android OS on it for some reason then the memory won't break the bank.
Re: (Score:2)
Re: (Score:2)
so you need a micro with both an LPDDR controller
STM32F429 is about $5 in large quantity
Re: (Score:2)
enough address space to make use of that 32MB without contorted bank-switching bullshit
In other words: any kind of ARM CPU, which is fine because they are cheap and easy to use.
Re: (Score:2)
It's not about cost, it's about power and size.
Re: (Score:2)
Yep, interestingly the Raspberry PI fits a Dual core 32bit ARM and 512MB of RAM on the same surface area as an 8bit AVR or PIC. Power wise it all depends on the devices ability to enter low power states.
Neither of the features you mention are trade-offs that we need to have. Not at the scale we're talking about, and not with today's technology.
Re: (Score:2)
Power wise it all depends on the devices ability to enter low power states.
Yeah AVR chips consume 0.001 mA in sleep mode (https://www.sparkfun.com/tutorials/309)
and Raspberry pi consumes 320 mA when linux is idle (https://raspberrypi.stackexchange.com/questions/341/whats-the-current-draw-and-supply-voltage-tolerance)
so AVR consumes 320000 times as much power as Raspberry Pi
Re: (Score:2)
oops backwards, should say "times less power"
Re: (Score:2)
Thankyou for cherrypicking a result without any understanding.
I invite you to power-down an AVR some time and see exactly what they are capable of when drawing your mythical 1uA. Here's a hint, you can't get that power usage using a normal system clock, in fact you can't get that usage with the clock running at all, or anything else, in fact there's very few things that can wake and AVR when it's using that little power, not even the watchdog. An Internet of useless Paperweights is what you're going to have
Re: (Score:2)
Arduinos can get by with as little as 5 uA in standby:
https://github.com/petervojtek... [github.com]
Part of long battery life is also to have an OS that allows the system to sleep most of the time.
A Spec mote [berkeley.edu] takes a few cubic millimeters of space. Those are the kinds of specs we're heading for, and a 1000x difference in memory and the nature of the OS matter a great deal. Android doesn't cut it.
Will there be an SOS OS as well? (Score:2)
Re: (Score:2)
Re: (Score:2)
Too Big (Score:2)
32MB? Bill Gates said nobody would ever need more than 640KB. That's not the size of the OS but the total system memory. Let's work within reasonable memory limits...
wow (Score:2)
computers are faster and have more ram
amazing
can we stop already with the "I remember when" crap?
'Brillo' OS for IoT? (Score:2)
Waste of resources (Score:2)
Sensors, simple damned commands, and a TCP/IP stack should not need anywhere NEAR 32MB of RAM to run.
Google needs to step back and re-learn some goddamned Assembler.
Re: (Score:2)
Sensors, simple damned commands, and a TCP/IP stack should not need anywhere NEAR 32MB of RAM to run.
Google needs to step back and re-learn some goddamned Assembler.
we should all throw out our systems with Intel core processors and go back to 8086 chips, after all they are totally capable of handling keyboard input, network connections and color displays, so really who needs any more than that?
Re: (Score:2)
A TCP/IP stack is simple, but there's a lot more to networking than just TCP + IP. You also need a web server, security protocols, zeroconfig, DNS, and plenty of other things.
IoT -- more gadgets, less intelligence? (Score:3)
Some devices like Nest seem to add more intelligence to things we already use, but some devices just seem to add gadgets without actually making things more intelligent.
Where are my outlets with an integrated, network accessible power meter? Or the smart electrical panel that can have circuit priorities and acceptable power source types assigned to it so that when I run off a Tesla PowerWall I get maximum utility from the power? Or even the main power meter that lets me see my electrical utilization in real time?
So much of the IoT just seems to be about adding new gadgets whose utility seems limited while ignoring the rest of the house which is dumb.
Re: (Score:2)
The video from the JSConf is fun. A "software guy" smashes open his €60 phone to extract the main board, fully scriptable from JavaScript accessible via the Firefox development tools.
This could see a hobbyist after-market for phones with cracked screens... Built in wifi, bluetooth, GPS, 4G, camera etc.
Re: (Score:2)
The Z1 comes with 768MB of RAM which is 24 times the requirement here - you accuse Google of bloat?
Re: (Score:2)
Re: (Score:2)
Because trademarks are only exclusive to their industry. Anyone who isn't making a product meant for cleaning can use it.
Re: (Score:2)
yes because customers will clearly be unable to distinguish a stainless steel pad from an operating system
Mars has a trademark on the letter M. Does that mean that other companies cannot use the letter M? No, because the trademark pertains only to candy.
Dishwashers. See Apple Records vs iPod & iTune (Score:2)
We already know this is designed to be used in dishwashers and other appliances. Google doesn't know what else it'll be used for. It IS kind of silly to pick such a well-known trademark when the POTENTIAL for a possible conflict is so obvious. Brillon, Billo, or Belo wouldn't have the same problem. One of those could be a trademark, but being far less well-known, it would be a much smaller problem.
I recall in the early days when Apple (computer) chose their name, they thought there would be no problem w
Re: (Score:2)
We already know this is designed to be used in dishwashers and other appliances.
Brillo pads are not appliances.
Re: (Score:2)
If there were sources to back all of this up, I'd be more inclined to believe it.
Re: (Score:2)
try typing "brillo" into google and see what you get
Re: (Score:2)
Why would this need 32Mb?
Gosh, who would ever want any more than an 80386 processor? After all it has every feature necessary to run modern 32 bit software.
Re: (Score:2)
java can run in very small devices:
http://www.mikekohn.net/micro/java_grinder.php
he's got java running on Commodore 64 and MSP430!
Re: (Score:2)
and any real programs you try to run will fail with memory allocation errors