{"id":14821,"date":"2019-10-28T00:00:00","date_gmt":"2019-10-28T00:00:00","guid":{"rendered":"https:\/\/www.dmcinfo.com\/our-work\/package-delivery-kiosk-system\/"},"modified":"2025-07-07T16:56:01","modified_gmt":"2025-07-07T16:56:01","slug":"package-delivery-kiosk-system","status":"publish","type":"our_work","link":"https:\/\/www.dmcinfo.com\/our-work\/package-delivery-kiosk-system\/","title":{"rendered":"Package Delivery Kiosk System"},"content":{"rendered":"\n<p><span style=\"font-size:130%;\"><strong>Kiosk Controller Software<\/strong><\/span><\/p>\n\n\n\n<p>The Kiosk Controller Software provides a touch screen user interface for interaction with the kiosk. Different on-screen workflows are initiated based on the type of user logging in. Additionally, transaction flows are supported, which rely on single-use codes instead of user accounts.<\/p>\n\n\n\n<p>The software sends and receives data over a WebSocket using MQTT. Data is also persisted locally in an SQLite database allowing for offline functionality.<\/p>\n\n\n\n<p>Furthermore, the software manages multiple hardware devices, including a camera for security, a barcode scanner for easy login capability, and locker modules for storing packages.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/cdn.dmcinfo.com\/wp-content\/uploads\/2025\/05\/27165747\/select-locker.png\" alt=\"select locker\"\/><\/figure>\n\n\n\n<p><span style=\"font-size:130%;\"><strong>Administrative Portal<\/strong><\/span><\/p>\n\n\n\n<p>DMC developed a front-end portal for managing clients and kiosks. The portal makes it simple to assign newly created kiosks to clients, manage user access for both the portal and kiosks and provision API Keys and webhooks to allow clients to integrate with the system programmatically. It also provides the ability to group sets of users and kiosks for easy bulk-management and to view a combined dashboard summarizing kiosk activity.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/cdn.dmcinfo.com\/wp-content\/uploads\/2025\/05\/27165746\/administrative-portal.png\" alt=\"administrative portal \"\/><\/figure>\n\n\n\n<p><span style=\"font-size:130%;\"><strong>Locker Controller Firmware<\/strong><\/span><\/p>\n\n\n\n<p>DMC <a href=\"https:\/\/www.dmcinfo.com\/our-work\/configurable-locker-system-firmware-development\/\">developed the firmware for custom PCBs<\/a> designed to control the locker modules. The firmware communicates with the kiosk controller software using the Modbus protocol over TCP and allows it to command lockers to open on demand. The status of each door is also reported back as doors are physically opened and closed.<\/p>\n\n\n\n<p>Learn more about DMC&#8217;s <a href=\"\/services\/application-development\">Application Development<\/a>&nbsp;and <a href=\"\/services\/embedded-development-and-embedded-programming\">Embedded Development<\/a> solutions.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Kiosk Controller Software The Kiosk Controller Software provides a touch screen user interface for interaction with the kiosk. Different on-screen workflows are initiated based on the type of user logging in. Additionally, transaction flows are supported, which rely on single-use codes instead of user accounts. The software sends and receives data over a WebSocket using [&hellip;]<\/p>\n","protected":false},"author":8,"featured_media":14818,"template":"","meta":{"customer":"Florence","summary":"<p>DMC developed multiple components for controlling and managing a system of package delivery kiosks.<\/p>\r\n","description":"","customer_benefits":"<ul>\r\n <li><strong>Comprehensive: <\/strong>The entire package lifecycle, from delivery by agents to pick-up by customers, is managed by the application without the need for human assistance, allowing for 24\/7 usage<\/li>\r\n <li><strong>Flexible: <\/strong>The software that the system is built upon was designed with the flexibility to be adapted to multiple markets and usage scenarios easily<\/li>\r\n <li><strong>Configurable<\/strong>: Many kiosk settings, including brand colors and images, can be updated through the web portal by administrators.<\/li>\r\n <li><strong>Maintainable: <\/strong>Detailed logs and remote access allow for easy diagnosis and correction of issues<\/li>\r\n<\/ul>\r\n","components_used":"<ul>\r\n <li>Kiosk Controller Software\r\n <ul style=\"list-style-type:circle\">\r\n  <li>Embedded Linux<\/li>\r\n  <li>Qt \/ PyQt \/ QML<\/li>\r\n  <li>Python<\/li>\r\n  <li>SQLite<\/li>\r\n  <li>Serial and USB Device Communication<\/li>\r\n  <li>AWS IoT \/ MQTT<\/li>\r\n <\/ul>\r\n <\/li>\r\n <li>Administrative Portal\r\n <ul style=\"list-style-type:circle\">\r\n  <li>React \/ Typescript \/ HTML \/ SASS<\/li>\r\n  <li>AWS S3 \/ CloudFront<\/li>\r\n <\/ul>\r\n <\/li>\r\n <li>Locker Control Firmware\r\n <ul style=\"list-style-type:circle\">\r\n  <li>PIC Microcontrollers<\/li>\r\n  <li>C<\/li>\r\n  <li>TCP \/ UDP<\/li>\r\n  <li>Modbus<\/li>\r\n <\/ul>\r\n <\/li>\r\n<\/ul>\r\n","project":"Kiosk system development","author":"Lyndon Spozhnik","notes":""},"work_category":[683,721,686,708,697,722,715],"class_list":["post-14821","our_work","type-our_work","status-publish","has-post-thumbnail","hentry","work_category-application-development","work_category-azure","work_category-consumer-goods","work_category-digital-workplace-solutions","work_category-embedded-development-programming","work_category-user-interface-design","work_category-web-application-development"],"yoast_head":"<title>Package Delivery Kiosk System | DMC, Inc.<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.dmcinfo.com\/our-work\/package-delivery-kiosk-system\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Package Delivery Kiosk System\" \/>\n<meta property=\"og:description\" content=\"Kiosk Controller Software The Kiosk Controller Software provides a touch screen user interface for interaction with the kiosk. Different on-screen workflows are initiated based on the type of user logging in. Additionally, transaction flows are supported, which rely on single-use codes instead of user accounts. The software sends and receives data over a WebSocket using [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.dmcinfo.com\/our-work\/package-delivery-kiosk-system\/\" \/>\n<meta property=\"og:site_name\" content=\"DMC, Inc.\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/pages\/DMC-Inc\/107982009242929\" \/>\n<meta property=\"article:modified_time\" content=\"2025-07-07T16:56:01+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/cdn.dmcinfo.com\/wp-content\/uploads\/2025\/05\/27165747\/unnamed-file-90.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1400\" \/>\n\t<meta property=\"og:image:height\" content=\"500\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.dmcinfo.com\/our-work\/package-delivery-kiosk-system\/\",\"url\":\"https:\/\/www.dmcinfo.com\/our-work\/package-delivery-kiosk-system\/\",\"name\":\"Package Delivery Kiosk System | DMC, Inc.\",\"isPartOf\":{\"@id\":\"https:\/\/www.dmcinfo.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.dmcinfo.com\/our-work\/package-delivery-kiosk-system\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.dmcinfo.com\/our-work\/package-delivery-kiosk-system\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/cdn.dmcinfo.com\/wp-content\/uploads\/2025\/05\/27165747\/unnamed-file-90.png\",\"datePublished\":\"2019-10-28T00:00:00+00:00\",\"dateModified\":\"2025-07-07T16:56:01+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/www.dmcinfo.com\/our-work\/package-delivery-kiosk-system\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.dmcinfo.com\/our-work\/package-delivery-kiosk-system\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.dmcinfo.com\/our-work\/package-delivery-kiosk-system\/#primaryimage\",\"url\":\"https:\/\/cdn.dmcinfo.com\/wp-content\/uploads\/2025\/05\/27165747\/unnamed-file-90.png\",\"contentUrl\":\"https:\/\/cdn.dmcinfo.com\/wp-content\/uploads\/2025\/05\/27165747\/unnamed-file-90.png\",\"width\":1400,\"height\":500},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.dmcinfo.com\/our-work\/package-delivery-kiosk-system\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Work\",\"item\":\"https:\/\/www.dmcinfo.com\/our-work\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Package Delivery Kiosk System\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.dmcinfo.com\/#website\",\"url\":\"https:\/\/www.dmcinfo.com\/\",\"name\":\"DMC, Inc.\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/www.dmcinfo.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.dmcinfo.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.dmcinfo.com\/#organization\",\"name\":\"DMC, Inc.\",\"url\":\"https:\/\/www.dmcinfo.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.dmcinfo.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/cdn.dmcinfo.com\/wp-content\/uploads\/2025\/05\/27171146\/dmc-logo-1.png\",\"contentUrl\":\"https:\/\/cdn.dmcinfo.com\/wp-content\/uploads\/2025\/05\/27171146\/dmc-logo-1.png\",\"width\":418,\"height\":167,\"caption\":\"DMC, Inc.\"},\"image\":{\"@id\":\"https:\/\/www.dmcinfo.com\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/pages\/DMC-Inc\/107982009242929\",\"https:\/\/www.instagram.com\/dmcengineering\",\"https:\/\/www.youtube.com\/DMCEngineering\",\"https:\/\/www.linkedin.com\/company\/dmc-engineering\"]}]}<\/script>","yoast_head_json":{"title":"Package Delivery Kiosk System | DMC, Inc.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.dmcinfo.com\/our-work\/package-delivery-kiosk-system\/","og_locale":"en_US","og_type":"article","og_title":"Package Delivery Kiosk System","og_description":"Kiosk Controller Software The Kiosk Controller Software provides a touch screen user interface for interaction with the kiosk. Different on-screen workflows are initiated based on the type of user logging in. Additionally, transaction flows are supported, which rely on single-use codes instead of user accounts. The software sends and receives data over a WebSocket using [&hellip;]","og_url":"https:\/\/www.dmcinfo.com\/our-work\/package-delivery-kiosk-system\/","og_site_name":"DMC, Inc.","article_publisher":"https:\/\/www.facebook.com\/pages\/DMC-Inc\/107982009242929","article_modified_time":"2025-07-07T16:56:01+00:00","og_image":[{"width":1400,"height":500,"url":"https:\/\/cdn.dmcinfo.com\/wp-content\/uploads\/2025\/05\/27165747\/unnamed-file-90.png","type":"image\/png"}],"twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.dmcinfo.com\/our-work\/package-delivery-kiosk-system\/","url":"https:\/\/www.dmcinfo.com\/our-work\/package-delivery-kiosk-system\/","name":"Package Delivery Kiosk System | DMC, Inc.","isPartOf":{"@id":"https:\/\/www.dmcinfo.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.dmcinfo.com\/our-work\/package-delivery-kiosk-system\/#primaryimage"},"image":{"@id":"https:\/\/www.dmcinfo.com\/our-work\/package-delivery-kiosk-system\/#primaryimage"},"thumbnailUrl":"https:\/\/cdn.dmcinfo.com\/wp-content\/uploads\/2025\/05\/27165747\/unnamed-file-90.png","datePublished":"2019-10-28T00:00:00+00:00","dateModified":"2025-07-07T16:56:01+00:00","breadcrumb":{"@id":"https:\/\/www.dmcinfo.com\/our-work\/package-delivery-kiosk-system\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.dmcinfo.com\/our-work\/package-delivery-kiosk-system\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.dmcinfo.com\/our-work\/package-delivery-kiosk-system\/#primaryimage","url":"https:\/\/cdn.dmcinfo.com\/wp-content\/uploads\/2025\/05\/27165747\/unnamed-file-90.png","contentUrl":"https:\/\/cdn.dmcinfo.com\/wp-content\/uploads\/2025\/05\/27165747\/unnamed-file-90.png","width":1400,"height":500},{"@type":"BreadcrumbList","@id":"https:\/\/www.dmcinfo.com\/our-work\/package-delivery-kiosk-system\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Work","item":"https:\/\/www.dmcinfo.com\/our-work\/"},{"@type":"ListItem","position":2,"name":"Package Delivery Kiosk System"}]},{"@type":"WebSite","@id":"https:\/\/www.dmcinfo.com\/#website","url":"https:\/\/www.dmcinfo.com\/","name":"DMC, Inc.","description":"","publisher":{"@id":"https:\/\/www.dmcinfo.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.dmcinfo.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.dmcinfo.com\/#organization","name":"DMC, Inc.","url":"https:\/\/www.dmcinfo.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.dmcinfo.com\/#\/schema\/logo\/image\/","url":"https:\/\/cdn.dmcinfo.com\/wp-content\/uploads\/2025\/05\/27171146\/dmc-logo-1.png","contentUrl":"https:\/\/cdn.dmcinfo.com\/wp-content\/uploads\/2025\/05\/27171146\/dmc-logo-1.png","width":418,"height":167,"caption":"DMC, Inc."},"image":{"@id":"https:\/\/www.dmcinfo.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/pages\/DMC-Inc\/107982009242929","https:\/\/www.instagram.com\/dmcengineering","https:\/\/www.youtube.com\/DMCEngineering","https:\/\/www.linkedin.com\/company\/dmc-engineering"]}]}},"_links":{"self":[{"href":"https:\/\/www.dmcinfo.com\/wp-json\/wp\/v2\/our_work\/14821","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.dmcinfo.com\/wp-json\/wp\/v2\/our_work"}],"about":[{"href":"https:\/\/www.dmcinfo.com\/wp-json\/wp\/v2\/types\/our_work"}],"author":[{"embeddable":true,"href":"https:\/\/www.dmcinfo.com\/wp-json\/wp\/v2\/users\/8"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.dmcinfo.com\/wp-json\/wp\/v2\/media\/14818"}],"wp:attachment":[{"href":"https:\/\/www.dmcinfo.com\/wp-json\/wp\/v2\/media?parent=14821"}],"wp:term":[{"taxonomy":"work_category","embeddable":true,"href":"https:\/\/www.dmcinfo.com\/wp-json\/wp\/v2\/work_category?post=14821"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}