 Wel, rydw i'n ddweud i'r cymhau. Rydw i'n ffordd o Adam Ffawwla. Rydw i'n gweithio i'r Ymddianol Llywodraeth i'r moddan a'r ddechrau. Rydw i'n gweithio'r Unigwyr, Databasysau, anywgol i'r ei ffwrdd i'n gweithio. Rydw i'n ddweudio'r cymhau, IOS i Android. Rydw i'n ddweudio'n ddweudio'n gweithio'n gweithwyr ac ysbyt yw'r cyflwyno'n gweithio, ac mae'n ddweudio'n ddweudio'n ddweudio'n ddweudio. Rydw i'n ddweudio'n Australia i ddweudio'n ddweudio ym Mhau Covid Safe a nid oedd yn Alberta Canada. Rydw i'n ddweudio'n 7.6 miliwn ysbyt, yn gweithio. Rydw i'n ddweudio'n ystym o'r cydwyr a'r cymydau, Dwi rôl i'n gweithio i ddod y fudiad refugees i ddysgu, dwi'n ddim yn ddsylfa gan y llun. Yn oeteth i gael i ddatblyg o'r ffodol. Yn oed dweud â'r awdurdd UK software yn rhan o'r ffordd, yn rhan o'r ffordd, ac mae'n gweld ymlaen y gallu'r ysgoel. I ddim oed yn oed i ddim oed i ddim oed o'r ysgoel, dillai'n oed yn oed i ddim oed o'u segfodol. Mae'n ddigon nhw gydaᵎ, It's nice that other people obviously see the good work we're doing. We were originally excited to have digital contact tracing, but we've now got a really super reliable Bluetooth layer. So what else can we use that for? That's what this presentation is about. Because of our success, because we've been working with international governments on lots of different programmes and UNDP and other international groups, the Singapore government donated their original open trace code to us earlier this year. ac yn ymddangos i'w MW2 o'ch cyfligol gyda'r modaidd Cod Ynys Ion 12 a'r hyn sy'n gwneud. Gallwn ni'n gwybod i'r Cod Ynys Ion, byddai'n gweithio y byddai Llywodraeth ac ymddangos i'r gweithio. Mae'r gweithio'r llwyth i'w gwneud am ymddangos. Mae'r Llywodraeth i chi. Mae'r llwydd i chi gweithio y Llywodraeth i chi fel yng Nghymru. Mae'r llwyddo i chi. Mae'r llwyddo i chi. Ac yr yw yw Ymddianydd Ymddianydd yn 2019? Ymddianydd, yw'r hyn Weinidydd Ymddianydd Ffynig Dunedig yn y rhan i'r lyfe. Maen nhw'n credu i fy hwn, a gwnaeth mysgu i ymddianydd, ymddianydd, ymddianydd, ymddianydd. A chyflurio'r lleion yn cael ei wneud ymddianydd yn mysgu i'r lleion. A byddai mae'r Ymddianydd yn ystod yn yr ymddianydd. Yn gwrs ymddo, gallwn ddau'r gael yma i'r panfio ardal a fyddo sydd wedi'n qunw, o esgwys a bwysig gweld y cwmhwyl sydd wedi'i gwneud ymlaen o'r ffath iawn i gyd yn un o'r ddweud ni. Ond rydym ni'n bwysig, erbyn i'n ddweud ac yn testio i cael eu rhaid o'r ddweud o'r cyffredigol. Rhaid? Ac rydyn ni'n ddweud yr holl bwysig yn ysgolwyr o'r 2020. Rydyn ni'n ddweud yr holl bwysig yng Nghymru yn ddweud i ddweud i gynnig i adem. can create apps pretty quick, we got a technical problem that's right up your street. I was like, great, what is it? Well, we need to figure out how far two people are away from each other using the mobile phones that are in their pockets and I'm like, okay, I can think of a few ways to do that. So I started hacking away a few ways of doing it on the train on the way down to London. I live two hours away from London. Got it kind of working that day, demoed it on a video the next day and then ended up working on the content trace and project based off the back of that. But it was insanely complicated because as soon as you start scratching the surface, you realise this really was only tested for audio, right? It wasn't intended to be used as a digital tape measure. So this is what I ended up looking like. This is showdown. I was like, wah, it was kind of crazy times. But what we are fundamentally trying to do, and this is an excerpt from Faretti et al, which is the main paper on digital contact tracing for COVID-19 in the theory of it. This was really what we were trying to do is trying to figure out, okay, two people might live with each other, but one of them might get to work. They use public transport, you know, and if they're exposed to somebody, how do you notify people and where do we set thresholds for a close contact that's probably going to fall ill and they kind of nearby contact that we're saying you don't have to self-isolate but keep an eye on things, you know, how, where do we set those things? So this was basically the source document and the Oxford team in the pathogen dynamics group, which I'm now looking off to be a student in as well. They set us this challenge. So I sat down to look at the fundamental science behind it, and we found lots of interesting things along the way, which I'll talk about on the next slide. But then we kind of finished that project and went away and launched herald, herald super, super reliable. So I managed to calm down a bit so I don't look like Sheridan anymore. So I'm now, this is me, all kind of peace, love and trying to help people with Bluetooth apps, right? Obviously, you know, my hair is slowly growing back. It's not quite that luscious yet, but that's what I'm hoping for. And I've still got my Bluetooth headphones and they work great, right? Which is the important thing. These are particularly brilliant if you're autistic and hate large crowds, by the way. So if you do see me walking around with them, then I'm not being ignorant. Feel free to tap me in the shoulder or something like that, but you know, tap me in the shoulder if you want, it's just, you know, crowds. So that's that's kind of the faintly amusing timeline, but we did learn an awful lot along the way. The main one being standards are fantastic. Unfortunately, everybody has their own. And the problem with standards that have optional components is that different people will implement different optional components in different ways. And this is this isn't just a dig at any one in particular. I mean, these things were fundamentally designed to share audio, right? They weren't designed to be, you know, digital tape measures. So there was lots of issues, some of them in operating system code, some of them in chip sets with specific phones and specific models of phones. But the upshot was that, you know, the protocol that ended up being used quite a lot, the Google Apple Explosion notification or Gine protocol kind of only works on handsets from the last three years, right? It doesn't work with older phones, which means it's out of reach of a large swathes of the world's population. And when you consider pandemics don't start normally or often in very rich countries, you want to stop it before it becomes a pandemic. So we kind of need to finger out the longer tail of it. And also, if you're coming up with any technology that could have wider health benefits, it needs to work on as many phones as possible, right? So this is what we've been looking at in the Held projects. Interestingly, we found that Bluetooth is greatly underutilised. So there's so many optional features of Bluetooth for low energy that just aren't used on phones. And this is partly because people have had trouble using the operating systems, APIs for the apps to work reliably in the background as it was the foreground. We've solved that problem, thankfully, touch wood. But it was not straightforward and took a lot of research and unauthenticated Bluetooth for low energy, you know, you pair devices in order to share data. But we're fundamentally doing this in an unauthenticated way. We're passing anonymous packets around because you don't want to pair your phone with everybody you come into contact with, right? So, you know, there's different, you can use Bluetooth energy in that way, but that's not what most people use it for. But it's a super, super useful thing to do as we'll see later on for location services like in hospitals and things. And then Bluetooth mesh, which is based on top of Bluetooth low energy. But is effectively a particular packet format going over Bluetooth low energy with a particular service ID. And that's super useful for when you, it's a flood network paradigm. And we'll talk about this in a moment. It's used primarily like 100% of all the samples you'll ever see is for somebody turning on one light bulb or turning on or off multiple light bulbs or changing the colour of the light bulbs. And people are like, oh, we've got the biggest Bluetooth mesh network in the world. It's got 6500 nodes in it. Like, yeah, but what are they? Oh, the light switches. It's like, yeah, that's not an IoT power use case, right? I'm sure we can find more uses for this stuff, which are really useful for health care. And then you've got matter, which is everyone's coming up with their own IoT in-house smart building kind of approach. So you've got, you know, Amazon doing things. You've got Microsoft doing things. Everyone's doing their own different thing, right? This is people going, well, do you know what? If we kind of take an IP network and we take like Bluetooth low energy, then we can do something standard across everything. So that's brand new and it's been worked on by a lot of vendors. So there's lots of unexplored potential basically, which is quite interesting. And then finally, what we learn as well is there's lots in the literature about Bluetooth distance estimation being unreliable. It's not actually true. It's just that the way they tested it was a fixed distance or two fixed distances. What I did, because I'm a geek, was created a robot that automated this testing at one centimetre intervals for four minutes per centimetre interval for a variety of different phones. And we came up with this graph. So the RSSI, yes, does go up and down, but it's predictable. So you can create a linear model and then, you know, assuming you don't turn your phone on, stay very still, then turn your phone off, you'll get a useful signal to noise ratio. So that was quite a groundbreaking discovery. And we've got over kind of eight million data points of raw data that published as open data and that people can go in and use and build machine learning models on top of if you want to. But it isn't a digital tape measure, right? You can't take one reading in Bluetooth on one phone and compare it against a reading on another phone. So I've come up with a phone self-calibration mechanism. So that's actually been written in the research group Oxford at the moment. That's going to be published in the next month or so. So it's a self-calibration mechanism. So your phone, you know, if you fall ill with COVID-19, it's about three and a half days between being exposed and falling ill. This can self-calibrate on your phone, going about your normal daily business within 48 hours. So that's well within the range. And normally you'll have it installed before. So that's quite a useful thing. So for the first time, you and your friend, you know, like you do when you go out for a walk with your friends, you look at the step count and you go, oh, you've done 200 more steps in me. Well, but you kind of accept it because it's kind of, you know, within kind of 7% you're fine, you know, within 10% you're fine. Approving and all you'll see in this paper when it's published is that we can get it within 7.5% of two vastly different capable phones, which is super, super interesting. And then we found some devices kind of misbehave. And by misbehave, I don't mean the rubbish devices, the great devices, but they don't follow, for example, how Android works with Bluetooth. Like you make a system call and it says, yes, I do support advertising. No, I don't. And it just flout lies, right, which is kind of unhelpful. And then some things like Apple TVs will proactively try and connect to any other Bluetooth device nearby. So you kind of have to filter them out. So there's all sorts of weird things like that. Blood glucose monitors were a bit of an issue during COVID-19 because, you know, people intermittent in e-health systems, but they're not experts on Bluetooth. So they're implementing it in a non-standard way, and that's causing interoperability and security issues. So what we're trying to do in Herald is come up with a way of doing this so that people can concentrate on the e-health aspect and not concentrate on the low-level Bluetooth aspect because we've already thought of that. But that was a super interesting finding. So crucially, how are we doing this? Well, how are we applying this? So the first example is smart hospitals. Anybody went to the Zephyr talk that started the week? I went to the mini summit. So Zephyr is a real-time operating system. It's Apache 2 license, another Linux foundation project. And I thought, yeah, I don't want to write device drivers, so I'll go and use that. So we use that as a basis for a lot of our wearables and beacon stuff. But first example I want to show is smart hospitals. So we started off with, okay, phone to phone, exposure in distance estimation, that sort of thing. And then we thought, well, we've got these QR codes in restaurants and in pubs and we're having to scan them. And when you scan them, it just assumes you've been there all day. So it's not great accuracy. So we thought, well, what we can do is we can create a beacon which has got the same metadata as those QR codes of what venue you've been at, who owns it, that sort of thing. But it's automatic. So it looks for these beacons and then logs it on your phone. So it's a venue diary in your own phone. So we created that beacon app. I had that running on a Bluetooth dongle that I forgot about outside my house in the cold, freezing, Derbyshire weather for about 18 months. Well, apart from the odd power cut, but it restarted and it worked fine. So this is super reliable stuff. And that's just transmitting, you know, I'm Fred's Pizza Palace and you'll see an example of this encoded in a bit. And then I thought, well, that's great. That's restaurants and that's useful for COVID-19. But actually that's probably useful elsewhere as well. What about an entrance to a hospital? So, hey, you've just entered a hospital. Would you like to download a map because all British hospitals are ridiculously hard to navigate around, right? So that might be a useful thing to do. And then I thought, well, rather than just download information about the hospital, why not be interactive? Rather than use these kind of check-in machines in my outpatient appointment with COVID-19 hands. Well, why can't I just do that on my phone and then I'm not touching anything? So I can link that to a hospital system and make that interactive. And then I thought, thinking, okay, I'm booking in for my appointment. I probably know where that appointment is. So if I download a map and download where my appointment is, I can then navigate. So what we ended up doing was thinking, well, if we set up lots of Bluetooth beacons or a measure of Bluetooth beacons and I've got a digital map I'm downloading to the phone, then I can include in that map the location of these beacons and that phone can triangulate its own position. So it's privacy preserving because it's done on the phone, not in the hospital. They're just transmitting who they are and where they are and the phone's using that information to figure out where you are. So I could then go, well, actually your specialist is running 30 minutes late for your cardiology appointment. Would you like to, A, go on a healthy walk in the garden or B, go eat cake in the cafe? Think I'll go eat cake in the cafe? That'll cheer him up. So I'll then navigate using the app so you'd go to the cafe and then the Frankie and Benny's features, I like to call it, all the restaurants are available. But the Frankie and Benny's feature, you know you pick up the thing and it vibrates when your table's ready. When there's one person in with a specialist, he says, hey, you need to go now and then you can navigate you to the specialist office. So it started off with an idea of, well, venue beacons are quite useful, but we've now come up with this mesh network in a hospital that we can use for something fairly useful, which is navigating around the hospital or maybe checking into an appointment. But actually we can make it more useful by applying it to what the hospital people are doing as well. So here's a ridiculously complicated diagram. Let's say you've got a Bluetooth mesh. So you've got these four devices here. These are tiny little devices. I was planning on having one ready to show. That stuff work. Got one in here somewhere. Anyway, the tiny little USB devices, about yay big, about an inch and a half long. They don't even have to be that big. So let's assume you plug them in. Say we had a room like this one. It's roughly square for the people remotely. We plug one of these into each corner. We know where they are. And then we can say, well, actually, if we've got a Bluetooth low energy or Bluetooth mesh tag and we attach that tag to a piece of hospital equipment like a syringe pusher, which apparently go walking quite a lot. Interesting thing about hospital equipment in the UK, the National Health Service buys 20% more hospital equipment than they need because they can't find them when they need them. Some of these carts, simple carts for ECGs or whatever, over a thousand pounds per cart. So that's multiple millions per year, not just in purchasing them, but also in maintaining them. Also in finding them lastminute.com. One of the people I worked with, her father ended up getting rushed in for a heart attack and they couldn't find a piece of equipment. And they had to go and manually search for it. And like, I need that here now. So these things are real use cases and it could save lives. So you can attach one of these tags to any piece of equipment, add the metadata in. And then it will go to sleep when that piece of equipment's not moving because it'll just say, hey, I'm still here. I'm going to sleep now and nap nap time. And it'll go off to save battery so these tags can last for a couple of years between charges, which is amazing. And then when they do move, it can say, oh, I'm moving. And then all these little beacons can say, well, okay, we're seeing this thing move. This is the distance I, these are the signal strengths I'm getting from it. And then they can be analysed both on those devices locally as a summary, but also sent to what I'm calling the mesh modem, which is how you make a Bluetooth mesh system instead of being just kind of standalone for light switches and stuff. How you link that to a live system. So what I've come up with is creating effectively one of these Bluetooth things you plug into a server. So, you know, 95% of UK hospitals have two VMware data centres in them, right? So that's interesting in and of itself. You know, they're in there. Nobody knows that because they just work, right? But they're in there and it looks like a broom cupboard. It's actually a server room, right? So if you plug a few of these devices in because it's mesh, there's no single point of failure. And then what you can do is you can link that to a messaging system because this is just a messaging system at the end of the day. So if I flow those messages into RabbitMQ and I can have a web interface that shows where these things are in real time, equally if I'm an administrator, I can programme those things remotely and say, okay, where are all my things? If I'm a maintenance guy, where's serial number one, two, three, four, I can go and find that thing, right? And get real time inventory of all the equipment I've got. And it's not just for equipment as well. Apparently this is a really worrying statistic. You go in for a biopsy because you think you might have a very nasty disease to get a bit, you know, have you chopped out and sent to the lab? They lose those things, right? Quite regularly. So actually, you know, one of the hospitals I was talking to was like, can we please attach this to a bag? So we know where in the hospital that biopsy is so we don't lose this and ask somebody to come back in and get another one causing more concern and more operations. So this is another use case of tracking things. How it physically works, you end up with a Bluetooth mesh like on the right-hand side in this diagram. That has a mesh modem as well as each one of those mesh nodes can talk Bluetooth flow energy to phones or tags, but it can talk Bluetooth mesh to things that are enrolled. Bluetooth mesh is a secure protocol where things have to be enrolled. So if you're a visitor, you can't use Bluetooth mesh because you're not enrolled as a device, but you can use Bluetooth flow energy. So these Herald devices talk Bluetooth flow energy in Herald terms. So we're saying, hey, I'm a beacon, I'm standalone, so a phone can talk to it, but then they talk Bluetooth mesh within the hospital so you get the best of both worlds, one network. And because it's a mobile network, you don't have to rip out walls or rip out floors and lay cables down, right? You can put these mesh nodes within there. And the Nogadig chips we use can also do Thread, which is an IPv6 mesh network. So all of a sudden, I've got a dynamic Bluetooth mesh for IoT and messaging data and a streaming IP network in my hospital for not much money, you know, $20 to $30 per node cost $5,000 to implement this for the average hospital. It's nothing in the Gansgima thing. And then I can have in my two, you know, VMware data centres on site, I can have a couple of RabbitMQ nodes, some modern apps written on Kubernetes, Tanzu Kubernetes is good, by the way. Other Kubernetes is available, but I have to get that obligatory thing in there. And here's a few projects. If you want to take a quick screen grab of that, I'm going to probably post a note after this session on the Held website just to have quick links to this stuff. But all this stuff is open, it's all developed in the open, all our plans on Mirro, on a public Mirro board, on a public GitHub projects and issues as well. So you can see absolutely everything we're working on. You can comment on it, you can help me work on it and help the other team work on it. What does this look like in code though for people who are trying to implement it? Well, this is the entire kind of non-Zephyr code. So there's some Zephyr code which is like, I've got an LED, I've got the, you know, low level code is not much. But then this is the entire code for that standalone beacon I was talking about. That's it. It's like 30 lines of code and most of that's comments and, you know, comments and gaps and I use spaces not tabs, I do apologise. But yeah, all we're doing there is saying I want a Zephyr context provider because it's a Zephyr device. So that goes off and talks to Zephyr and goes, okay, I know what the capabilities of this thing are. And then say, I want to use Bluetooth. So you get Bluetooth state manager. Get the default sensor configuration. So Bluetooth sensors, just like a Herald device, Herald is independent of Bluetooth. So you can implement multiple protocols under it and implement multiple apps on top of it that are independent of what the protocols are. So we support Bluetooth, low energy and Bluetooth mesh today, but we're going to add other things in the future as well. So here what we're doing is we're saying Erin. So Erin was one of our lab's engineers. So she similarly, she's still got her hair. She survived the COVID-19 project with her hair intact. I didn't, obviously. So this is Erin Steakhouse because she's from Georgia. So I was like, you're going to have a Steakhouse. You know, a bit of racial profile in my part there, but she does love her steak as it turns out. But yeah, so country state and code and then some extended data which is basically the text name. So this is kind of compatible with the QR code system that they've been using in New Zealand and they also use in the UK and elsewhere. And then I've just got some debug information at the bottom which is just kind of sending debug information over Bluetooth as well. And then SA.STAR, sensor RA.STAR is literally telling Harold to go and run in that thread and that's literally all the code there is for that beacon. Similarly, for kind of more complex things like that mesh mode example. So linking a Bluetooth mesh which is standard Bluetooth mesh by the way is nothing Harold specific in there other than we've added a few models in but we're following the spec and we're going to contribute these back to the Bluetooth SIG as well. So to get a mesh mode I'm working it's like a one liner, right? So it's line 159. It's like continue to process these commands and that's it. And then, you know, because they're standard models, mesh models we're just doing the, you know, converting the rabbit MQ message from going text over a serial port and converting that to a Bluetooth mesh message and vice versa, that's all it's doing. So it's pretty straight forward. And then the mesh models we're trying to stick with the spec. So Linux foundation as look would have it has a Bluetooth mesh registration. So we're just using that one. And then we define this example is a presence message. So then you have like a presence struct as well. So country, state, code and ID again. So these are just standard that work both Bluetooth low energy and Bluetooth mesh. So what else have we done? So disaster communication. So either through natural disaster or through violent events that may or may not be happening in Eastern Europe. So disasters, emergency comms if the internet goes down because it's been taking down. You still need to sell people where they can get fresh water from where they can get food from where they can get healthcare from where the medic centers are. Which ones are busy and which ones are less busy and when to go and when to leave the shelters or not, okay? So this is what we're working on. Weirdly, these things sometimes come from solutions come from weird locations. So I'm a big proponent of agile. So we had some labs time last year and we talked to lots of different UNDP countries. So the UN development program has IT staff that work within the health systems of different countries. And this was a question I actually got given from the Buthan government saying, okay, we understand how old would work for venues and digital contact tracing. That's great. One of your kiddappos was a problem. So mounting goat herders. I'm like, that's a question I was not expecting. Apparently the problem is with mounting goat herders. It's not their problem. They were actually worried. They weren't the problem. They were worried about the health is what they were worried about because they may only go to a town once every two months, which has got internet, but they go through lots of little villages. So they could become ill or worse. They could be asymptomatic and giving it to other people. So how do you get a message to them when they're away for two months without an internet connection? And I thought, well, in Herald we can just message pass. So why don't we do a store and forward mechanism? And that stayed at the back of my head for about six months. And I was thinking, yeah, well actually this could lead to a completely decentralized way of doing digital contact tracing that doesn't need a server or key exchange. It can all be local past between people. Like I'm ill. Yes, I tested positive and it just gets sent as a message, right? No government control at all. And I was thinking, well, that would be great. And then one of our contributors who contributes to hardware designs is based in Ukraine. So this is a very real problem, not for goat herders, obviously, but for internet may or may not go down in certain places for certain reasons. So he was kind of interested in this for the emergency civil comms, how to get a medic and where to find food kind of messages, right? So I was like, well, okay, we've had this idea for a while. Let's go implement it. We've actually implemented this in code now. And as Suzanne, who's our open source marketing person, will attest to, I'm terrible at naming things. So this is called the general purpose decentralized messaging protocol because I'm fantastic at naming things or GPDMP for short, which is similarly a terrible name. But effectively the lessons we learn on the left hand side from kind of guiding from Held V1. So Held V1, so this here, Bluetooth for energy four and five, Held V1 protocol in your payload or a custom payload. That's what the Australian COVID-19 app and the Alberta Canada COVID-19 app are using. We've standardized on some other payloads which will enable interoperability. Incidentally, Held can have a flag turned on to detect Gain tokens and to detect open trace and blue trace tokens. So it's a fully interoperable thing and it just acts just like it would. You know, your app doesn't have to be rearchitected for a different underlying COVID-19 or proximity protocol. We'll just say, hey, there's a new device here. Here's its capabilities. So we looked at that and looked at some of the security requirements and we're implementing a Held V2 protocol which has mutual encryption. So anonymous connections still, but mutual encryption, which is something that's not built into the Bluetooth spec. So we've been specifying that for a while and then decided to do a full seven layer ISO model for this so we could put emergency messaging things on top of it. And then in future, I should mention, in future we can support other things like UWB in thread and lower one because it's not specific to Bluetooth. But Bluetooth is the most common protocol on any mobile device in the world at the moment. So how it works. So imagine you download like a Held Personal Health Utility app which is coming soon to an app store in a year. I might scan a QR code or download a channel definition file. So it's split into channels and then senders are also receivers obviously. They're just people or devices that are in a channel. So very much similar to how Bluetooth mesh works with network keys and application keys, but we're calling them kind of channels and senders. So I say, okay, I've just created a channel. It's got a random UUID. I want to share this with my friends so that we can securely communicate. So I share the channel definition and I share my sender key and he gives me the sender key. And then I go along and I go to my friend in next town and I add them to the channel and we exchange sender keys. Okay, so only people with both the channel key can decrypt anything and see that there's different messages from different people and only people who are both in that channel hand out each sender's key can decrypt that key. Equally, it could be a public key. So if it's an announcement from a government saying, you know, a child has been snatched or, you know, there's water available here, there's aid available here, then it would be a public key that's pre-built into the app, for example. So if you're, you know, an aid agency and you want this app, you know, people in a camp, in Syria or somewhere like that to be helped with this, then you could have this as a local comms. So it works very similarly to, if you've seen the Bariah project, it works very similar to that, but is kind of cross protocol and cross platform and can be used on custom hardware devices as well. So once I'm enrolled, my phone is now listening for held messages either contact tracing or GP DMP because I'm good at naming things and passing them on. So it's like, oh, that's a message. It's not for me. I'm still got time to live. I'm going to pass it on. So it's like a mesh network, dynamic mesh network, okay? If it does match one of my keys, then I'm like, oh, there's a new message there. You can decrypt it from Fred. He says, yeah, there's some food available over here. I've got pizza coming around, you know, or more seriously, you know, that new aid has arrived if you've not had aid in a few days come to this aid post. So initially we're just going to do plain text messages in this demo app, but in future we've already tested two kilobit audio but it's lossy. So you can lose 10% of the packets in that audio stream and it still works. You can still listen to it. We've already tested that and it works really well. And it supports, it's not just about live delivery like streaming, it supports delayed delivery and partial delivery and it supports burst delivery. So you can record a message and burst it. So there's lots of different delivery mechanisms possible and the way it works is you've got different layers. So first two layers are like Bluetooth or energy for now but it could be other protocols. But then have a routing layer and that's probably provided by the Hewold app. And then you could have other apps. So if you look at something like Signal which is a secure messaging app which can use multiple low-level protocols, you could have a link between Signal and Hewold. So people use Signal in a country and the broadband goes down, they can still use it by message passing like this. So yeah, so you lost children in civil emergencies, digital concentrations, all sorts of interesting ways of doing this. This is a test. I do like test room development. So this is a test I wrote for a layer. So all seven layers to say, oh, we're just in this device, this payload and it gets passed all the way up. So we've already got this code working. Similarly, going all the way from layer one to layer seven all the way back again. So sending a message and receiving a message, we can do that. So this is an example of doing that all in one test. So it's very straightforward code. So as far as an app implemented goes, they implement a couple of interfaces, they're done. It's all handled in the Hewold API no matter what the bearer protocol is. Obviously Bluetooth flow energy today, but it's in the future. Finally, whilst we've done health monitoring and wearables, so as I mentioned, a friend in Ukraine designed the middle ones. So you see the Hewold logo, those devices, they're actually live, they work, they're at my house. I've had to develop extra Zephyr device drivers for some of their temperature sensors and the daylight sensors and things like that. But we've got an e-health platform with daughter boards. The ones at the top are kind of the Nordic semiconductor demo boards. They're really good, I've got one with me today. And the ones at the bottom, one of the contributing companies to Hewold is Face Driving Canada. They actually do a private digital contact tracing system using some of this technology for like airlines and sports clubs and things who can't carry the phones with them when they're working. And again, here's the code. So on device analytics, privacy and healthcare is a really big thing. We don't want to give our data to the Apple's and Google's as well. Do you really really shouldn't? You want it on your device. You want to do the analytics on your device. So I can give you the analysis routine, but it runs on your device. So this is how we do it. We have a lightweight in-memory analysis API. So this is a test. So this is just our size, the distance. So produce some our size, then say I've got a distance analyzer. This is just a basic one for testing. And the delegate basically says, hey, you've got a new distance available. So we then run it at different time specs. And then say, okay, yeah, here's the outputs of those. The overhead of that entire analysis API is 16 bytes of memory on an embedded microcontroller, right? So massive API. But if you're a scientist, you're not going to implement low-level embedded code, but you might write a C++ class that takes one thing or on multiple inputs, run some analysis over it and spits out an output. And that's the way this has been designed. So how has this been applied as well? So personal health monitoring and mentioned as well. So social mixing score. So this is actually running on my phone here. So I'm doing some testing while I'm over here because obviously there's lots of different places I'm going. So yeah. So yeah, it's detecting Bluetooth devices. As we go, I think earlier, I had some like 250,000 detections, you know, 18,000 reads and things like that. And what this basically does is like a step counter. It will do your social mixing score. So I'm going to release that because the problem with digital contact tracing apps is they tell you after you've been exposed that you're about to fall ill, which is a little bit concerning. So what we're trying to do here is say, well, okay, let's move that back a bit. Like you monitor your steps to keep your heart healthy. Why don't you monitor your social mixing? So in a COVID-19 scenario, you might say, okay, I did 16,000 social mixing score on the last day. The government says, oh, we might be going towards a lockdown unless everybody can lower their mixing a bit. So now I decide to police myself to keep it down below 12,000. So we avoid lockdowns, right? Vice versa. If you're autistic like me, you don't like mixing much, right? So you might have a score of zero for days on end. That's the way we like it sometimes. That's my autism. Other people's autism is different, but yeah, I like sitting on my own doing stuff, but I really should go out and socialise occasionally. Also, if we're in situations where we've been in very close contact for a long period of time, we get very tired very quickly and we can have meltdowns, right? You've probably seen some kids do that. You get a bit easier to manage when you get older. But we could also build an app on a wearable to help people like me to avoid meltdowns, which is a great way of thinking about it as well. So finally, I've not got my one minute thing held up yet, so I'm doing well. So finally, what's coming next? So, looking to build, based on the eHealth wearable we've got, looking to build an eHealth makers kit. Tonight you get your Raspberry Pi's and your RP2040s to do wearable stuff. Looking to do this. So you have a smart watch that's got a main board, but different daughter boards you can plug into it. So one daughter board can monitor skin temperature, blood oxygenation and pulse rate. And then you can write your own little code for that. And one board at the front might be for a display, so with buttons on it. And then the Herald Personal Health Utility app. Again, I'm really bad at naming things. Somebody give me a name for that, please. But that could be used to interact with that wearable so you can do your own little hacking public health experiments. And we've got a great example of STEM outreach using Herald already. So University of Massachusetts Medical created an app called Operation Outbreak before COVID-19, I hasten to add. And it was a STEM outreach app. So they basically go into a school. All the kids and teachers would download this app. And they'd make one kid, you know, patient zero, COVID Mary, right? So with COVID Mary going on and going, shh, I'm the one making people ill. You can literally go on the operation and outbreak website, it's hilarious. So that person, their phone would give them a fake disease and it had spread and they had to put in different controls and decide how to respond to that in a public health crisis. Great idea. And they were using a commercial Bluetooth layer but they stopped supporting that. So they approached me about it and we're supporting them. They're now contributing code into Herald. They're contributing the new UI end as well. So that's great. And my final announcement is what I am looking at doing, not just in the Herald project but generally one of the problems we've had is we can't sign contracts as a Linux foundation project. We can't have contracts to device manufacturers, T-shirt manufacturers. We can't bid for projects and to provide things and sell things to people. However, if you organise in the UK company, let's say charitable, has a charitable purpose, you can trade and you can also be on the giving fund websites for things like Bright Funds. So that's what I'm looking at doing. I've already got some potential board members in that as well. So we're looking at doing that to fund not just Herald project but any project will be able to bid for funds and say we want to do this in the e-health space and then those funds can be directed to those projects. So that's my last announcement. Where to find out more? Herald Proxer IO or the Herald project GitHub site are coming to chat to me. I'm easily stalkable on the interwebs. You'll find me everywhere looking kind of bald with a very dodgy smile. I don't do smiling. So, yeah. And then there's loads of COVID-19 epidemiology papers. All the Oxford ones are open access. So if you go to science website and there was a link early in the slides, they're all open access. You can read them and understand how these things work so that people don't fear them. But that is the end of my presentation. I'm beyond time. So any questions? Anywhere. I don't think there will be. Thank you very much for your time.