Programming Linux Devices With Arduino And The Cloud

Back in the olden days, when the Wire library still sucked, the Arduino was just a microcontroller. Now, we have single board computers and cheap microcontrollers with WiFi built in. As always, there’s a need to make programming and embedded development more accessible and more widely supported among the hundreds of devices available today.

At the Embedded Linux Conference this week, [Massimo Banzi] announced the beginning of what will be Arduino’s answer to the cloud, online IDEs, and a vast ecosystem of connected devices. It’s Arduino Create, an online IDE that allows anyone to develop embedded projects and manage them remotely.

As demonstrated in [Massimo]’s keynote, the core idea of Arduino Create is to put a connected device on the Internet and allow over-the-air updates and development. As this is Arduino, the volumes of libraries available for hundreds of different platforms are leveraged to make this possible. Right now, a wide variety of boards are supported, including the Raspberry Pi, BeagleBone, and several Intel IoT boards.

The focus of this development is platform-agnostic and focuses nearly entirely on ease of use and interoperability. This is a marked change from the Arduino of five years ago; there was a time when the Arduino was an ATmega328p, and that’s about it. A few years later, you could put Arduino sketches on an ATtiny85. A lot has changed since then. We got the Raspberry Pi, we got Intel stepping into the waters of IoT devices, we got a million boards based on smartphone SoCs, and Intel got out of the IoT market.

While others companies and organizations have already made inroads into an online IDE for Raspberry Pis and other single board computers, namely the Adafruit webIDE and Codebender, this is a welcome change that already has the support of the Arduino organization.

You can check out [Massimo]’s keynote below.

Continue reading “Programming Linux Devices With Arduino And The Cloud”

Stephen Hawking’s Legacy Includes Making His Work Widely Approachable

We are saddened by the passing of physicist Stephen Hawking. One of the great minds of our time, Hawking’s work to apply quantum theory to black holes launched his career and led to his best known theoretical discovery that black holes emit radiation, aptly known as Hawking radiation.

Thinking back on Stephen Hawking’s contributions to humanity, it strikes us that one of his most important is his embrace of pop culture. While his scientific discoveries and writings are what will stand the test of time, in our own age it is remarkable that Stephen Hawking is a household name around the world.

Hawking’s first book, A Brief History of Time, has sold more than 10 million copies and for many readers was their introduction into the way physicists view space and time. It was written for general consumption and not reserved for those who were already bathed in the jargon of theoretical physics. It sent the message that contemplating science is something that is fun to do in your spare time. This work continued with his more recent mini-series Into the Universe with Stephen Hawking created for the Discovery Channel.

A fan of the series, Hawking appeared in an episode of Star Trek: The Next Generation in 1993 and made subsequent, often repeat, appearances on The SimpsonsFuturama, and The Big Bang Theory. This was great fun for all science geeks who knew of his work, but it has a far more profound effect of normalizing interaction with a world-class scientist. Appearing on these shows told the story that the pursuit of knowledge is cool.

Having scientists in the public light is crucial to research and advancement. It lets the general public know what kind of frontiers are being pursued, and why that matters. This trickles both up and down, inspiring the next generation of scientists by introducing deep topics at an early age, and ensuring funding and opportunities for this upcoming wave of researchers has widespread support.

Stephen Hawking showed us some incredibly complicated secrets of the cosmos both through his discovery, and through his ambassadorship of scientific knowledge. He will be greatly missed but leaves behind an admirable legacy which we can all strive to live up to.

[Main image by Martin Pope via The Telegraph]

Raspberry Pi Gets Faster CPU And Better Networking In The New Model 3 B+

While the Raspberry Pi’s birthday (and the traditional release date for the newest and best Pi) was a few weeks ago, Pi Day is a fitting enough date for the introduction of the best Pi to date. The Raspberry Pi 3 Model B+ is the latest from the Raspberry Pi foundation. It’s faster, it has better networking, and most interestingly, the Pi 3 Model B+ comes with modular compliance certification, allowing anyone to put the Pi into a product with vastly reduced compliance testing.

Continue reading “Raspberry Pi Gets Faster CPU And Better Networking In The New Model 3 B+”

The rust language logo being branded onto a microcontroller housing

Baremetal Rust On The Horizon

Rust Programming Langauge has grown by leaps and bounds since it was announced in 2010 by Mozilla. It has since become a very popular language owing to features such as memory safety and its ownership system. And now, news has arrived of an Embedded Devices Working Group for Rust aiming at improving support for microcontrollers.

Rust is quite similar to C++ in terms of syntax, however Rust does not allow for null or dangling pointers which makes for more reliable code in the hands of a newbie. With this new initiative, embedded development across different microcontroller architectures could see a more consistent and standardized experience which will result in code portability out of the box. The proposed improvements include IDE and CLI tools for development and setup code generation. There is also talk of RTOS implementations and protocol stack integration which would take community involvement to a whole new level.

This is something to be really excited about because Rust has the potential to be an alternative to C++ for embedded development as rust code runs with a very minimal runtime. Before Arduino many were afraid of the outcome of a simple piece of code but with rust, it would be possible to write memory-safe code without a significant performance hit. With a little community support, Rust could be a more efficient alternative. We have seen some Rust based efforts on ARM controllers and have covered the basics of Rust programming in the past if you want to get started. Good times ahead for hardware hackers.

