# List of consumer electronics embedded OS's



## Aaron_VanAlstine (May 1, 2017)

Is there a web site that lists the embedded OS that hardware (TV's, speakers, refrigerators, DVRs, toasters, etc.) are running? I'm mainly interested in learning which consumer items are running FreeBSD, but also interested the hardware running Linux, embedded Windows, etc.


----------



## ronaldlees (May 6, 2017)

Your question sparked my curiosity, so I did a little searching ...

It seems that FreeBSD does not figure heavily into embedded, depending upon your definition of "embedded."

So, traditionally, an embedded device for a toaster would be a very tiny MCU powered device.  Such a device might be an 8 or 16 bit MCU, with no MMU, something that follows from the scarcity of memory - which may be only 2KB - which is too low to run any high level OS, including Linux or FreeBSD.  Such a device is probably on bare metal, or a primitive scheduler "RTOS".  Slightly more powerful devices (with more memory) may run one of the popular RTOS systems like FreeRTOS.

Higher powered (relatively speaking) 32 bit MCU devices have been around for a while.  Examples are the STM32 and PIC32 series of MCUs.  The STM32* MCUs can run Linux after it's been patched with a (ucLinux) series of patches so that it can be used with MMU-less micro-controllers.  An STM32* MCU may have 256K RAM, and larger flash memory.  For perhaps some applications, it'd be plenty fast. 

On the other end of the spectrum: recently, someone shoe-horned LInux to run on an 8 bit, 16k SRAM, 24 MHz Atmega1284, using 16 MB extension memory SIMMs. After typing a command, it took a minute to get the response!

There's no project (like ucLInux) to make any of the BSDs run on MMU-less MCUs.  Thus, the only "embedded" type of devices you'll find FreeBSD running on are CPU type devices that are found on the more powerful (ARM, x86, MIPS, etc) boards. MIPS based boards are often found in network devices.  The definition of "embedded" has been changing to include these latter devices.  For instance, FreeBSD can run on a Pi, and it's conceivable that recently designed applicances could use a similar board.   "Embedded" simply means that the processor is "part of another containing  system" - such as an applicance, and is typically keyboardless or user input-less.

Right now, I doubt if there are any FreeBSD refrigerators. I know there are Linux controlled refrigerators.  But, a few years from now ... who knows?


----------



## free-and-bsd (May 6, 2017)

GRANDSTREAM IP phone runs Linux. I'm using GXP1450 model and it runs Linux. As for my washer, shaver, vacuum cleaner and blender, I doubt they don't... will have to ask Richard Stallman about the available options. Maybe it is possible to set them free (as in freedom, not beer).


----------



## ronaldlees (May 6, 2017)

I should add that those STM32* devices are no slouches!  My Photon really blazes along with its built-in WiFi and FreeRTOS (even though it's only clocking 120 MHz).  The STM32* chips and other high-end MCU chips are treading into functionality areas traditionally reserved for CPU chips ...

But, in 2013 Microchip said their most popular MCU was still the 8 bit PIC16F, and not any of the 32 bit MCU devices (if I believe what I read somewhere else).   Apparently a lot of applications just don't need the math throughput, and the small/cheap chips work fine (coffee maker example). Millions of 8051 chips are still being sold.  The 32 bit chip packages drastically increase  the pin count (and expense).

The "connectivity" requirements of iOT may change the equation, or not.  The smaller, less functional chips are probably more reliable, although I don't know that. For network devices,  the higher speed chips make sense.  Since FreeBSD doesn't run on an MCU, look for it in network devices rather than refrigerators and coffee makers.


----------



## Aaron_VanAlstine (May 8, 2017)

ronaldlees said:


> Your question sparked my curiosity, so I did a little searching ...



Great information! Let me add that there a some firewalls that run FreeBSD, including the Netgate SG-100 microFirewall. I suppose those count as embedded systems?


----------



## drhowarddrfine (May 8, 2017)

Aaron_VanAlstine You said consumer electronics. 

Playstation and Ninetendo Switch run FreeBSD.


----------

