 Do you hear me clear? Sounding clear? Okay, great. So, I am Jasper Nyans. I am going to bring you this talk about from Tesla hacking to FreedomEV, FreedomEV project. So, quite excited to be here, honestly. It's been about 18 years that I come to FOSDEM. I have missed a few years. I have to admit. And I have submitted quite a few talks, and this is my first talk at FOSDEM. Thank you, guys. I am so proud to be here and to be able to present this to you, because, obviously, you are also the people who I admire so much. And probably the reason why I didn't get any talk earlier is just because I have the habit of wearing a shirt like this and everybody thinks I am stupid. Good. I am Jasper Nyans. I am founder of Linux Belgium. We do make money with free and open source software training and consultancy. Purely open source. We don't sell any Reddit subscription or things like that. We try to focus on what's the heart of our community. And I am very interested in EVs since Tesla. And obviously, I all owe it thanks to you guys. The entire community is what has made this possible for me. And, yeah, I am humbled by it. Thank you. So, first of all, I am a Tesla customer. I am not a Tesla supplier or employee. And there are some disclaimers, of course, with hacking cars. They are relatively big. And you can run people over with them and things like that. But, of course, there are other tools which are dangerous. Well, like a knife, which can be used for perfectly peaceful purposes as well. So, it's also a little bit uncertain what level of endorsement there is, both officially and unofficially, by Tesla. We are quite optimistic. But there are some rumors, but more about that later probably. How many of you, is there somebody here who has a Tesla? Who's a Tesla owner? Okay, quite a few Tesla owners. Great. Hopefully, some contributors. Okay, are there people who have reservations who don't have a Tesla yet, but who are looking for one? Yay, cheers to that. We will have some work to port Freedom of E to that. The car I'm working on, my Model X, my Colving doors, is, well, yeah, Falcon Wing's doors, I have to say, is fantastic. The Porsche is for sale, by the way. Doing a way of replacing it with a Model S. Once you drive electric, there is no going back. It's really fantastic to drive. You're not doing any pollution, either. You can easily, I think, if you plan a little bit, you can drive a thousand kilometers without having to wait. I don't like waiting. In a gas station, you have to fill up your car, you have to wait there a few minutes. I don't like waiting. And with a car, you have to charge. But if it charges very quickly at 120 kilowatts, and if you combine it with a toilet break, I do have to pee a lot, or if you take a lunch break, it's completely full. Pee break, just 100 kilometers charged quickly, and lunch, it's completely full, or dinner. So 1,000 kilometers without having to wait. And otherwise, it's just full when you start at home, so you never have to go to the petrol station, just plug it in at night, and walk away. For Tesla, it's important to accelerate the world's transition to sustainable energy. That's their mission, something, of course, which is very nice to say. Self contributed a little bit to that, saved over 16 tons of CO2, added to that all the other pollution of our atmosphere over the last one and a half years. So the problem, of course, that for many electric cars are still too expensive. And this is hopefully something which is changing right now. For 40,000 euro, you get a Kia e-Niro or a Kona electric or a Nissan Leaf, which are already very nice cars and which can get you everywhere you want. Tesla, it's still a bit higher. It's announced that it will reduce prices and I think it will happen this year and early next year that prices will trickle down. Also, the other car manufacturers are going to launch more electric cars. So just be a little bit patient if you don't have money for it yet. Just don't buy a new internal combustion engine car because it will have a lifetime of 30 years and better if you really can afford it just buy a second hand car. Good. So, coming to the mission of Freedom EV. So why is this Tesla hacking, later on with the system, is evolving now into an open source project? Well, it is clear that the future of mobility which has been stuck in the dark ages for so long with analog and proprietary technologies is now completely digital and running on Linux. And because it runs on Linux, we have it fully under our control. Well, maybe. There is, for example, also this project called Automotive Create Linux from the Linux Foundation, and this is fantastic. It allows car manufacturers to run Linux on their cars to build Linux for their cars and to more easily build that based upon the Yocto project. Now, if it means that you've got a lot of freedom but if it's completely locked down into a box which you cannot touch, what kind of freedom is that? So, it's all about control. Cars are the symbol of freedom for many car manufacturers. I was never that much of a car geek but if you look at all the commercials it's nice landscapes and cars driving through its symbol of freedom. But if these symbols of freedom are constantly connected to the Internet, can be used as surveillance, mass-surveillance weapons against the public, it's not that great, of course. So, there are some disadvantages, some dangers about the new technology as well. And obviously, we think that Tesla is doing the right job but not all car manufacturers will play nice and it's not because we trust the company now that it will prove to be so in the future. I've seen on the stage, of course, then also Facebook a long time ago when there was just a small company very enthusiastic about their new technologies. Now, people would probably be more critical about what they are doing with respect to privacy. Same goes for Google, same goes for Apple. So, what will evolve in the future we don't know unless we have control ourselves over our own vehicles. So, it's about that. And obviously also to add some nice features to it as well. So, we have some founding principles. First of all, freedom EV needs to enable maximum functionality of your car while preserving the original software. If you bring your car in for service, the car guy, the car technician, he doesn't know anything about open source or freedom or privacy and software rights. You might want to educate them but they're more concerned about getting your car working and obviously, so they should not be confronted with our own experimentations on our car. So, I think it's important for the freedom EV project that it is easily to disable, easy to install and that it preserves also the original software. So, that basically as a user, you are trusting the manufacturer and the open source project of which you can verify the code yourself and you're not trusting anything else. So, that's a little bit of the founding principles. Also, lastly, I think it's important to avoid conflicts with manufacturers. Tesla, for example, they sometimes sell software enabled features. New version of the Model X and the Model S has a 100 kilowatt hour battery but it's not fully accessible unless you pay an extra price using software, using root privileges. Freedom EV project could enable that but of course that's not the idea. We want to respect the business model of this company. If it's possible to enhance the performance and they don't sell such a package, obviously it is nice to do. So, you have to find the right way there and I think it's important not to do any abuse. One of the new features for the Tesla which I will introduce with Freedom EV today is hotspot mode and it uses the Tesla network to get internet connection and in-car or wiffy experience in your car. Obviously, it can incur costs for Tesla of this bandwidth. So, for that, we are also building that it keeps track of the amount of volume so they could possibly bill it. We don't want to abuse the system. We just want to make it more useful. Our son is really, he loves it. So, we have to make some design decisions. Three design decisions are made. First one is that we have one script slash far slash freedom EV start which is launched by the car as the root user from a persistent storage location. So, these two things are a requirement for running Freedom EV on any car. You need to have root access, hopefully, and a persistent location to put a script. And, of course, the car needs to run Linux because we'll run the entire Freedom EV project as a CH rooted addition to the system. So, it is a bash script. It shows for bash script because bash or ash is available on most embedded Linux systems and so also on the cars running Linux. Then, it uses a USB stick. Most cars have USB stick, USB port for charging, and in the case of the Tesla, it is not only used for charging, it also connects directly to the central display of the car. And on this USB stick, there is a root file system containing Ubuntu. Now, what's important to realize is that power management can at any time disable the USB stick. Normally, not while driving, but if you park the car, it can go in power saving mode and then the USB stick is no longer there. So, we need to manage that. Now, why did we choose Ubuntu? And this is a dangerous thing to say here in FOSDEM because, obviously, we have some nice contributors to Debian and to Arch and to other exciting Linux distributions in this room. And for those guys, I'm sorry. We had to pick one. And, obviously, Ubuntu is a nice choice because Evidia Tegra for Ubuntu was already available. You can just apt-get install 10,000 of packages compared to with Jogstore where we need to cross-compile everything and fiddle with recipes. It's just, you know, a lot easier. So, please don't be sad for the other guys. And, obviously, it doesn't necessarily need to be that. It just happens to be this way. So, with respect to the automotive grade Linux, it is not impossible that freedom if you will also evolve as a layer towards Yokto and in this way can also be easily integrated with that. But that's probably two or three steps ahead. Oh, yeah. And maybe a little bit of criticism towards Yokto. If you want to run Yokto with a GUI and, you know, dependencies like Chromium, for example, you end up with something which is the same size of Ubuntu. Come on, guys. You can do better than that. So, maybe a good advertisement for Ubuntu. I don't know. I try to change every two years Linux distribution running on my own laptop just to, you know, running Manjaro right now on the other laptop. So, yeah. Okay. So, another design decision, the third design decision is how to configure everything we want to do with FreedomEV. Well, through a web interface. And, obviously, we could have chosen something lightweight, but, well, we went for engineering some PHP, FPM, and looked the other day and it's only consumed about 10 megabytes of RAM. It has two gigabytes of RAM. It's not the most optimal RAM-wise, but it's high performance and low overhead. So, why not? It's not written in stone. We can change that if we like. So, with respect to the functionality, we have bundled the functionality together in so-called FreedomEV apps. Popular name, maybe. But what's important for that is that they have a proper activation when the USB stick is detected and when the USB stick is lost, the entire root file system is gone. Well, maybe there are still some processes dangling. So, we need to properly deactivate them as well. So, maybe also some things need to be periodically run. So, all that kind of functionality is provided out of the activation of FreedomEV. So, let's have a look at how it all comes together. Verify if it's not running in cshroot, not yet installed. If it's the correct car, we'll download and install the FreedomEV Start script and install it inside the Chrome tab. That's all it does, test FreedomEV installed. Have fun. After that, we only need to insert the USB stick. When the stick is inserted, within the minute, FreedomEV will detect that it's there. FreedomEV is configurable through our app interface. And then, FreedomEV will detect that it's there. FreedomEV is configurable through our app interface. And then, Piatras on the machine will see all the different modes to enable. So, if we remove the USB stick, FreedomEV software will detect the stick is no longer there and stop all remaining software. Good. So, I have a second movie coming up later, which explains a little bit more. So, here we have a little bit more technical details about our Tesla. Our Tesla is basically a computer network, which just happens to have a big battery and some wheels. So, the instrument cluster, which is the display behind the steering wheel here, as this IP address, we have the big screen, which is over here, which is a 17-inch screen. It is actually a display which is rotated on its side. So, and the vidiategra has, as far as I know it, no possibility of, from the video driver, rotating it. And that's probably the reason why the Qt application, which is constantly visible written by Tesla, is actually on its side. So, and that's also probably the reason why they are stuck with Qt4, because Qt5 obviously has contributed a lot of nice features compared to Qt4. But one of the disadvantages with Qt5 is that with Qt4, you could just say rotate 90 degrees. And with Qt5, you have to basically turn all the vidiates. So, I presume that's the reason why they do it like that. The disadvantage with that is, of course, that if we use the X-Display directly and we send an X-Term on it, it will be visible on its side. So, actually I wanted to put that into another movie, but yeah, time constraints. So, and this, of course, also means that if we want to visualize stuff directly to the X-server ourselves, we need to make sure that it's rotated, or that it's an application which supports 90 degrees rotation. The general software-based framework in the kernel for turning 90 degrees and 180 and something like that would be nice, just saying, but okay. Good. Gateway 102, 103, if you like it in the open source world, don't complain. Just do it. So, I know, I know. Autopilot. So, I'll go over the systems one by one. There is also the uplink which is connected to the USB and Bluetooth and Wi-Fi, which is connected basically to the USB of the central display. So, this is the instrument cluster. This is the back of the instrument cluster. If you open up the car, I never opened up a car before. But luckily, the Tesla is relatively easy to open up. It's only one screwdriver you need. It's the same screws everywhere. They did a really good job. And the instrument cluster behind the steering wheel has a leaked SSH key. So, if you have access to the internal network, you can get access to that. So, it boots a squashFS compressed read-only file system, but the slash far partition is writable and persistent across the boot so we can put stuff in there. It's very similar than what's on the central display. The things like steering wheel buttons are attached to this instrument cluster and input is sent over the internet. It's actually a good way to know if your internet connection is working. Just use a scroll wheel. Nothing happens with your internet, which doesn't work. The guys from Tesla servers were actually quite surprised that I knew that. Because, of course, I fiddled with it. I put a switch in there in between and things like that. So, settings are stored in SQLite 3 database, and there's also comments to view those comments, LVS. You can also change all these parameters and variables stored in there in a persistent and non-persistent way. Instrument cluster, be careful when you remove it. The connector has a click mechanism. It's very easy once you know it, but otherwise, difficult to use. A few years ago, a Italian friend helped me with that first time. Then the central display. So, it's 192.168.90.100. It's an NVIDIA Tegra quad-core system. Now, on the newer cars, it is Intel-based systems. And so, we currently don't support that yet. If you have such a car and you have root access to it, we can try to port freedom of view to it. I'm sure it won't be that difficult. Then we'll have to just make another file system image of probably a Ubuntu on Intel compatible then. Or whatever you like, it's your car. Good. So, it runs the Qt-based web browser, which most people don't really like. It's not that great. So, being able to use that for the configuration of freedom, if he is, of course, a nice application because most people don't use it for anything else anyway. So, okay. Then, we see an end map of the system. Obviously, there is a lot of interest to be able to get root access. And we'll come back to that later. There's also the Parrot, USB-connected Bluetooth Wi-Fi and LTE module, which is on IP addresses. It can be accessed through Telnet. It's only physically accessible from the central unit and it's a very small microcontroller, but it runs a built-root file system. Then there is another device, a gateway running free ectos which is attached to the canvases. So, to control basically most vehicle functions, there are six canvases typically used in automotive industry attached to the gateway. It's used to contain a password which you could extract from the SD card located inside the CID, but it's no longer the case. Whenever there are easy ways to get root, Tesla fixes it. And obviously, that's a good thing because there is also the potential for abuse. But we'll come back to that. We'll come back to 2.0 as its own IP address. It's basically the most powerful system in the car, obviously. There is a new version of the autopilot which will come out this year, autopilot 3.0, which contains a SOC developed by Tesla themselves. It's quite amazing. It will enable about 100 times as fast processing as you look only once images from the eight cameras on the system. So, but this generation, it's a VDAPX2 based, two Denver cores for ARM A57s and one Pascal GPU to do the heavy lifting for the image analyzers and to assist in getting people where they want without a lot of effort. So, how do we get root? I get the question a lot. Now, the Freedom EV project is not about how to get root. It's basically a prerequisite. Okay, but how to get root. So, getting onto the physical Ethernet network is the first step. So, it has a FACRA connector. You can basically try to fill and figure it out by yourself. But there are also premade over-expensive cables you can find on eBay. But, okay, they're called Tesla Service Access Cables and they also fit in a connector below the steering, below the central display here. Now, the port below the central display is locked by Tesla Ethernet. And it can be activated by a tool which Tesla Service uses. It's called Toolkit. And this sends a cryptographic token to unlock this port. Some people don't like that because it's known that people who steal Teslas can also have Toolkit. So, if they then enable the port, break a window, enable the port, plug it in, have roots, disable the alarm, start the car, then it's going to happen very quickly that it's assisted in stealing a car. So, also one of the things we want to add to Freedom of E, is just to disable that security token. It's called SecEd, so we can just kill the process. And, yeah, then it doesn't work. Obviously, we might want to turn it back on at the Tesla Service Center. Or we can add some GPS positioning, easily query where the car is, even get the address and things like that. And he offends it, so it's only possible to do that at the Tesla Service location. Heck, Tesla could do that. But, okay, we're doing a lot of things which Tesla could do. But they have other priorities, I think. Which data paths exist to get roots? Well, through the Internet. Obviously, all these cars are connected to the Internet. It must be certainly a way to get into that. But maybe it's a bit difficult. Maybe only singularity capable AEIs will be able to intrude to all Tesla cars. I don't know. It's nightmare of Elon Musk that all cars in the world would be hacked and directly sent to the same location, creating chaos in traffic, things like that. It's a risk, yes, because, obviously, Tesla can access all the cars. It only takes one malicious person at Tesla to do that. Other possibility is through your Tesla Android app. You can steer the car with your Tesla Android app. You can set the air conditioning, lots of functionality on your app. And, obviously, that's also a data path, which is heavily protected, of course. Modelship.Tesla.com is basically the central point where all these things go through all the cars connect to. Aside from that, we have our internal Ethernet network, which means we have a physical connection at our central display behind our instrument cluster and also going to our autopilot, which is fairly easily accessible. Now, getting physical access to the Ethernet network, you would presume, OK, then we are having root. Well, it's not the case. So, it's very good protected. Ambuses might be another way of access. Tesla is a very good citizen with respect to security. Whenever there is a problem security-wise, they fix it immediately. Not only that, they... Well, what is the problem, of course? Well, if somebody can get root to somebody else's car, there is a possibility for abuse. It is possible to help stealing Teslas. It is possible to fake the mileage. It is possible to fake fin numbers and trim levels of the car to control the cars and things like that remotely. So, yeah, obviously there is a danger of abuse. And this is a good thing, of course, that Tesla is immediately addressing these issues when they come to be. Also, Tesla has a bug bounty program. This means if you find a way to root your Tesla, you can, of course, share it with everybody to be able to install Freedom Heavy. But if you tell it to Tesla, they will give you money and they will fix it right away. So, it's a difficult situation for Freedom Heavy. With the Model 3, they even have upped the game. So, now with the pound-to-own contest in Vancouver, which will happen in March, they have really said, okay, if you can root our car in these different ways, or access, or even just do a denial-of-service attack on our autopilot system, we give you 50,000 dollars. Okay, it's hard to compete with that. Not only that, if you're the first one to do one of those things, you get the Model 3 for free as well. So, yeah, there is a guy who has posted that he has root on his Model 3. And he is running Ubuntu as well on it, in a CH-rooted environment. But still he's not eligible for any of these prices because he desolders to the EMMC, put some changes in there and put it back. Which is, of course, a method to do. Not everybody will want to do that, of course. And it might void your warranty a little bit. Well, only for the device and not the rest of the car, of course. But there is some unaligned interest between Tesla and us, and as a whole, maybe, Fenders as a whole. So, they will fix it right away. It's, of course, great that they fix it, but it's not that great if it's the only way to gain access to your own car. It's your car. Come on. When I bought my Tesla first, I sent an email to Elon Musk, and I said, I'm turning 40. Please give me root on my own car. Thursday doesn't read emails so much, and I should have maybe sent it over Twitter. There was somebody on the Tesla Motors Club forum who was so kind to assist me there first for the EC and then using an undocumented exploit. So, it was great that he wanted to share that with me. Yeah. So, I hope that there is not right now an official way to ask root access for your own freaking car, but I hope it will change quickly. And there is a security researchers program with Tesla also say that if you are analyzing the security and you break your car, it's no problem. We'll just reinstall it for you without any cost. I think that's a great thing to do. They even say we can do it multiple times. It's nice. So, I do think they are doing the right thing. I hope they will do it as well for root. I understand that there are cautions about it, but come on, we're all grown-ups here. And why not flag cars like that? And if people are buying a second-hand car that they know, okay, this car has been rooted. Maybe the trim level is wrong. Maybe people fiddled with it decreased the price or maybe it was relatively okay. I don't know. But important, of course, that Tesla is a trendsetter for the industry and what Tesla is going to do now will also impact what other vendors will do later on. And that's also the reason why I go through the efforts of starting this project right now. I think it's important that we make this step right now of being able to open-source our cars because it's the beginning of the new era of electric cars and it's probably the last iterations, of course, I would say. I don't know. After that will be tunnels and flying, I guess. Okay, so how to get roots from someone who has a root method from a Tesla service technician or third-party repair center? Obviously, these people, they have roots. They have access to the tool box program from Tesla. So if they just give you access or just use the comment line to have this one comment pasted, it's already there. And the script is very simple. You can look at its script yourself. It will just see if the USB stick is not there. Okay, it stops. It exits. It doesn't do anything anymore. The current iterations, it runs out of crontap because fast-pool cron is on fire and writable. It was an easy way. Maybe on the Intelliquiped cars, we'll have to turn it into a demon or something else. We'll have to see if we get access to those cars. Also, for other cars, non-Tesla cars, they might have different ways of getting things started. But, yeah, I hope we'll be able to find it out quickly. And as all else fails, yeah, desoldering and resoldering EMMC, it's not that hard. It's always a way. So what have we put already inside FreedomEV? Only in a marketing-like way where you cannot verify what actually happens. But by looking at the code and disabling the GSM connection and turning off Wi-Fi, this is globe mode. Disables auto-pilot, GPS Wi-Fi, and 3-4G makes you invisible for tracking by the vehicle and mobile phone rolls. Mapping, music streaming, stops working. And it could be abused under PIN2Drive to enable LTE disabling. So that feature didn't make it yet to PIN2Drive to disable. So I hope we're able to add that quickly. Good. Disabling message. Globe mode makes you invisible for tracking by the vehicle and mobile phone rolls. Mapping, music streaming, stops working. And it could be abused under PIN2Drive to enable LTE disabling. Globe mode disables the USB 3G connection to the internet. When we turn globe mode off again, if we turn globe mode off again, this will take a little bit of seconds and then we see LTE gets enabled again. So the messages that it gets enabled, it takes 5 seconds for the interface to recognize that the USB device is back online and then get back our data connection or in your freedom. Freedom of the vehicle gives you easy access to developer and factory mode, which can be enabled at the touch of a button. Factory mode will restore the QT application running on our display. Up for display, we see that a blue developer text is added to our T of Tesla. This is Tesla provided functionality. If we now touch this button, then we will get to see the developer mode. We get a nice overview of the different packs in our car. The car is currently plugged in. We see what the car battery management system is actually doing. Developer mode also shows us when the car was first built. So February 1, 2017 in this case. There is a special thermal mode inside developer mode which gives us an overview of all the important temperature metrics in the system. Go out of developer mode again by touching the exit button and holding the system again. When Elon Musk announced two years ago that hotspot mode was coming to Tesla cars through a sample software upgrade, everybody was thrilled. With hotspot mode, you can just add this antenna to a car and turn it into an inquiry vehicle. Just in search, the USB adapter is ready to go. The FreedomEV app keeps track of data usage so Tesla can properly build usage of their network if they want to do so. Some things you can enable with FreedomEV don't make a lot of sense. Moonshine mode changes the color of your display behind the steering wheel in a psychedelic way. If one day you decide if you want to live without FreedomEV a completely removal is as simple as running the removal script. Thank you, thank you. So here is the Github project. It's completely accessible. There are already some contributors. And last night, also a friend of mine from Hungary, a great Tesla hacker also installed it on his cars and gave it a test and quite a few typos were already fixed as a result. So we bundled this functionality which we can just enable in the web interface in what we call apps. And we see here in the master branch there is the slash FreedomEV. So we put everything on the USB stick, the root file system in the directory FreedomEV and there we have a directory called apps. This directory called apps contains symbolic links to apps in progress or apps available. The web interface only allows us to create sim links basically to apps available out of this apps directory and only those sim links will be active. And it also means that when the USB stick is detected the application is started by running a activation script out of it. So it's just a scale shell script which can start a service. Also, the FreedomEV star script will copy the deactivation script to the root file system just to the temp directory in RAM so that if the USB stick needs to be is removed that it can still run this deactivation script to kill dangling processes. Then there is also a description.sheeson file and the sheeson file is basically the name of the program and some more description everything which is visible in the web interface. Also, it can contain hidden. The marking, the fact that it's hidden means that it's not visible in the web interface. Also, the FreedomEV core itself is implemented, the web interface is implemented as an app. You can easily copy stuff from it. And then we have some directories every minute, every hour, every five minutes, every day to implement some kind of Krontap-like behavior as the script FreedomEV star runs every minute. It will look in those directories if relevant and run whatever it's in there in a periodic way. So here we see the example of the description.sheeson and by the way, this directory zero template in the apps in progress directory you can just copy that. There's nothing going on in there just some explanation. You can copy the directory for your own application. If you want to create a birthday mode working on it a little bit you can easily do that. So you see three entries in the description.sheeson the name of the app, the description and if it's visible or not. So in the apps we see that which current things are enabled. So yeah, if you want to update FreedomEV just to get pull on the root file system which will basically put some things in there for Farwewe FreedomEV and also the slash FreedomEV directory. So what are the current problems and things which are to do? Well, some things in the movie were not really there yet. So for cloaking modes we disable right now the LTE modem but Wi-Fi is not yet disabled. It's easy to disable it just add it. But there's also no PIN to drive it's not being asked. So yeah, I would prefer that in there. It's not easy just to interface which need to be built for that. We had some more plans for making movies of things which are already in there like Webmin is in there. Maybe you're not that fond of Webmin, I know. It doesn't work great on the Web browser anyway but it might be interesting when your wife is driving just to be able to install some other things without having to pull you out of your laptop. A bloopers movie was also planned. Thank you to my wife, by the way for allowing me to do this. I warn her when there's a possibility that one of the displays is going to reboot. The car still drives when the systems reboot. It's maybe hard to know the speed but yeah. So also the proper hotspots traffic accounting is not in there yet just not a lot of time for that but shouldn't be too hard to implement. It should be properly done because of course the car switches between Wi-Fi and LTE 3G all the time so we don't want to pay for our own Wi-Fi connection. So some other things, yeah the hotspot mode works through SSH so I'm all right now probably some IP tables problems. Unbox I worked on that a little bit trying to get Android working on the platform. Unbox is more geared towards running on Intel so might be easier on the newer cars to get that running. Would be nice of course to be able to run Spotify, things like that on your car. It competes a bit with ad functionality basically compared to the Tesla things. Also car logo addition I changed some images in the car. I overlaid them using bind mounting so I don't really change the actual files and this means that it gets to see like that. I like it a lot. I think lots of people will like it too to be able to put their own logos, their names whatever on their cars. So I want to make an app for that as well so it can be easily done. Also I would like to make an app for reverse. The other day I crashed into a car behind me claimed the fact that the car didn't beep when I was reversing. Wow. Web interface for reverse SSH tunnel is not finished yet. Airplay over Wifi. M-player to view movies. We can also check if the car is driving or not easily for safety reasons. Compilation of browser like the one from Tesla with similar limitations. Some clean up of IP tables. Button widgets sometimes receives two events often receive two. So it might be the problem with the widget or not. We need to troubleshoot it a little bit. How Tesla friendly, how hacker friendly is Tesla? Seems to be quite alright. I don't have a lot of time so I don't think it foils warranty what we are doing here. Obviously don't break anything. If I break something I also tell Tesla and I don't claim warranty. I wanted to pay just a few euros because I broke a plastic cover myself. Very reasonable. OK. I need your help. Please contribute. If there are any questions I might have a minute or so left. Yes. The question is if we perform a software update on the car will freedom of view still work? Yes. So for now yes. So basically it relies on the fact that we have root access and persistent storage. As long as that not being touched it keeps on working. Obviously we need to remain cautious. It is possible that they might break stuff and we need to work around it. So we will always say there is a rumor that 2019.2 might break some stuff and we will see how to deal with that if that is really true.