Embedded Conference Scandinavia 2024

The Embedded Conference Scandinavia took place at Kistamässan in Kista, Sweden, on April 10 and 11 2024. This was a reboot of a show that used to run as a small tradeshow/exhibition plus technical talks until the pandemic hit. There was no Embedded Show anymore, just the Embedded Conference and its speaker program. The ECS was instead co-located with Elektronikmässan, the long-running and apparently thriving gathering for “electronics” companies in Sweden.  

The Embedded Conference Scandinavia was in a room behind the show floor. Each presentation was supposed to be 30 minutes with 15 minutes for questions and answers, which is quite generous and made for some good Q&A sessions.

As would be expected in 2024, quite a few talks touched on “AI” in various forms.

“The Art of Having Bad Ideas”

There were two talks about LLMs and embedded coding at the conference. The first was by Tobias Ahlin from GitHub. He is a product designer who also codes, and his presentation was brilliantly executed. He brought up a couple of people from the audience in order to play rock-paper-scissors, and then showed how badly an LLM plays the game. Basically, if you ask something like ChatGPT to play, it will say “I choose X, what is your choice?” And if you use this information to beat it, you win all the time. Which the system just cannot seem to handle.

The theme of the talk was the strange mix of brilliance and idiocy you get from LLMs. They can seem very intelligent at times, and at other times they totally fall down and generate useless or wrong results.

Tobias talked about how LLMs can be used to support the creative process. In his view, LLMs can be used to quickly generate a lot of ideas and potential solutions to a problem, and then it is up to a human to sift the ideas and select the good ones. He thinks that LLMs are probably better at this type of brainstorming than humans, in particular coming up with divergent ideas.

Tobias had several good observations about LLMs and current developments in the field.

  • For the programming domain, AI tools appear to be more helpful for junior programmers compared to senior. That rhymes with my experience too.
  • He said that LLMs are working from a representation of the world (language, images, …) but do not actually have a knowledge model of the world. This is the same observation I made last year, that the model just does not KNOW what it is talking about. Which does not prevent it from being quite useful.
  • Models can somehow be “multiplied together” to fuse knowledge trained into one model to the language skills of another model. Not sure exactly how that works, but it is a way to reduce the retraining cost for new information.
  • Another way to make LLMs run more efficiently is to modularize them. For example, Stable Diffusion is doing that for image generation, training different separate models on different stages of the generation.
  • LLMs are “foundational models” that can succeed in many different domains, and observation I have heard before.
  • When it comes to specialized vs general models, it seems that a large general model tends to outperform smaller models that have been trained for a specific task on a specific domain. Could be that the large general models just happen to have picked up all the training data for the specialized model, but it could also be that reasoning is easier for a larger model.
  • The best LLM today is Claude 3 from Anthropic.  Not all that impressed with ChatGPT-4.

“Code Quality Assurance in the Age of AI”

David Källberg from IAR Systems took a more code-centric approach to LLMs. His message was essentially that a programmer has to be very careful to test and scrutinize the output of LLMs used for coding.  

The first code out of an LLM will need some improvement. Some by a human, some by a human asking the model to fix things in the code. David went through an example of a simple piece of code from an LLM, and how it had many failings when compared to the MISRA C standard. Some things could be fixed by the LLM itself with some prompting, but others were up to the programmer. The code from an LLM must be checked just like code from a human programmer. David pointed out that you should apply static analysis tools including those from IAR themselves (and other companies) – there is no reason to assume this code is any better, or that it complies to some standards just because you asked it to.

Echoing the comments from Tobias Ahlin, David said that the role of the programmer is changing from being a producer of code to an evaluator and critic of generated code. I can agree with that. At least for the areas where LLMs can actually produce code, which is an interesting question in and of itself that we do not have a good answer to as far as I know.

Applications

Several talks touched on applications of embedded technologies, and where software is being used.

Jonas Finnman, from Northvolt, talked about how their division of Northvolt turn battery cells into actual systems that can be integrated into other applications with a “nice” external interface. This means both physical system design (taking sets of cells and putting them into a box) and software integration. In particular, battery management software. He talked about the particular problems faced when dealing with the complex discharge curve of a sodium-ion battery. This is a mix of power electronics and software where the hardware matters as much as the software. A true system effort. The sodium-ion batteries have properties that make them ideal for energy storage systems (instead of vehicles), and getting hold of the materials to build them is easy and cheap.

Emil Nilsson and Ross Friel from Halmstad University talked about radar applications. Including using radars to look inside iron smelting furnaces…

Another academic, Rasmus Hamren from Mälardalen University, vaguely described a system to automatically detect the amplitude and frequency and direction of waves at sea. This is a typical application of AI or Machine Learning – interpreting image contents. Unfortunately, since there was an actual academic presentation of the work next week, he could not tell us much. It sounds like maybe the processing was simple enough to run on a Raspberry Pi, but that was about it.  

Eva Fogelström from Ericsson Research gave an overview of the security implications of 6th generation mobile networks. The network architecture is changing through 5G to be more of a zero-trust system with strong authentication. The network identities might even be used outside of the network, actually. AI and ML is also part of the issue. First, AI/ML are used to run the network, and as such those models and applications need to be protected from attack. They need to be trustworthy and explainable, not just some random trained AI. Second, AI/ML are used to automate and speed the response to incidents, helping human operators deal with threats. This is very similar to the message from the two LLM talks: AI helps humans perform their jobs.

Heart Aerospace – On the Journey to Sustainable Air Travel

