Mobile Dev, Office365, Power Apps

Badge printing with Power Apps – Checking the printing requirements of the chosen printer

This is part of the series Badge printing and more with Power Apps

Introduction

I have been developing a visitor registration app for the company I work. Since we already have Office365 licenses and we are heavily using SharePoint, Teams and other Microsoft products, I thought, why not using Power Apps to build a kiosk mobile app which will run on a tablet in the office. Kiosk as in always on, just sitting in the office lobby. Secured with a lock of course, what did you think? 🙂
The big advantage of Power Apps is that the same app will be available for all the coworkers on web or on their mobile phones. Build once, run it everywhere…

Badge printing

Everything went well, the app was running and visitors were successfully checked in and out. But the killer feature was missing – badge printing. All the other important visitor management solutions offered this feature.

The chosen printer

After some research, I went with the Brother QL-820NWB

  • N stands for Network connection
  • W stands for Wireless connection
  • B for Bluetooth connection

The specifications were great, having all the connectivity options already available. Unfortunately with Power Apps you cannot use the native features of the device like Bluetooth connectivity to send a print job to the printer.

Brother provides quite an extensive documentation for developers and a SDK, which again, wasn’t useful in our case.

So I had to find a workaround to get the Power Apps app to communicate with the printer.

The solution was to use the ESC/P commands to send the template and the contents to the printer.
Perfect, the tablet the app was running on was connected to the office Wifi. The printer was connected to the same network via cable. The devices were sitting right next to each other. They should be getting along fine, right?
Wrong! 🙂 Because Power Apps runs in the cloud context (Office 365) and it doesn’t care about your local network.

So, I had to find the way to send the print job to the printer…

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.