For 3 years, my Mac has been very, very, very (and I mean very, very, very) sluggish.
Typing on the keyboard would give me approximately 1 character per second.
Sometimes I even had to resort to using my laptop, because it was so painfully slow.
This changed recently. Not by changing to a different computer, not by re-installing the operating system (which I tried a few times, but it did not help).
-But why did it happen then ?
Well, it all started a few days ago, my ISP shut down my internet connection for maintenance. My Mac froze completely, because I had mounted a network drive, and it suddenly disappeared while I had documents open.
I could not open my programming IDE, because it remembers what files i had open in the project last time, and it kept trying to open those files that were not accessible.
After having my internet connection back a few hours later, I decided to look at my DNS setup in my D-Link DIR-655 router.
So I thought: "Something is called 'Advanced DNS', it's disabled, might be a good idea to set up some local DNS; how do I enable it ?"
I started searching for "DIR 655 Advanced DNS" and after reading about it a little, I decided that it might not be just yet.
But I did notice that D-Link had a firmware upgrade available for my router.
I decided to upgrade my firmware, because the changelog said something about a "DNS fix".
After doing so, my PowerMac has been running like if it was brand new.
So this is a practical example on why it is a good idea to use an ARM based microcontroller in a device, for instance a router:
If there is an error, you can fix it and provide firmware upgrades easily.
Of course, it's possible with other microcontrollers as well, but if you use ARM, it's even easier, because there are plenty of different MCU vendors, thus there are plenty of example-code, because each vendor provides example code for how to do things, and there's usually at least one Linux distribution available for each Cortex-A (sometimes also for Cortex-M) MCU out there.
And since there are so many Linux distributions available, there are solutions available for most problems that have been through the times.
Firmware upgrade saves you money, because you don't have to have 200 people working in your support department, in order to service your customers. The customers nowadays often have internet and can download firmware upgrades and upgrade their products themselves, and it can be done safely, without the fear of the device never working again, if it was turned off during an upgrade.
If you plan on implementing a firmware upgrade feature for your device, I Recommend reading: Bootloader Design for MCU's in Embedded Systems by jacobbeningo. This excellent document gives you insight in how a bootloader works, which can support firmware upgrade and how to implement it in a safe and robust way.
I need to look for that WiFi chip. I hope the comms stack/driver is available. Otherwise like USB its implementation might cause sleep deprivation.
It is very cool that no driver is required in order to flash the chip. Absolutely!
Those people are doing so many things right.
-But Freescale is also doing cool stuff. Their WiFi MCUs will be a hit.
That feature is an especially useful one I have found in education.
Students never have admin rights on the machines (thankfully...). Therefore they cannot install drivers... so you need to use an already available device class. That's the benefit of the platform: you don't need to install anything (strictly speaking it kind of does install a USB disk but I have never seen that locked out) and you can use any computer with the online compiler.
NXP added the support for the mbed firmware on the LPCXpresso board lately... It was announced on 2nd April: NXP LPCXpresso and ARM's mbed platform now fully aligned :: NXP Semiconductors
Qualcomm did a good move there. They should take it further!
I understood it like mbed made their own bootloader for the 1768, because it's not born with the ability to do this.
as I understand it, NXP decided to make the USB-bootloaders in ROM after mbed; I think thats' a really good move.
There are probably others who have similar functionality; I do not know about that, but what I know is that it's a great idea.
I have Ethernet-over-mains at home not to drill holes in the walls. And guess what... they are ARM Powered as well.
Intellon (INT6400) was bought by Qualcomm Artheros who markets products under the PowerLine name. You still need to inject/extract the signal so it's not free though, especially for >200Mbps.
I remember doing very basic remote control over mains by superimposing a 40 kHz signal over the mains. In that case you don't need many components, but the speed is not great either.
I'd like to have the opposite to limit power supplies everywhere: Power over Ethernet. But it costs more than I am willing to pay for!
I was mentioning the mbed to you in the past. That's also how they do both firmware upgrade and user application programming to Flash. The MCU creates a USB drive. You just copy a file there and reset the board. mbed started with NXP LPC1768 MCUs.