Niclas Ljung, from Heart Aerospace, presented their ES-30 design. While there might not have been a lot of software or actual details of the technology in the talk, the product is fascinating. He described to interesting market niche for a 30-seat aircraft with a 200 km range: basically, reviving the relevance of small airfields especially in North America. With a low fuel cost, low noise, and low maintenance costs compared to turboprops, it should be possible to once again serve small regional airports to feed passengers to larger airports. It can also be a real boon when dealing with complex geographies like Norwegian fjords or the connections between mainland and small Islands. The Åland regional government in an investor for that reason.

The requirements on the battery charging at an airport are pretty insane. The airplane should be fully charged in 30 minutes, which means a charge rate of several MWh per hour (i.e., a power rating an order of magnitude above the most extreme current car chargers).

However, the biggest challenge is actually legal: certifying a fully electric aircraft has never been done before, and current rules basically incorporate current aircraft design structures and practices. As an example, Heart Aerospace is going for all-electric controls with motors moving control surfaces instead of electrically-controlled hydraulics. Thus, existing certification criteria have to be updated to focus on the goals of the system rather than how they are implemented.

Fuzzing on Virtual Platforms

I presented a talk on software fuzzing using virtual platforms, prepared together with Robert Guenzel from Intel Germany. Like other talks, I had about 30 people in the room. My talk was probably the most technically deep of the conference. At least that is comment I got from several attendees. The moderator observed that as the talk went on, the audience started to learn forward in their seats as they focused on the materials… I talked through fuzzing from the general concept, to what kinds of software are hard to fuzz, on to how we DO fuzz them using virtual platforms in general and our Intel Simics simulator in particular. There were many questions and discussions after the talk. 

Got one question from an analog designer about the relationship between Fuzzing and Constrained Random. It is kind of the same idea. But also not. I think classic EDA constrained random is different in that it assumes that you can determine whether an output is correct or not. In fuzzing, we look at “crash” vs “normal completion”, which is not the same type of scoring.

The slides are online at https://www.engbloms.se/jakob_presentations.html. The Intel Simics simulator is available for public use at https://developer.intel.com/simics-simulator, and a fuzzing framework for the simulator is on GitHub at https://github.com/intel/tsffs. You can read more about TSFFS in this Chips and Salsa blog: This Hardware does Not Exist.

Professional Moderation

One very unusual aspect of this year’s ECS was the moderation. Normally, a session chair or moderator for conference talks is just there to introduce each speaker and throw them off the stage if they talk for too long. They are also there to provide at least one question to the speaker in case the room remains silent, and sometimes they have to manage who gets to ask questions. I think all academics have done this at some conference or another, and it is not expected to require a lot of expertise.

ECS 2024 did this very differently. They brought in Julia Bendelin, who is an actual professional. I must admit to being rather skeptical when I got the intro email before the conference asking me to provide a bio and at least one question to be asked. Many session chairs think they have to read out the full bio of each speaker, which is extremely boring in my opinion. I much prefer the model of letting the speaker take care of their own introduction and run their own show, including dealing with questions. Expectations were not high.  

Julia had a very different approach to the job. This was more like a host on television, making sure everything runs smoothly. Q&A after each talk was handled with the speaker sitting down in a sofa on stage (visible in the photos above), and having a conversation with her, where she would start off with a high-level conceptual summary of the talk before going into questions. Both from herself and from the audience. Questions were asked over a menti.com setup, which forced us to type in questions and send them to the moderator. This can result in rather stilted setups, but this time it worked.

The familiar and intimate atmosphere that developed in the conference room can be attributed in no small amount to Julia’s moderation efforts. Quite unexpected, quite different, and giving me some ideas for how to run the conference tracks where I am involved in the future.

Elektronikmässan

The ECS was co-located with Elektronikmässan, the gathering for “electronics” companies in Sweden. This meant mostly hardware. There were no software companies or even “embedded” companies (even though software in effect powers every single machine shown on the floor). It was in a way a smaller local version of the electronics part of the giant Embedded World that was happening at the same time in Nürnberg.

Companies included distributors, consultants, production machine vendors, robotics companies, contract manufacturers, additive manufacturing companies, chemicals and supplies, a company selling industrial humidifiers, measurement tools, and some cable and contact providers.

These 3D-laser-printed components were shown by LaserTech.se, typical for the kinds of complex shapes that can be done using additive manufacturing. Doing the same with classical techniques often takes more time and materials and end up being more expensive than the additive manufacturing process!

Robots were a common sight on the show floor as well. This one demonstrated extremely precise motions with a 20kg dumbbell in the “hand”.

Most unexpected: Rochester Electronics

The most unexpected business on the floor was Rochester Electronics. They sell old chips – typically, they take over left-over supplies when chip companies end-of-life old product lines. There is almost always still a market for even very old chips, as there are still some very old product designs being produced that rely on them.

As they explained it, Rochester buys up the left-over dies from companies like Intel, Freescale/NXP, and others, and stores them. They claim to have more than 15 billion dies on hand! They provide packages (matching the originals) and guarantees that the new chips have the same properties as the old chips. The old data sheets must apply. Sometimes they apparently even manufacture new dies, based on the original designs.

For example, you can still get an 80186, a chip that launched in 1982. It was discontinued by Intel in 2007, and apparently Rochester picked up some left-over supplies. And it seems that they might still be manufacturing new ones!

LEGO Car

A quite attention-grabbing exhibit on the floor was the full-size Lego replica of a Volvo V70 provided by the company BrickScale. They were there to sell their marketing services to other companies – basically, the use the V70 to draw in customers to pay them to build other things in Lego to serve as draws at other events. All a bit meta.

The car can actually move on its own power – there is a metal tube chasses underneath, with an electric motor to allow it move around. But the seats do not seem particularly comfortable.

It is a nice build, supposed to have taken something like three years to finish. There is some glue being used and the frame is metal, so it is not a pure Lego build, but still. Nicely done.

One thought on “Embedded Conference Scandinavia 2024”

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.