Ignition Community Live with Corso Systems
Ignition Around the World44 min video / 33 minute read
With Perspective geolocation data is easier to capture than ever before. Using the built-in map components you can build powerful interfaces for tracking people and assets.
We will discuss how to use the map components with the Perspective app for mobile device tracking, and third-party GPS units to geolocate people and devices without the Perspective app.
Use cases will include geofencing, to alert when devices are in a particular location, including pulling up a corresponding HMI screen for a technician at a remote location, tracking asset movement throughout the world using historized data sent via MQTT, integrating geolocation data with EXIF data from images to display images on the map at the correct coordinates, and tracking the spread of Covid-19 with a Perspective app.
Scott: Alrighty. My name is Scott Eamon, I'm with Corso Systems. Alex Marcy's on the call as well, we'll get into introductions in a minute. Just wanted to thank everybody for showing up. Alex, you wanna take it away?
Alex: Sounds good. Hey, everybody, Alex Marcy with Corso Systems. Today, we're gonna do our admission community live session. We titled it "Ignition Around the World." We're gonna really dive into Perspective, and the map component available in Perspective, some geolocation data from the Perspective app, some third-party hardware options, and show a bunch of cool things that we've built, and some things we've collaborated with in the larger community, Ignition Around the World. We've got Alex, Evan, and Scott from Corso Systems hosting today, with Amanda from Inductive. Thanks for having us on, and then we'll dive into a little bit about us first, before we get into all the fun stuff.
Scott: Yeah. So just a little bit about Corso Systems, if you guys don't know who we are. We're an ignition premier integrator. Don't really constrain ourselves to particular industries, but the focuses in the past have been food and beverage, consumer goods, and manufacturing. Done oil and gas, mining, and then some of the stuff that's pertinent today, intelligent transportation systems is the next step for us that we're opening up. We have been remote-based even prior to COVID, we find that it's been an advantage for us, we have people located all over the country. Helps us act as a nice and nimble integrator. When somebody needs help, we've got somebody close by to get it done.
Alex: So today we're gonna take Ignition around the world and talk about how geolocation data integrates with Perspective. Perspective is one of the first tools that has a native map component built in in the SCADA industry, and really opens up a lot of interesting capabilities for us. There were some tools, a map module from Chimera Systems and Vision that we've also used before. But this lets us do everything with mobile devices, and track data from mobile devices as well, which is pretty interesting. We're first gonna cover a couple of COVID-19-related items that we developed. We're gonna talk about geofencing, some distributed control systems, so things like pump stations for wastewater treatment facilities, some supply chain and logistics applications of geolocation data, and a 3,000 mile tour across the US that a couple of our employees took over the spring, right before everything started getting locked down.
Alex: So the first map tool that we're showing is a Perspective map component with a couple of charts that look at the daily cases of death totals related to COVID-19. This data comes from the Johns Hopkins data set that's available on GitHub. And it's updated, I believe, daily. So we're up to date with the latest data that they have on the site. It's generally reported at a county level, so whatever counties have reported data, like here, I'm from Reno, Nevada originally, so Washoe County. But they don't have the middle of nowhere counties in Nevada, but they do have Elko County in Las Vegas, Clark County. Can see a lot of hot spots here in the south that are popping up. If we zoom out, we can see how things look around the world. Each circle is a data point, with the number of cases there. And we're also tracking the daily cases and daily deaths down here, and we just have a lot of data that we're parsing, so it's a little bit slow on my computer with all these tabs open here.
Alex: We're also caching this data, so we don't have to load the data every time somebody opens the page. It'll basically be whoever opens the page the first time during the day. It'll refresh the cache and reload all the data, or reload the new data for the day. And that caching system is part of the Ignition Meta Tools library that we released on the Ignition Exchange that Andrew Geiger, on our team, is heading up and managing the direction forward. And there's a lot of interesting debugging tools in there, and caching tools. That's available for free on the Ignition Exchange, it's called Ignition Meta Tools. So that basically shows the common thing that everybody's looking at on the news, here's the COVID cases for the past days. It seemed like yesterday trended down for the first time in a week, I think we've gone down a couple days in a row from a high of 80,000 nearly, in America, which is astonishing. We thought this was a pretty interesting way to tie into the global pandemic with Ignition, and do something that's totally outside of manufacturing to show how you can use these tools to build interesting systems outside of a factory.
Alex: Next, really diving into the community aspect of Ignition Community Live. We're gonna show a COVID tracking app that is not necessarily as dire as the cases. We are working with Hannah Thoreson Godofsky, we ran into her on Twitter. And she had participated in flattening the curve, and promoting economic recovery through innovative technologies hackathon. And that was up in Alberta. And she had put together a supply chain shortages data set that she is scraping data from Twitter, and various news sources, and social media, and building a data set that tracks if there's food shortages, water shortages, toilet paper, hand sanitizer, medicine, if people have complained of travel restrictions, if there's any sort of grocery staples, meat, dairy, eggs.
Alex: We've basically... She's tabulating all that data, and built a data set that we pulled in. Actually, I've done hers on Google Maps, originally, and I thought, "This would just be a fun way to look at this data outside of Google Maps." Let me close this tab. So this gives us data all around the world. There's obviously not as much data if people aren't complaining about things. But basically, what we're doing is we're taking the data set that she has on Google Maps, parsing it as an XML file, importing that into a database, and then generating the icons on the map. Just so it looks pretty, we kept everything white on hers, it shows as red and orange depending on the severity, if it's a complaint, or if there's things that have started rationing, or are in more severe conditions than somebody just saying, "There's less toilet paper." If there's no toilet paper, it would show up in red.
Alex: We just left everything as white so it looks good on the background. But that was just an interesting way to tie into the community aspect, including what ICC, what the Ignition Cross Industry Collective last year, we had released some stuff on the Exchange through them. I think that's a great part of the Ignition world, is the opportunity for people to get together and do things like this. That this is one of the only technology providers that participates in that type of community involvement that we've seen, so we like to be a part of that and keep things going. So that ends our COVID tracking segment. Next, we're gonna get into geofencing. So as I mentioned last year at ICC, when the Ignition Exchange was first announced, we've worked with Travis Cox to put together a, what we called, factory fax, which was a drop-in replacement for graphics and Ignition to integrate with Rockwell PLCs. And that was announced during the build-a-thon.
Alex: And one thing that I thought that was interesting Travis mentioned, was he had to make a change a couple hours before the build-a-thon to push something out to the Exchange site, and he had to go back to the office 'cause it was geofenced, so you couldn't log into the system unless he was within the walls of the building. And we had worked a few years ago on some geofencing applications with mobile devices for more of a retail setting, and that's something that I found to be really interesting, but doesn't exist much in industry currently, because there's not a lot of good tools to manage the data once you have it. So since ICC last year put together a geofencing app with a couple members of our team, so here we have a webpage that has a map, and we can view different fences that we've set up, and select fences if we have the connection to our gateway. So each one of these is a polygon that we can draw. We also have circles, so that will basically be a point in the middle of a circle with a radius. You can also add those through this interface, or there's, on the mobile app itself, a way to add that from your mobile device specifically.
Alex: Let me refresh this, since we had a gateway alert a second ago. And this is all running on our development server, on a leno box in the cloud. We'll connect to that in a second. So here we have the mobile app. So I have a screenshot of actually looking at a location. So this'll be pulling the GPS data from your mobile device, and that'll give you your heading, and direction, and your actual latitude and longitude, shown by the blue dot here. And then, I created a fence, and if I'm inside the fence, it'll say, "You're inside Alex's house." It'll tell you where the nearest fence is, if you are not in a particular location at that point, It'll tell you at least where the nearest fence is, and say, "You can't fence me in." And then we can also, from the mobile app, enter a description. So if I was to go down the street to the hardware store, I could put in, "I'm at Home Depot," grab my latitude and longitude, and the radius, and add... There'll be a "save" button when you enter a description. That will save the point in the middle of the circle, create the radius, and then add that to the map so that you can see, "I'm at Home Depot," or I'm wherever I'm at.
Alex: You could also use this if you have multiple facilities, you can set up different points at each location, you could set up a polygon, and you can track if a technician is at a particular facility or site, and pull up the SCADA screens for that facility when they get there. Tying into the Ignition Maker Addition concept, the home automation things that Travis developed and released on the Exchange. You could set up geofences when you're leaving work, or when you're approaching home, to turn on your lights, or adjust the temperature of your HVAC unit. You could also set an alert if your garage door is opened when you're not home, or any sort of home automation integrations you'd wanna do based on location.
Alex: You can get pretty involved with geofencing, and this usually is just generic algorithms for geofencing applications. So it's mostly a lot of trigonometry and checking bounding boxes and things. It's not super complex to develop the location tracking, and then all of this uses the native perspective app, so you're pulling in your GPS coordinates from a mobile device, and that works well if you have a mobile device like an iPhone or an Android phone or an iPad.
Alex: If you don't have that, we can also integrate GPS data from non-mobile devices that are not using the mobile app. Here we have... For some of our intelligent transportation system applications, put together a little box that gives us a cell connection and a GPS antenna with a physical antenna that we would mount either to a shipping container or to a vehicle. Depending on what we're trying to track that will send GPS coordinates through the cell signal to our ignition server, and then we can pull in the data from there, the same way as if we were doing it from the native app, but we don't have to have the native app. I see a question…
Alex: Yeah. Yes, what the geofence does. He says his question is answered now. Geofencing is just putting a boundary around a particular location to tell if somebody is inside that boundary. A lot of times in retail settings, they'll do geofencing on the store and you can track where people are within a grocery store, how much time they spend at a particular end cap or a particular part of the store. We're applying that more to industry to see when somebody's at a particular facility.
Alex: We've also used similar concepts for things like life safety, for tracking if people are inside or outside of a building during a fire alarm. And you can also track the location of people in the building. So if somebody didn't leave the building during a fire, you could have their mobile device and see where they're actually at in the plant so that you can easily find them. And then you can also track where everybody is, so you can do check-ins and master points and things pretty easily.
Alex: I just got Scott Corbett asked, "What is the level of accuracy for geofencing?" That would be dependent on your GPS hardware, generally the consumer grade hardwares within a three-foot point. So it'll track you within three feet, so it's not necessarily inside or outside this door, it would be, "I'm in this room or that room." You can get more expensive hardware that gets more accurate than that, but I think their mobile devices are typically around three feet. And then some of the Garmin stuff and then, I'm sure there's military things that get you down to centimeters.
Alex: And then you can also... If you don't care how granular it is, you can set those limits higher so that you're sending less data back and forth. So it's just an example of how we can get data from mobile devices and like a phone, and then this is still a mobile device, but a non-phone signal that would use the native app. And again, things like this would be good for shipping and logistics applications. So you could track a shipping container traveling from China to the US, or track shipments throughout the country, and open our supply chain tab as well, I forgot to open that.
Alex: Let me figure out the name of the project. Projects... Supply chain... There we go. So this is just a quick demo that we threw together to show shipping between different locations. So here we have what we would set up as a warehouse here in the Portland area somewhere up in Chicago. Somewhere down in Temecula. Then we can view these lines, these would be shipping routes that we would have set up as a known route that we're gonna ship from Portland to Chicago often. So we would set that up and we can see what's enroute between those two locations.
Alex: So here we have some inductors in the transformer, what order they came from, if we were doing UPS, DHL, FedEx tracking, we could integrate with their tracking number system and alerts through that to say the part's ready for shipment, it's been picked up and it's enroute, it arrived at whatever facility. If it's just a generic shipping company or a trucking company, we could work with them to come up with how they wanna do the alerting. If they don't have a tracking system, we can also do... Put GPS sensors in a box or in a shipping container and track that through…
Alex: The routes that it's taking, and then we could set up alerts when things arrive. Alert the shipping person when they need to go to the shipping desk and pick something up. If things are gonna be delayed, or if things are needed for construction projects, or for some part of a project to take place, get it off really granular alerts based on that. One thing that... To kind of go beyond just the geolocation data, is, "Hey, we're shipping a big transformer, or a generator, from one point to another," maybe we have an inspection sheet when it arrives that we want somebody to go through. So just, for this example, we have a one-line diagram for an electrical system for a data center construction project. So if they have a diesel generator coming in, we can also pull up work order instructions, or manuals, or drawings for that equipment, and we can tie that to the order so we know exactly what the part numbers are that we're coming up with. So we could pull up manuals for everything, we could pull up drawings that are related to that if we're looking at construction.
Alex: If we're checking in particular lot numbers, or shipments, we can get the quality control data for that so you can validate things as they come in. So just allows you to... We can go in and look and see what's in stock in this warehouse, what are the manuals for that, what documentation is involved, were there any signatures or things that we needed to get. Take it a step beyond just the map data. And then we could set up shipments all around the world, and set up routes wherever we need to on that. It's an interesting approach to something that isn't in a factory, but uses SCADA tools to build interesting technology for those sectors. Did you want to chime in, Scott?
Scott: No, I'm just highlighting the fact that it's... How much of an all-in-one solution it can be. It's not just a logistics application. You get all those features within one application rather than having to have people go back and forth between different areas, or desks, or whatever.
Alex: Yep. And again, this is all built in Perspective, so it would show up on a mobile device, or the mobile app, just the same as it shows up here in the browser. Which... We had a customer recently, they're looking at integrating Perspective into their operation. And one of their questions they had was, "We also need a native mobile app developed for this that wasn't part of your price for development." And we said, "Well, it doesn't need to be because it's already native to the platform. Once we develop the screens, they show up on the app, as well, with minimal tweaking required." So this screen is going back to the wastewater example for pump stations. This shows us a few pump stations on a map, and how we can integrate with actual live process data. So if a pump station is running, and everything's normal, we could be highlighted in green. If there's an alarm, or an issue, or maintenance is happening, we could be highlighted in red.
Alex: If it's offline, and everything's okay, it's supposed to be offline, we could gray it out. We could also make things visible and hidden based on their state. So if it's running, don't show it on the map. If it's offline, or there's an issue, make it flash, or make it a bigger circle than everything else to draw attention to it. Really get into some UI questions and design examples there, and figure out how it works best for your operators. But this is just an example of showing three different locations on a map, and then you can click on that, and get a dashboard view of what's happening at that pump station. We can see the various pumps that are running, grab any data off of that. If we wanna look at alarms, we could pull up an alarm screen for this site. We can really build whatever we need based on what we need for this pump station, and then have a map of everything visible on the screen.
Alex: If we're running a wastewater system that cares about overflow events for the stormwater system, we could also start tracking the sensors in the field to detect flooding events, and we could show, on the map, "Here's where the flood is coming in from," and start to track that on the map. We could also integrate weather data, so we could actually track a storm front moving in and build some analytics to track where we would expect things to start occurring next, so we could start deploying resources as needed to mitigate any disasters. And get into just however... Whatever level of detail we wanna get into for utilizing map data, and weather data, Or, we're getting, in Nevada in the fall, it's forest fire season, you could track forest fire information and maybe tie that into something like the COVID Tracking Shortages app to see where they would expect resources to need to go next. And you can get pretty granular with this type of stuff.
Scott: And then you've got all sorts of flexibility on those alerts, as well, in terms of how you wanna show them. You can do whatever you want, which is nice.
Alex: So, as an example, this would be applicable to a lot of different industries that Ignition is already in, and expanding the scope of what a lot of people might typically use Ignition for, which would be process control and analytics. This bridges the gap into the real world, and as far as geolocation data, and tracking where things are, and when they're happening, just like we saw with everything that we've looked at so far.
Alex: So to kind of tie everything together and wrap up geolocation data, we're gonna dive into our tour of the US. So a little background, I had between two and three employees out on a project in Southern California for most of 2019, and then a couple of employees stayed over to finish the job and left in early March of 2020. And one of the employees is a big train enthusiast, and at one point it was mentioned that one of his life dream bucket list items was to an Amtrak train across the country. And we've looked, and at the time it was a little bit cheaper to take Amtrak and get a full room than it was to fly from Southern California to New Jersey, out where he lives.
Alex: So we booked an Amtrak car for the two people that were still out there, and figured, since we're doing it, why not have fun with it? Take an Opto22 groov EPIC processor with a GPS antenna, route the data through a MQTT and set that up as a spark plug B-capable device, dump the data into our ignition server and then build a map that follows their journey. And then they started sending pictures on Slack at the various stops that they had made, and it was like, well, we can get time and location data from the pictures, why don't we parse that out of the images themselves and put those on the map as well? 'Cause once we set the map up, it was like, well, there's not a lot else to do beyond tracking the line.
Alex: So I sat in there and put the pictures together. While they were taking the journey in real-time, we saw the line-update as we would get data from the sensor. Sometimes it was delayed if they were completely out of any cell range in the middle of Kansas for quite a while. And sometimes in the mountains going through Colorado. So we would sometimes get fits and spurts of data when it was available, but then once they got through in Chicago and they ended up in DC, we basically got real-time data. I think we sent it every minute or so. And then we also pulled in the image data when they would stop, there were a lot more stops early on in the journey, and when they were getting set up…
Alex: An interesting one. So they just wired everything up in the room that they were gonna... Probably broke a few OSHA violations, but I don't worry about that. Here's one that shows everything wired up. They might be heading here. No, that's pulling up. And then as they went through, there weren't as many stops. But we were able to get some cool spots while they were on the train itself as well. I don't know exactly where this is, but it's somewhere in the middle of Arizona or New Mexico.
Alex: Cool desert picture. Some clouds. And some of the rotation's off depending... I didn't parse all of that out in the files, but... Andrew holds his phone upside down because he's left-handed. [chuckle] Here's a picture of them stopped at the station, grabbing a picture of the train. So we thought that was a pretty fun thing. They stopped at the Opto22 offices while they were out there, grabbed a Groov Epic from Benson and everybody over there. And I think Benson gave us his GPS unit to tie into it, and then we had that integrated to send data over, spark plug B to ignition. Historized everything and then populated that on the map. And then just because it's not in real time, I also set up a slider here on the screen that we could slide to different parts in the journey. The left is when they started, the right is when they ended. So we can see the line grow, and this is what we would watch as they were going through the country. And then I met up with them in Chicago and we had lunch, and then I picked them up in DC when they arrived there.
Alex: And I thought it was kind of a fun project. And it's something a little bit out of the box as far as a technology is concerned, but I think tracking a train across the country is no different than tracking shipping and logistics information. Pulling all of this data together, you could even do inspections of well sites for an oil and gas company and take pictures, and time-stamp those and put them on the map as well. It would be great for training purposes. There's really a lot of capability you can get from systems like this.
Alex: Once you understand how it all works and understand latitude and longitude and maybe a little bit of the map involved, it's not a terribly complicated process to get things like this set up. And most of it's just how you wanna structure your data, put it in a database, query it in, and then depending on the data set, you may need to get some of the cashing type things involved to speed up performance. But we're really excited about the capabilities of these tools and the ignition and perspective moving forward and... Pretty exciting. And then we have the Geofencing app in review. We were originally gonna do our community-live in early August, so we submitted it assuming it would be approved by then, and then we pushed the date up a little bit. But once that gets pushed through the exchange review process, we'll send out an alert for that. And then just to plug they send out the email, I think last week, they had the ignition exchange contest, or tournament, or whatever you want to call it.
Alex: Between now and ICC anything you release to the Exchange, they're gonna have some interesting stuff at ICC for some of the best submissions. And that's something that we've had good results from, and sparked some good conversations online about things that we've released, and it's been a pretty exciting tool for us to use. And we've definitely used some of the things that have been released by the community on there to help some of our demos and projects, as well. And I think that's a really good way for everybody to get involved, and be part of the Ignition community.
Alex: I think that pretty well covers all of our demos, so.
Scott: Alex, thank you for that, that was really nice, super thorough. Really highlighting on not just the collaborative aspect of Ignition, and how we can use the community to drive things forward, but also the power of Ignition and Perspective, and how well it lends itself to mobile applications. But yeah, that was great. Thanks for showing up, Benson. Good to see you.
Alex: Yeah, thanks for all the help, Benson, that was a fun few days. I was shocked how quickly you can get across the country in a train.
Scott: So we got another question, Alex. Can you explain how to interface to non-cellular GPSs?
Alex: Yeah. So I guess in that case, that would be something, maybe like a Garmin unit, that grabs your GPS data. A lot of those types of units will give you a GPX, or a KML file. So KML is... I don't know what "KML" stands for, but it's basically an XML representation of geolocation data. That's how data is passed back and forth on Google Maps Integrations. So you can parse that data in from that file, and the GPX file is also an XML file. And we can... I could probably put the libraries that we put together for that in the geofence app, to read that data in, 'cause we used that for the COVID Shortage Tracking. And then as just a general proof of concept, we used a Garmin device to pull data in, just to track somebody walking around town. So you'd basically parse those in as XML files. And we used... I used the ElementTree, that's "ElementTree", but all one word, Python library to pull in the XML data.
Alex: If you had a unit like that that had a serial connection, that would output data in real time, you could get that to work with Ignition in real time without a cell connection. If it didn't have a serial, like if it's a Garmin unit that you would be expected to put in your pocket and carry around with you, you would do that after the fact. And then, you wouldn't have real time data, but you can pull in all that information. And if you have questions, or wanna dive into how we did that offline, shoot me an email, or go to our website and reach out, and we can do that. And then I'll also put together a blog post about it, as just part of a follow-up to this. 'Cause it's not a difficult problem to solve, but making sure you get all the formatting, and parsing the XML components correctly can be a little bit of a... The coffer has to be able to triangulate from WAP versus GPS. I would assume so, 'cause a lot of that would just be parsing out the data and then basically marrying that on the back end, and then figuring out how you would want to display that.
Alex: Wireless access point... Oh, okay, yeah. So if we're looking at... I know Seaman's has some hardware where they track things based on RFID tags. And if you were to track things like that in a facility, based on cell signals, or, I guess, wireless signals on the access points, it would just be figuring out how you translate your data that tells you where people are into coordinates. So as long as you mapped out your building, and could pull that data in in some format that we could look at in Ignition, or in Python I guess, in this case, it would be pretty easy to do the math to coordinate that. And then you could track things in the building. 'Cause GPS may not work inside of a building, and may not give you the resolution you need. So yeah, you could definitely do that, it would just be a question of, "How do we get that data into a place that we can parse it out?" And then do some transforms on it to correlate that, so we can put it on the map 'cause the map uses latitude and longitude data, specifically. What about wearables, too? Yeah, I think wearables would be making the hardware that just looks a little bit different if you were to... When I was doing that the Particle Boron box that I showed in our blog post, they just carried it around.
Alex: So if you... And a lot of the hardware that's available from Adafruit, and SparkFun, and Digi-Key, that's more... I'll say maker-focused hardware, it's kind of geared towards wearables. So it would just be getting a GPS sensor that you put in a wearable device, whether that's in clothing, or on a hat, or is something you carry around in your pocket. That's conceptually the same thing as we did with that cell unit. And you could really use the same code for that, 'cause all that that cares about is the latitude and longitude, and if you want the elevation and heading, I think that would be pretty easy to integrate.
Alex: What sort of pushback have we gotten from users who may find the geo-location data to be intrusive? I would say so far we haven't really received any. Most of this would be... At least what we're doing would be done on company-provided hardware, so we're not necessarily tracking people in a way that they are... Not that people are being tracked all the time, but if we know when people are in a building based on if they're scanning in through a security door or something, it just gives them some additional granularity. I'm sure there could be some operators or staff that might be upset by it, but that becomes more of a cultural thing, and training and education on why these things are important, and I think a lot of times now the general consensus is people feel like they're just gonna be tracked anyway, different car hardware and things that... You can even get the little blocks you plug in for tracking for your insurance company to track your speed. So I think we're... Not necessarily, at least for the approaches that we're taking, tracking people in a new way. I'm just providing granularity beyond, "You're in this building or not in this building, it's where are you at in this building," or what not. And then, we deal with the same cultural shift doing MES projects, or even automation in general a lot of times, so that just becomes part of that overall discussion of, "We're gonna change how we're doing things, so let's adjust the culture here."
Scott: Just to look back at these questions and kinda summarize them, so it looks like they're looking at... Looking at iWatches and such, and we could take all those iWatches, all that data from all the employees within a certain factory and definitely map it and show a history of who touched who at what point, do a contact tracing, track and trace, and all that within the building as well if you're looking for COVID tracking pretty easily because all those units are sending out information. They're sending it out, we can capture it and we can map it.
Alex: Yeah. No, no, Bob, to lecture how to follow up, if you send out what GPS unit you're looking at, as far as getting data out of that, I could do a quick search into that and see what that approach would look like. Yeah, and then the Apple watches, that would... Again, it would just be how do we pull the data from the wireless access points and get that into Ignition, and then the transforms would be pretty easy to figure out between the two, and then we could display that on the map once we convert to latitude and longitude. It would just be within the building, and even in the mobile app, it gives you... I don't know how accurate it is in terms of, "Am I actually 10 decimal places to this particular point, and if I move one centimeter over, does it track that?" It seems pretty granular, but I don't know that I would trust that for a life and death situation, and I think that's why people say the three feet is generally acceptable for consumer-grade hardware. But, yeah, definitely the contact tracing, and I think the wireless access point would be better than GPS, 'cause you could get a little more granularity based on the wireless signals and triangulation inside of a building than you would with GPS 'cause you could be... If two people are three feet away from one another, you could see them as six or depending on, I guess, where it reads on the GPS signal, so that may not meet the social distancing requirements.
Alex: Yeah, we're happy to take a look at whatever you're sending out or what you're looking at hardware-wise. And at least give you the approach we would take on that, 'cause I think... I think there's a lot of benefit to this technology, and it's really easy to use in Ignition now so I think it's a cool conclusion they're taking advantage of…
Scott: Bob and Doug we will follow up with you guys after this as well, 'cause it looks like you guys have a specific, specific question, and I think we've answered it so far, but I think we can get more detailed with you guys as a potential solution going forward.
Alex: Yeah, and then for anybody who has questions that aren't in the box or anybody in the future, just reach out to us at corsosystems.com and we can take you through anything we've built. We're not shy about sharing a lot of this and as we move forward with things like this, we'll put quite a lot of this out on The Exchange. We've already released the COVID tracking app on The Exchange that has all the meta-tools, pieces in it as well for the caching. So keep your eyes peeled for The Exchange for a lot of this stuff coming out and... I just appreciate everybody taking the time to sit down with us today and go through the products. I've been excited about Ignition since I started working with it in 2009, back before it was called Ignition. [chuckle] So it's been an exciting ride and it's a great product, and it seems like we can do more and more cool stuff as time goes on. So, thanks everybody for taking the time and feel free to reach out if you have any questions.