Moby/5500 Guide

❗️

Moby/5500 is currently only supported in the iOS Legacy Mobile SDK.

Pairing Information

❗️

iOS Device Pairing

Do not try to pair the Moby/5500 device from the iOS settings menu. When you first try to connect the Moby/5500 through the SDK, it will take care of the pairing.

First-time pairing of the Moby/5500 device may take some time. The Moby/5500 should be fully charged before beginning the initial pairing process.

The onDeviceInitializationProgress delegate should be used to monitor the progress of the device pairing.

When connecting to the Moby/5500 device you may see a Bluetooth pairing request popup. If you do receive this pairing request popup, a pairing code will appear in the prompt to pair. In version 1.8.0 of the PaySimpleMobileSdk, you can ignore the pairing code. Ignore the pairing code and press "Pair" as part of the Bluetooth pairing request dialog.

Moby 5500 Card Swipe and Sleep Mode Behavior

Swipe restriction for EMV cards: Cards with EMV chips cannot be swiped. The device will prompt the user to insert the chip instead. This behavior is required by EMV compliance.

Fallback behavior: In certain processor configurations, fallback to swipe may be permitted after multiple failed insert attempts. This behavior is not controlled by the SDK and is typically disabled by default.

Magstripe cards: Swiping is only allowed for cards that do not have EMV chips.

Sleep mode behavior: The Moby 5500 enters sleep mode after a period of inactivity. If the device is asleep, it may need to be reconnected through the SDK. The sleep timeout is not configurable in the current SDK.

Important Method and Delegate Update Information

In the PaySimpleMobileSDK 1.8.0 for iOS the following new methods / delegates were added:

Methods

-(void)stopCurrentDeviceFlow;

Delegates

-(void) onDeviceDisplayText:(NSString *)text;

-(void)onDeviceRemoveCard;

-(void)onDeviceInitializationProgress:(double)currentProgress description:(NSString *)description model:(NSString *)model serialNumber:(NSString *)serialNumber currentStep:(NSString *)currentStep;

-(void)onDeviceBatteryLow;

-(void)onDeviceDidDisconnect;

-(void)onDeviceDidError:(NSError *)error;

Moby/5500 will utilize the above new methods and delegates along with other pre-existing generic methods and delegates.

These pre-existing generic methods and delegates which have support for Moby/5500 flows include:

Methods

+(BOOL)initializeSdk:(PsSDKDeviceType)device environment:(NSString *)env error:(NSError **)error;

-(void)resetSdk

+(PsSDK *)sharedInstance;

+(BOOL)isInitialized;

-(void) scanForBluetoothDevicesWithClientToken:(NSString *)clientToken completionHandler: (void(^)(NSArray < PsBluetoothDevice * > *, NSError *error))handler

-(void) connectDeviceWithClientToken:(NSString *)clientToken serialNumber:deviceToConnect completionHandler: (void(^)(BOOL didConnect, PsDeviceInfo *deviceInfo, NSError *error))handler;

-(void) disconnectDeviceWithHandler: (void(^)(BOOL didDisconnect, NSError *error)) handler;

-(BOOL)isDeviceConnected;

-(NSString *)getDeviceName;

-(NSString *)getDeviceBatteryPercentage;

-(void) makeSaleWithClientToken:(NSString *)clientToken request:(PsSaleRequest *)saleRequest completionHandler:(void(^)(PsSaleResponse *response, NSError *error))handler;

Delegates

-(void)deviceConnectionDidChange:(NSString *)deviceType isConnected:(BOOL)isConnected;