 Hello everyone and thank you for joining our time series database for SDM32 MCU devices. My name is Sasan Montessori and I am founder and president at ETIA and have the pleasure to be with Louis Chausat who is a senior marketing manager at SDM Microelectronics and Ryan Phillips who is a database architect at ETIA. Today we will have a really exciting agenda with regards to data management on SDM32 platforms for you and we also have prepared a gift that it includes our workshop attendance which is at no cost. So the promotion code will be available for people who have an interest to learn further about our technology in two weeks. So this webinar is for device manufacturers that are building embedded systems with module controllers and need to sense and collect and protect data and data for these embedded systems typically originate from sensors where a massive amount of data is produced and analysis is required to understand the real-time state of the system so the device can act on its own. These embedded systems have different requirements. Some need to store information over time for running queries, some need for sampling one or hundreds of sensors data with really high frequency and some others it's necessary to store configuration data which needs to be periodically updated and protected from unexpected power failure. So today we will share with you how ETIA DB IoT software for SDM32 MCUs empower your application to monitor, collect, organize and reliably store substantial amount of IoT data. Our solution is purely for device real-time data processing and the data management at the edge with which sensors and devices can ingest, analyze and act on real-time data. You will also learn how with ETIA DB IoT API functions your device can find average or look for certain pattern in data or group things together from different sensors or compare values on continuous basis. We show you how ETIA database actually as a refinery that transform crude raw data into valuable information as fresh data streams in SDM32 devices and share with you the major benefit that ETIA database and SDM32 platforms including saving bandwidth, benefiting from having the data on the edge without sharing and how you can accommodate reduce your cost when you have the data on the device then you own the data and you can minimize the cost. So at the end you will also see a real demonstration. This is the live demonstration that highlights our data processing and data management offering for SDM32 devices and we will open the panel at the end for answering questions. So you may be wondering how do I know whether embedding database, time series database like ETIA DB IoT software for my SDM32 platforms, MCUs, development environment can help me process or manage the data. Is this really helpful? Is it really for me? So there are a few questions that if you say yes to any of them you will be able to tremendously benefit from our software database and data management data processing and SDM32 when you are building the IoT systems and these questions are does your device need to sense remotely, collect and manage a large volume of raw data so you can collect part of the large volume of data on MCU platforms that's valuable to you not all the raw data comes in. So the other question here is that what happens when your IoT edge-based device application disconnects from other systems and there is no connectivity. Are you able to communicate still or do you still want to capture the data when there is a disconnect? The other question is do you worry that your device application may experience power failure? So what happened when there's a power failure? Do you want to make sure real-time data gets updated and data is not corrupted or are you concerned about the security as data continuously leaves the device? So is the data privacy important for your system? Do you want to keep the most of the data on the device and only share on demand with other system the information or data that's collected by the device? Do you need to access live device data for diagnostics and debugging purposes? So if you have answered yes to any of these then definitely our database for IoT systems it's going to be valuable for you on STM32 platforms. So before we go further to our software and they introduce you to the magic that you can really do with that let us hear about STM32 platforms and these are really powerful MCUs elegance of this can really bring some coolness and uniqueness to your development. Okay so let me give you an overview of our STM32 portfolio. So basically we have several series of STM32 microcontrollers and microprocessors. So the STM32 family offers many devices with high performance, real-time capabilities, digital signal processing, power operation and connectivity. So among the latest introduced STM32 series you can select for instance if you go to the top right the STM32 MP1 or the STM32 H7 if you really need a high performance or you can select the STM32 G4 for motor control or digital power application, STM32 G0 for entry cost. The last one we introduced on the market the STM32 U5 for low power with more security or in the wireless series you have STM32 WB and STM32 WL supporting RF protocol such as Bluetooth, low net energy, ZigBee, Lora, wireless MBUS. Among beside all these silicon microcontrollers and microprocessor we also offering a very rich ecosystem and solutions. So you may find all of them on the ST web page. So on the right side of the slide you can see the complete ecosystem including STM32 cube software and evaluation tools. You have also the offering in terms of security with the STM32 trust, the made for STM32 label and large panel of partners offering solution. On the bottom you can see all the solution we are also offering with a USB functional safety motor control graphic user interface and so on. So all the devices surrounded in red on this slide are supported by time series database from ITTA. Next so the STM32 ecosystem is continuously growing so the STM32 cube on the left side is a software solution for STM32 microcontrollers and microprocessors. It was created for designers and interested in a free comprehensive development environment. It can also be used to integrate your STM32 software in other environments such as Kyl, MDK or IOR embedded workbench. STM32 cube is really a combination of software tools and embedded software libraries. So software tools address each step of your development cycle with configuration first, development, programming and monitoring and software bricks enable advanced functionalities in STM32 devices and also cover external components thanks to STM32 cube expansions. In the middle you have the hardware offering so for all STM32 series you will find different categories of boards. On the left you have the affordable nucleo which is the most simple board for flexible prototyping and on the right side you have the full evaluation board. Last but not least you can rely on many online resources, trainings, massive open online courses, videos and a network of partners to help you at any stage of your STM32 project from evaluation or prototyping until design and production. With ETI DB IoT and STM32 you can store data temporarily or you can have the data for long term and the goal here is to be able to go back to this data and run queries. We architected ETI DB IoT to process and manage data locally on STM32 platforms. This is a very robust and database that's built for devices, STM32 devices that they are operating in a harsh environment and they generally get installed in where they fill technician go there once or twice a year and it's important to be able to remotely accomplish the job. So it's a very fast data stream preprocessing and offers you to take advantage of non volatile memory such as EMMC and other flashes where your device needs to consume less power. So when you embed ETI DB IoT on your MCU platform you are empowering the STM devices for real data analytics and you benefit from supporting concurrent reads and write and also have different indexing to configure and optimize data access and query performances. Remote sensing is the accusation of data about the trend without making physical contact with object where there is no possibility for on-site observations and there is a device or many devices that you deploy in the field and they're all connected and they all have working with sensors and they must remotely sense the environment and report the events such as abnormality and they all need to run real time. So for such a system data needs to be analyzed, fined filtered and there is a high insertion data throughput in real time requirement such as you know getting in for example when you want to get an aggregate, when you want to run join query. So everything must be done really fast and this is the purpose of you know having a database that can meet this requirement. So we empower the MCUs to manage time series data. So device can collect data, they can keep track of the most recent information to you know often for logging full history of data that comes from different sensors and ETB IoT allows MCU devices to keep track of data at any given time and gain the ability to observe and store the data trend from variety of sensors starting from a same timestamp or different timestamp. When the data arrives the database is able to collect it and organize them and give you tables in an organized fashion so you can make sense of the data. So with ETB database and the STM32 device you can see for example what was the value of several sensors at a given time organize the data in an exact order or where it was randomly collected and analyze the data from different perspectives. So you can combine database on the timestamp and finding information that you are interested. There are occasions that MCU devices need to store configuration data which are generally a small amount. Data is stored as a collection of key value pairs in which a key serve as a unique identifier. So developers are seeking ways to safety store and update data so application can access it in a later time with low latency and does not have to wait for information to arrive. So for these scenarios inserts are less and updates are more important. An example for this kind of scenario includes storing data about low and high temperature or storing information about system pressure or storing information about RPM change from time to time. So these are all the empowerment that you get from the database system. So basically the value is giving the device the authority the power to sense organize and store the data and when there is a requirement to act whatever you know the purpose is for the action the device should autonomously make it on its own. So our database on with STM32 device offers you to stream and process real time run real time data and you can run continuous query fresh real time and define the pipeline for the fresh data that is arriving and store it in a time series storage. So you can dynamically add new sensors and you guys because as you are working with your systems you want to be able to you know expand and you want the database to be able to scale and it offer you the same performance. So as you are adding more sensors the system is still the database is very stable this is the database is still gives you the performance that you expect and basically the time series data processing and data management it's getting done on your microcontrollers and you can achieve really a high performance query you can write thousands of data points per second per sensors and your system it's capable of empowering the data management and data processing. One of the important thing for application I mean there are two sides one is the business side and one is the technical side from the business perspective you want to make sure that the components and hardware that you're selecting they come together well and making sure that everything work as you expect when you are using the database you're using the operating system you're using the compiler etc. So as you will build your devices you know that one of the major challenges that causes taking products to markets late or even running out of the budget is the integration of software and hardware for building MCU applications. So ETHIA and SD Microelectronics partnership will greatly benefit you to focus on your application and have the ability to reach out to experts for data management and their MCU hardware and make sure that you know you can benefit from this tremendous amount of knowledge and expertise and software that's available to you. So when you select ETHIA and SDM32 there are real-time operating systems, compilers, IDEs that they're supported and you can just simply benefit because they're tested and they work together and you can build your application and from the database perspective there are some data management parameters such as available ROM and RAM for the database to run on the device that you need to be informed. Our time-space database engine requires about 150 kilobyte of ROM program flash and about 50k RAM and that depends on the workload that you're also having because you can store hundreds of sensors data over hydrate and you can read the data with the very raw latency and high throughput as your application requires you to export large volume of timestamped data. So your device storage media that is also you are bringing to the picture it's going to determine how much data you know you can keep as you are collecting the data. So with ETHIA database we support the variety of development environment for SDM32 including the Kube IDE, free RTOS operating system, Azure 3DX as well as you know other RTOS that are desired. We have customers that you know they require us to put on their platform. We work with them to do that. So our database is compatible with GNU, tool chains, MIR compiler and various file systems are supported and as well as you know you can write the data into raw storage made media. We provide CNC++ API for embedded developers so they can minimize the overhead. There are various markets that can definitely you know with the evolution of IoT benefit from our solution and we have our eyes on them. So when you build your autonomous system whether that relates to IoT, whether it relates to medical devices or automotive or air and watering monitoring there is a situation that explosive growth of data needs attention. Raw data needs to be converted into valuable information on high sampling frequency and there are variety of markets that can really benefit and have already started benefited from our total solution. So before we go to the detail let's hear about SD micro electronics markets and you can see how compatible our both companies are in offering solutions to different markets. Yes indeed if you look at the SD strategic objectives so we have we address four main markets are so first automotive, industrial, personal electronics, communication equipment and computers. STM32 devices are not qualified for automotive but they address all other industrial and consumer markets. We have already been delivering billions of STM32 devices for a multitude of different applications including factory automation, sensors, graphic HMI, motor control, digital power, IoT devices, connected objects, wearables, meters, medical monitoring and artificial intelligence now also. So indeed all markets except automotive can be addressed with the STM sort it. With regards to the partnership that and ST micro electronics have launched we can offer on one area and that's making the world smarter and we are really offering the solution that can help you to inject intelligence to your system, to your devices and you know different markets can definitely you know benefit from this and you will see some of these things whether you are building application robotics for industrial automation to increase the productivity or whether you're making small medical devices to diagnose their real-time symptoms or store configuration data or you are in the you know building smart buildings so you can put eye on the monitors and secure the building whether you know you are in the utility or power smart streets for building smart meters and if you are if you want to build wearable to connect body and monitor health and you know these are these are these are the places that tremendously have started you know benefiting from our total solution and you know they are remote control systems such as drone that they need to be middle of nowhere and they need to act on their own to control so you can empower the drone to control and act from anywhere and if you're building environmental you know environmental applications that you want sensors to inform you when there is a fire when there is you know a gas that has a leakage or anything that you know needs immediate sensing attention that is the fantastic solution so for now what we will do we will share with you a general perspective demonstration because as you know you know St. Mark's Electronics has 18 different categories of MCUs, STM32 MCUs and there are thousands of part numbers so for us to come and say okay we support all of them that's not that's not the real story because some of these devices are really really small footprint and they don't have any room for application but we support most of them and there are some of them that they have you know more freedom with memory and the list but the demonstration that we prepared for you showed you in general how in real time data can be collected and how you can do online data processing save bandwidth cost and basically sense and collect and analyze real-time information okay thank you Sasan so as Sasan mentioned we are going to be running a demonstration on STM32 hardware this is going to show you how the data can be captured onto flash storage media on a device and permanently stored there until the data can be exported or as long as there's enough space so that the data can be queried and accessed at various times so the goal of this demonstration is to simulate capturing data that would normally be captured over the course of an hour from dozens and dozens of different sensors and so we have a program that simulates producing data from one timestamp to the next collecting the data in real time and it randomly shuffles the sensors that are capturing data because in the real world the data is not necessarily going to come into the device in a consistent order so we're giving the data into the database nearly in the original timestamp order but our system allows you to have the data come in a little bit out of order you're just calling our API to put data for a given time series at a timestamp and a certain value and that information gets ingested onto the disc and then becomes available for various queries so for example if we do a full export of the data and just print out the first 10 lines of that we get this block of information and I can just paste this into a spreadsheet to see what this benchmark was generating we have various measurements that are capturing data over time but not every measurement is necessarily presence at every timestamp and despite that we've stored that information on the disc in a compact format that allows us to reconstruct it like this whenever we need to export the data in the order by the the timestamps that were given by the application and ordered by the sensor names so that we can very quickly get that data out in a sensible format for use by other systems but we can also directly query individual measurements and say let's get all of the data for measurement five from one timestamp to another and that's handled with a repeated call to a query function that just loads those timestamps and values into arrays provided by the application that allows you to very easily get the timestamps and values correlated with one another on this measurement the benchmark also removes old data to make room for new information because these devices often have very limited storage capacity so it's important to be able to reclaim that space on a continuous basis removing the oldest data first and then of course we need to be able to combine together the information to get this this block and that's accomplished with a series of functions that allow us to specify a query and then read that query in smaller chunks making use of the limited memory resources of the device very effectively and so the idea is that you should be able to do all of this reading and writing to the database in parallel from multiple threads so if you have an RTOS like free RTOS or Azure RTOS ThreadX on the device you can very easily simply open a connection to the database from each thread and have various tasks that are concurrently ingesting data and removing the old information as well as joining together the the data to do an export so you can see on this rather modest 80 megahertz ST micro device we were able to ingest data points 20,000 data points per second onto persistent storage media and reclaim that memory at 80,000 points per second so once your system fills up you're going to be able to continue collecting data very rapidly and finally if you need to export that data it's very well optimized so that you can get that data out in the kind of block that we show here you can convert that to other formats like JSON or XML if that's what your application needs and that export can be completed very rapidly in this on this board with the the storage media 120,000 data points per second and depending on your environment you'll get different results but this is what we're targeting with this with this example so as you can see we're able to help application developers to store organize and query the information with APIs that are tailored to the specific requirements of a time series storage now in addition to just storing time series data from the application we also have a stream processing technology that allows you to directly query real-time data obtained from various data sources so for example many st micro electronics development boards come with sensor components that provide various information such as temperature and pressure and humidity as environmental data there are sensors with location and magnetic detection capability and these sensors can all be mapped to what we call IoT streams in the database engine and then these just have data that's being produced which you can query by running a continuous query on the live data that's produced by the target board and so you can apply various rules to your statements such as say we're only interested in data where the temperature exceeds a certain threshold so if we set the filter to greater than 30 degrees then we only get those results back you can use this to monitor for various conditions on the device because this query is sent to and processed on the device itself and the only the results are sent back to the client on the network so this this is a technology that works on more advanced boards that have communications capabilities and a little bit more resources but you can use this to run a number of different queries such as if you're interested in a 10 second running average of the temperatures that have been collected that can be calculated using a continuous query like this you can also apply various formula for example if we want to calculate the density of a material from its temperature and pressure of a gas for example we can use the ideal gas law and calculate the volume per mole of the of the material and have that again be continuously updated for for use by the application but these calculations are all performed on the device itself so in this way you can take this information you can take the results of these and store it into a database on the device and have a lot of control over how you map the data from sensors that originate on these various devices and make that available both to be stored on the device and also to other devices on the network okay as you noticed here we are able to offer real data processing and data management in a time series fashion on MCU platforms and STM32 devices so as I promised for those of you who attend our webinar and registered for this event we have a gift we have a workshop coming up in about two weeks and during this half a day online registration which is typically we charge three hundred dollars per developer you can become very familiar with the databases and MCU's offering and this event it's offered to you at no cost so all you need to do use the events at you know write to events at itia.com and request a promotion code and if you want information about this workshop you need to visit itia.com slash MCU hyphen IOT hyphen workshop so this is the place that you can spend a couple hours two or three hours with our experts and gain weeks of knowledge and we have been very successful with such event but generally people pay to register and because of your interest we offer this to you at no cost so if you also need to work with us and you know build systems and learn about STM32 and ETIDB go to the download page request a product as I said you know ST Microelectronic has thousands of product lines but we will work with you to find out what is your exact needs what are your exact requirements and we can work together to make sure that you will learn about the total value that ETIA database and ST Microelectronics bring to the table. So at this stage I am going to open the panels and ask your questions so if you have any questions you can type it in and we will be happy to answer that times are limited but we do have few questions here that we will answer and if there is anything else that's not answered simply write to info at etia.com and we will answer that to you but for now let's go to the first question when will the STM32 U5 discovery kit for IoT node becomes available so the STM32 U5 production as far as I know was publicly announced last week and ETIA is also in the process of you know offering support for this new evolutionary technology and ST Microelectronics it's going to have the boards available to its distributor channels so you can work with them visit stm.com and get the boards that you require and it has a discovery kit and it's a pretty exciting technology actually you know during the support process we were pretty impressed with what you can gain with STM32 U5 and ETIA db database and the other question that we have here is somebody asked about the sample database on github we don't have ETIA dbiot will be introduced to the market soon and information about that is already available on our website so if you really want to look at the content database just simply visit the evaluation page or just write an email to support at etia.com support at ittia.com and you say okay we need to look at database samples and we will assign an engineer to provide that to you and we'll make sure that you know you will get what you need. Another question here is I will pass this to Ryan what back end engine do you use for database is it open source or proprietary? Yeah the database engine we use for our database and our time series is a proprietary storage engine that we've designed specifically for embedded devices to work within the limited memory constraints there. Another question is how difficult is to run ETIA database on desired MCU such as STM32 actually you know we are relatively familiar and becoming more and more engaged with STM32 electronics and supporting their environment these are pretty sophisticated intelligent MCUs and it shouldn't be difficult combination of our expertise that they offer you and your know-how with your application should be able to manage this and bring the data processing and data management to your system and the last question is does ETIA provide MCU related trainings and yes you know the workshop that I suggested to you it's the best way this is a really really important event and you can attend that at no cost and this is going to be really informative about the power that database brings to your MCU platforms and you know if you need the longer term training give you also provide you know five days that you can register and you can go through the complete details which is also available. So we have received another question that we will answer that and that is what is the underlying file system is it compatible with LiveFT so I will pass this to Ryan. So our product runs on top of a variety of different file systems we have a portability layer that just requires you to be able to write to a block device our product always writes to the storage in full database page size blocks and reads them back the same way so any device that can store information as large blocks of data can be supported by by our product. Yeah generally database our database is available for you know popular real-time operating systems such as free RTOS such as Azure RTREDX and there are others that you know we are supporting as well so if you have a different needs that needs attention we can definitely work with you and we are we have architected the products such that you know supporting new real-time operating systems it's not that complex. So there are other questions but we are running out of time so please simply send them to info at itia.com and we will answer them for you meanwhile please make sure you benefit from this workshop which has been very very successful and at the end we want to thank all of you for attending this session and hope you all greatly benefited from that. Thank you very much and have a wonderful days and evenings.