Europe Loses Six Minutes Due To Sagging Frequency And International Politics

You might be reading this six minutes early. Assuming that the Hackaday editors have done their job, this article should have appeared in your feed right on the half-hour. We have a set schedule to keep you supplied with the tastiest of hardware hacks and news. For some of you though perhaps there has been a treat, you’ve seen it and all the other stories six minutes early.

Have you perfected time travel? Sadly not unless there’s something you’d like to send to our tips line last week, but the culprit is equally fascinating. A dispute between Serbia and Kosovo has caused the frequency of the interconnected continental European electricity grid to drift below its usual 50 Hz figure for a sustained period, and as a result all clocks that use the mains frequency as a time reference have been getting ever slower.

How Can a Continental Power Grid Dip?

Think for a minute of a modern car on a hot day. When you turn on the air conditioning you will hear a slight dip in the engine revs as it accommodates the extra load. So it is with an alternating current power grid; a simple example is a power station supplying a city. In periods such as cold nights when the demands of the city go up, the result would be that the power station needs to work harder to satisfy it, and until that happens there would be a slight dip in its line frequency. Power grids compensate for this by increasing and decreasing the available generating capacity in real time, maintaining a mean frequency such that the “grid time” of a clock controlled by it matches an atomic clock as closely as possible over time.

Screenshot of Swissgrid live frequency data

In the case of continental Europe, grids across multiple countries are connected (PDF), and the task of maintaining that mean frequency falls upon Swissgrid which currently shows a sagging 49.976 Hz frequency. The time deviation of -346 seconds puts this close to a six minute loss and clocks running on this frequency will make you late to your next appointment.

It is at this point we leave the realm of electrical engineering and enter that of international politics, normally something far removed from Hackaday’s remit. It is fair to say that the history between Serbia and Kosovo is extremely delicate, and to understand some of the context of this story you should read about the war at the end of the 1990s. After the conflict the Serbian-majority region of what is now Kosovo refused to pay the Kosovan utility for its electricity, eventually leading to the Kosovans refusing to pay for that region’s share of the power received by Kosovo from Serbia. The resulting imbalance between demand and supply was enough to drag the supply frequency down across the whole continent, and though a short-term agreement has been reached the problem still remains on the grid.

Clocks and Mains Frequency

So if you are a continental European and you find yourself six minutes behind your British or American friends, don’t worry. We know that among our readers are people with significant experience in the power generation world, perhaps some of you would like to use your six minutes to give us a bit of insight in the comments. Meanwhile here at Hackaday we maintain an interest in the mechanics of power distribution even if some might say that it is Not A Hack. We’ve taken a look at utility poles, and examined how power grids are synchronised.

As for those slow clocks, the use of mains frequency to keep accurate time is quite brilliant and has been used reliably for decades. Tightly regulating grid frequency means that any clock plugged into an outlet can have the same dead-on accuracy for the cost of a few diodes. These clocks count the zero crossing of the alternating current. There may be moment to moment drifts but the power utility injects or removes cycles over the long term so the sum of crossings is dead on over the course of the day. It’s an interesting phenomenon to experiment with and that’s why we see it in microcontroller projects from time to time.

Google Ups The Ante In Quantum Computing

At the American Physical Society conference in early March, Google announced their Bristlecone chip was in testing. This is their latest quantum computer chip which ups the game from 9 qubits in their previous test chip to 72 — quite the leap. This also trounces IBM and Intel who have 50- and 49-qubit devices. You can read more technical details on the Google Research Blog.

It turns out that just the number of qubits isn’t the entire problem, though. Having qubits that last longer is important and low-noise qubits help because the higher the noise figure, the more likely you will need redundant qubits to get a reliable answer. That’s fine, but it does leave fewer qubits for working your problem.

Continue reading “Google Ups The Ante In Quantum Computing”

Autodesk Introduces Parametric Part Generation

The hardest part of any PCB design is adding parts and components. You shouldn’t use random part libraries, and creating your own part libraries is just a pain. Why have we endured this pain for so long, especially considering that most components follow a standard? Add in the fact that 3D modeling and rendering a board in a mechanical CAD tool is now a thing, making creating your own part libraries even more involved.

To solve this problem, Autodesk has introduced library.io, a tool to parametrically generate component footprints for Eagle and 3D models for Fusion360. Given that most parts follow a standard — QFP, TO-, DFN, or SOT23 — this is now the easiest way to create a new part in Eagle with its own 3D model that allows you to bring it into mechanical CAD tools.

An overview parametric parts generation is written up on the Autodesk forums, and covers what is possible with this new tool. There are actually two distinct versions, one is a web-based app that allows you to create packages and footprints parametrically in your browser and export them as a library. The other version of the tool is integrated with Eagle and allows you to create a new component parametrically from within Eagle.

This is a far cry from the standard method of creating new footprints. Instead of toiling over a datasheet and dropping correctly sized pads onto a grid, creating a new parametric footprint is as easy as copying a few numbers. In addition to the new parametric design feature, there’s a new tool in Eagle that does away with placing and naming pins for symbols. Now you can simply cut and paste a list of pins from the datasheet.

It should be noted that everything created with the library.io tool can be downloaded and used offline. Combine that with the recent news that KiCad can now ingest Eagle board and schematic files, and you have a way to create parametric footprints in everyone’s favorite Open Source PCB tool as well.