That’s why this year’s Hitex Arm User Conference focused on building a scalable and sustainable Internet of Things (IoT) ecosystem.
Peterson Quadros, Product Manager for Functional Safety at Arm, opened the event with a look at practical steps for developing IoT endpoints. He explained that application development for secure IoT endpoints can become “as easy as classic embedded systems programming”. This can be done through adopting a new approach that balances three core priorities: managing device hardware configuration, software components, and system validation.
Next, there was a session on how to securely deploy, connect and maintain devices. Mathew Ockerse, Field Applications Engineer at Arm, explained that the core issue with IoT devices is that updating them is too difficult. Users do not always know if they need to use a micro USB, unscrew a back panel, or connect the device over a Linux-based computer, for example. For that reason, he said, “we need to have a fool-proof, standardised way to communicate with the devices so if there is a known issue it can be updated as quickly as possible to minimise the attack surface”.
Dealing with this security issue, Ockerse added, will also help address other device life cycle issues, such as deregistering so devices can be resold. If IoT devices are managed within a single environment, like Arm’s Pelion service, it is much easier to disconnect a device so it can be resold without creating vulnerabilities.
Attendees were also walked through how agile is changing the face of embedded software development. Niall Cooling, CEO, Feabhas, cautioned that an agile approach will only be transformative if management buy into the shift and help implement the structural changes that are needed. Crucially, he said, companies “can’t just change the process”, they also need to “change the technical practices”.
Cooling concluded that the embedded engineering community is still on a journey with agile, and that it is behind the wider IT community.
There are two big sticking points that need to be addressed. Firstly, replacing tools that are anti-agile, and secondly ensuring management understand and act on the cultural shift that needs to go hand-in-hand with a shift to agile development.
Next up, Andrew Banks, Senior Field Application Engineer at LDRA, discussed the security implications of connected vehicles. Security must be designed in right from the start. This starts, he said, with writing code that is as simple as possible. Ensuring that happens means the code can be more easily understood, maintained and tested.
Then, Banks explained, that code should be tested around a model that captures every nuance of the hardware it will run on. This is particularly important in an automotive setting, as there are various environmental considerations that must be assessed. He said, “Running [the test] in the hardware you’re going to use has got to be part of your test strategy, unless you want your customers to be your final test engineers.”
Elsewhere, Felix Hovsepian, CTO at Blue Manifold discussed AI at the edge. He explained businesses need to grapple with this issue as there will be applications where it is inefficient or there is not enough time to send all data to another place for processing. One issue he highlighted is that a lot of discussion of artificial intelligence (AI) is really talking about machine learning (ML). One common misconception is that AI is not rigidly defined, but there has been an accepted definition for decades. A true focus on AI, Hovspian said, will unlock swarm intelligence. That means true, distributed computing where single processors can contribute to a collective intelligence.
Hovspian explained, “We need the next generation of people coming through computer science degrees to start looking at some of these concurrent distributed systems. As a CTO, I’ve taken on very good computer science graduates and then realised that their ideas of what threading is or the actor model or CSP or other kinds of distributed processing or concurrent processing is quite weak.
“This is a good way to help them understand that you can’t just replicate sequential processing. That doesn’t work. You need to understand on a holistic level what’s happening between all these different computational devices. There’s interaction between each of them, and it’s that interaction that generates the intelligence.”
The range and complexity of Arm Cortex-M processors offers engineers endless possibilities, particularly with the growth of IoT devices.
What’s vital is that the right foundations are laid today, so these are sustainable and scalable in the future.