All right. Oh, wow. Microphone. A couple of months ago, I went shopping to the IKEA.
Who am I? My name is Hawa. As the slide says, I've been playing with Linux and computers
for over 20 years, and I've been doing it professionally for more than 10 years. I'm
currently a software consultant at Mind, which is a local company. We have a rebranding new
logo here. Not on the slides yet. So we're going to talk about this device. It's a new
smart home hub from IKEA. Is smartphone smart home? Is that a good idea? I guess in this
crowd we have two extremes. You either think it's part of the internet of shit, or you
have already 20 of these devices at your home. Well, in my personal opinion, I like them
a lot, but only if the data stays with me at my home, at my local computer. So no clouds.
And preferably, it should run as much open-source software as possible. So that's the state
for this review. So the app, well, it's really, really simple. It's IKEA. It's what you can
expect if you have ever assembled something from IKEA. You either love it or you hate it.
So this app is the same thing. You're either going to love it and can use it from scratch
or you're going to hate it, like my mother, which also doesn't assemble IKEA furniture.
Great app. Regarding the point I made from the cloud, they're actually scoring really
great. So there's a really clear and easy-to-read privacy statement. And the app is opt-in.
So it asks you nicely if you want to send the usage data towards IKEA in the same manner.
It has support for Apple HomeKit. It also has support for the Google AI stuff, but it's
all opt-in. Really nice. What's inside? Well, we're in an embedded room, so we had to take
a look. This device has a dual-core STM processor, a single chip of DDR3 memory, and about four
gigabytes of MMC memory, and dual ZigBee slash Bluetooth radios. So this should be fun to
work with. Well, I opened it up. This thing has a laser. I always recognize these three
pins on PCBs. Those pads look familiar. So simple. You are thingy on the laptop. You
use Minicom, default settings for Minicom, of course. We get a boot prompt, but that's
not really useful. It's the only thing that it shows. It's a Dirigera app. Very nice to
tell me again. What we can see is that it uses the STM32 secure boots stuff. I don't
really know the details quite yet. I haven't worked with those chips that much. And then
it starts up system D, and it ends there. So what this is telling us is that they really
cleaned up their information that they put on the U-word. Right. In the app, they have
a link to this website, gplcode.ikea.com. And if you press that download button, you
get a zip file. Yay. And if you unzip that zip file, you get a bunch of directories.
It's pretty much a huge dump of source code. The things that we do recognize in that entire
dump, it's a kernel, system D, base files. Everything is called base files. Busybox,
and it uses Raoq as the update mechanism. The naming of these directories makes me think
that this uses Yocto, but there are no build scripts or flashing scripts included in this
zip file. So if you go look at the Yocto reference manual in chapter 35-3, you'll see this text.
35.3.1 talks about providing the source code. It shows you how to make a Yocto recipe to
generate the directory that they just zipped and dumped on the Internet. The next subchapter
talks about providing the license text, which pretty much just takes all the license.txts
from that first directory, concatenates them in one huge file. So that one is also, that's
what this button does, download license information, so you get that huge file. And then they
forgot about chapter 3, providing compilation scripts and the source code modifications.
So Ikea, you will have some more work to do. I would like my compilation scripts. And
I would really like to flash my own hardware with the GPL code that I received on my hardware.
And that's my talk. Thank you very much.