Tab Order difficulties with IQKeyboardManager

By | BLE, iOS, XCode | No Comments

I *Love* IQKeyboardManager, but I was having a rough time figuring out why my “tab order” on a view with multiple UITextFields seemed incorrect.  When pressing the “>”  and “<”  buttons that IQKeyboardManager adds to the standard keyboard, the right UITextFields where not being selected, in order.

It took me a while to find a fix, but it turns out if you look at your “Scene” listing for the Storyboard, you can reorder the UITextFields (see image below).

IQKeyboardManager, ios, xcode, swift

Setting tab order with IQKeyboardManager

Once you get them in the right order (by clicking and dragging the field names to the left of the red arrows shown above), your tab order should work correctly.

Are you having issues with IQKeyboardManager, or maybe just love it to death (like I do)?  Let us know in the comment section below!

Rock Solid Unique IDs (using StickNFind tags)

By | BLE | No Comments

The BLEvolve application Asset Beacon requires rock-solid unique identification in order to function. Believe it or not, unique identification is one of the most common stumbling points for engineers beginning to work with the StickNFind API. Below I will lay out some guidelines that we have found during the development of Asset Beacon that we circulate internally:

1. Forget about the “Name” field.

StickNFinds API provides a “Name” field, as part of the LeSnfDevice object (this represents a single tag, in code); However, there is (from what we can tell…) no way to change this using the API. D’oh! So what you should do is….

2. Start using the “User Data” fields

There are 3 User data fields exposed by the API. These can be wrote after a connection to the tag is made. Which reminds me…

3. Pay attention to what can be done after a “scan” and what requires a “connect”

If you aren’t familiar, for now all you need to know is that a scan typically will take longer than a connect. This can have serious consequences for how you architect your solution. It typically takes us (with low interference) a few seconds to scan a few hundred tags, while connecting to 100 tags reliably en masse – while something we have done when required – will cause a much longer delay.

4. You may want to have a visual indication of connection state to the tags included in your app

This is mostly useful for testing and tweaking performance of the app. It is also useful to give users a better idea of when they can ring (turn on the lights and musical chime), write, and read temp and battery data from the tags.

5. You will need to Connect to a tag to ring, write, and read temp and battery data

Weigh this together with what I said above regarding the time it takes to scan vs connect.

Thanks for reading, and best of luck. If you at any time need a world-class consultancy for (paid per-project/install or hourly) consulting, please do not hesitate to contact us at BLEvolve – we have staff on call to answer your inquiry.

BLE vs. RFID for unique identification

By | BLE, RFID | No Comments

Imagine yourself in a room with just your phone. Imagine that you could open an interface that would instantly inventory all of the items in the room, and allow you to “page” that object – ringing an alarm on that item. Now, imagine that you could know at any given time – automatically – when items have moved locations. This is the scenario we at BLEvolve achieve using our AssetBeacon BLE-based tagging, tracking and locationing software.
Read More

Our approach to API technology

By | API | 2 Comments

When many systems designers create an API spec, they often take the approach of simply “making everything available”.  We are huge fans of this approach, and believe in many cases it is an elegant and simple way to enable integrations.  The underlying technologies should be carefully considered, as well as the expertise of the staff who must execute and subsequently maintain the systems.
Read More

Magna Quis

By | Gaming | No Comments

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent ullamcorper suscipit mi, id convallis risus ullamcorper eget. Curabitur ultricies elit lacinia arcu ullamcorper adipiscing. Integer velit dui, gravida semper commodo vel Read More

Big Buck Bunny

By | Uncategorized | One Comment

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi vitae dui et nunc ornare vulputate non fringilla massa. Praesent sit amet erat sapien, auctor consectetur ligula. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed non ligula augue. Praesent imperdiet magna at risus lobortis ac accumsan lorem ornare. In aliquam, sapien ac vehicula vestibulum, arcu magna aliquet velit,

Read More

Portit mollis vitae

By | Uncategorized | One Comment

Nullam ornare, sem in malesuada sagittis, quam sapien ornare massa, id pulvinar quam augue vel orci. Praesent leo orci, cursus ac malesuada et, sollicitudin eu erat. Pellentesque ornare mi vitae sem consequat ac bibendum neque adipiscing. Donec tellus nunc, tincidunt sed faucibus a, mattis eget purus. Read More