iPad/tablet as a slave (UP Board)

Hi all,

For our project, we want to use an iPad/tablet as a slave. More specific, we’re building a kind-of POS system, and want to use an iPad/tablet for customers to register itself in the system. Also for more features like customer identifying him/herself.

Now we’re investigating the best way to do this. Our top choice so far is creating an Wi-Fi access point on the UP Board with a USB dongle, because we’d like to use the built-in Wi-Fi chip for connecting to the internet. The iPad can connect to the access point and register itself in the system (little bit of security). But if someone has any tips on how they’d to it or how they’ve done it, we’re really interested to know!

My second question, I saw the page regarding Wi-Fi dongles from Balena (https://www.balena.io/docs/reference/hardware/wifi-dongles/), but it seems like this page is focussing on the RPI, and not other Balena devices like the UP Squared (correct me if I’m wrong). We’d like to use a Wi-Fi dongle that relatively new, so that we don’t have problems in the nearby future that the Wi-Fi dongle is being discontinued. We have some experience with TP-Link that just discontinues a Wi-Fi dongle or creating a new version with a different chipset and driver. We’d like to avoid that obviously. So, does someone have any suggestions on a stable Wi-Fi dongle? (preferably as small as possible)

Thanks in advance!

Hi,

It depends on how your system should work. For example should the tablets also have internet access? In which case you would have to route between the tablet WiFi and the internet WiFi. It would also depend on the location where the system is deployed, if there is a big area to cover for the tablets, the AP from the WiFi might not cover the whole area, but you would like to rely on the existing infrastructure to have the tablet talk to your UP Board device. If you just want to use it for an initial registration, you could also “pair” the devices by sharing a secret using QR codes for example (an encoded local URL to your UP Board, including a one time token). But it depends a lot on your use case and how you want to build the user story for registering a tablet.

wrt the Wi-Fi dongle, I’ll ping someone from the device team for some advice.

Cheers,

Hi,

Sorry we don’t have any suggestions about stable Wi-Fi dongles, especially for AP mode. Customers which also create AP don’t use Wi-Fi dongles, but Wi-Fi devices with the chipsets rtl8188eus and rtl8192cu, which they seem to have good experience with. Other then that it will require testing.

Cheers,

Hi @afitzek,

Thanks for your response!

The use case for the tablet is just like you have at some stores to get a store card which gives you discounts. The UP Board and the tablet are usually close to each other. So Wi-Fi is the way to go I think. But I’ve posted the question to be sure. I like the pairing to the UP Board by QR code, so thanks for that! Any suggestions on how to create the connection with the Wi-Fi? I think just an access point with WPA2 security, but it’d be nice to have some “unique” identifying method for each tablet, but that can also be done on the UP Board after connecting to the access point instead of before.

I’m going to do some research about Wi-Fi dongles with those chipsets. I’m familiar with them, because we use the chipsets in another product (with the Raspberry Pi). But those chipsets are fairly old and use old Wi-Fi techniques, so it’s too bad no newer chipsets are supported for now (I know this is more a Linux issue than Balena :slight_smile: )

Thanks for your response and time!

Hi,

I think the easiest option could be to make something like this: https://qifi.org/
The data format for the QR code in that case is described here: https://github.com/zxing/zxing/wiki/Barcode-Contents#wi-fi-network-config-android-ios-11 and it seems to be supported by Android and iOS.

I’m not sure if hostapd already supports this, or if so we already have a recent enough version of it, but another option would be to try to implement a standard like DPP (https://www.wi-fi.org/downloads-registered-guest/Device_Provisioning_Protocol_Specification_v1.1.pdf/35330). DPP defines how to boot strap Wi-Fi access via QR-Codes, BLE or NFC and I think this should become the successor of WPS for WPA3. But it also works for WPA2. There seems to be a description for DPP and hostapd in the git for hostapd. (https://w1.fi/cgit/hostap/plain/wpa_supplicant/README-DPP). But even if hostapd would support DPP, the tablet you want to use might not, so before building this, I would check that.

I would put the device identification into the application protocol and not in the network transport protocol. It can still be very strong, like mutual TLS authentication, but it allows you to have much easier access to the remote identity in your application.

Cheers,

1 Like

Thanks for your detailed responses. I’ll look into that and post my findings here!