Skip to content

Commit

Permalink
Release 2.5.0
Browse files Browse the repository at this point in the history
  • Loading branch information
hdrsl committed Jun 15, 2022
1 parent d2b1464 commit dcff9e8
Show file tree
Hide file tree
Showing 134 changed files with 3,636 additions and 2,480 deletions.
2 changes: 1 addition & 1 deletion Podfile
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ def shared_pods
pod 'PureLayout', '~> 3.1.4'
pod 'SVProgressHUD', '~> 2.2.5'
pod 'UICircularProgressRing', '~> 4.1.0'
pod 'WYPopoverController', '~> 0.2.2'
pod 'WYPopoverController', :git => 'https://github.com/sammcewan/WYPopoverController.git'
pod 'XMLDictionary', '~> 1.4.1'
pod 'Realm', '~> 4.3.2'
pod 'RealmSwift'
Expand Down
16 changes: 10 additions & 6 deletions Podfile.lock
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ PODS:
- RxSwift (6.2.0)
- SVProgressHUD (2.2.5)
- UICircularProgressRing (4.1.0)
- WYPopoverController (0.2.2)
- WYPopoverController (0.3.9)
- XMLDictionary (1.4.1)

DEPENDENCIES:
Expand All @@ -55,7 +55,7 @@ DEPENDENCIES:
- RxSwift (~> 6.2.0)
- SVProgressHUD (~> 2.2.5)
- UICircularProgressRing (~> 4.1.0)
- WYPopoverController (~> 0.2.2)
- WYPopoverController (from `https://github.com/sammcewan/WYPopoverController.git`)
- XMLDictionary (~> 1.4.1)

SPEC REPOS:
Expand All @@ -80,18 +80,22 @@ SPEC REPOS:
- RxSwift
- SVProgressHUD
- UICircularProgressRing
- WYPopoverController
- XMLDictionary

EXTERNAL SOURCES:
Eddystone:
:branch: nservidio/add-properties-to-Generic
:git: https://github.com/IntrepidPursuits/eddystone-ios.git
WYPopoverController:
:git: https://github.com/sammcewan/WYPopoverController.git

CHECKOUT OPTIONS:
Eddystone:
:commit: ecbaed68ff82aecc82a52671fae17552658c2b8d
:git: https://github.com/IntrepidPursuits/eddystone-ios.git
WYPopoverController:
:commit: 9b8011bd95bd95f6fca6a0afa78965fbf645a062
:git: https://github.com/sammcewan/WYPopoverController.git

SPEC CHECKSUMS:
ActionSheetPicker-3.0: eef157d75e151f255c5333d26656c7fbfe905a51
Expand All @@ -115,9 +119,9 @@ SPEC CHECKSUMS:
RxSwift: d356ab7bee873611322f134c5f9ef379fa183d8f
SVProgressHUD: 1428aafac632c1f86f62aa4243ec12008d7a51d6
UICircularProgressRing: 5a32c01f54474571b1e66e8fa050c0f83d6d981b
WYPopoverController: 00d879c25bddd1fd873dcc21aa98c8308d7f1555
WYPopoverController: a9db25ac2841a686acdc0f3a99bdb21545db32f4
XMLDictionary: fa07b6ff422b3a91d47a5de9bc82e3fc04fbd167

PODFILE CHECKSUM: fa38ccfd90caab8b342bbeb884f33901d78598f1
PODFILE CHECKSUM: 0c27fdd7e95d8fb75e6cc907591fbf6ff042fa18

COCOAPODS: 1.10.1
COCOAPODS: 1.10.2
95 changes: 24 additions & 71 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,91 +1,44 @@
# EFR Connect Mobile Application
This is the source code for the EFR Connect mobile application.
# Blue Gecko for iOS
This is the source code for the Blue Gecko mobile application for iOS.

## What is EFR Connect BLE mobile app?
## Overview:

Silicon Labs EFR Connect is a generic BLE mobile app for testing and debugging Bluetooth® Low Energy applications. With EFR Connect, you can quickly troubleshoot your BLE embedded application code, Over-the-Air (OTA) firmware update, data throughput, and interoperability with Android and iOS mobiles, among the many other features. You can use the EFR Connect app with all Silicon Labs Bluetooth development kits, Systems on Chip (SoC), and modules.
* [Project Overview](#project-overview) - A general overview of the purpose of this project.
* [Project Setup](#project-setup) - How to get set up with the Blue Gecko iOS project.
* [Architecture](#architecture) - A general overview of the app's architecture.

## Why download EFR Connect?
EFR Connect radically saves the time you will use for testing and debugging! With EFR Connect, you can quickly see what’s wrong with your code and how to fix and optimize it. EFR Connect is the first BLE mobile app allowing you to test data throughput and mobile interoperability with a single tap on the app.
## Project Overview

## How does it work?
Using EFR Connect BLE mobile app is easy. It runs on your mobile devices such as a smartphone or tablet. It utilizes the Bluetooth adapter on the mobile to scan, connect and interact with nearby BLE hardware.
The Silicon Labs Blue Gecko App displays temperature measurements from the Silicon Labs Wireless Starter Kit (SLWSK). The app can also indicate proximity to the SLWSTK using Find Me Profile (FMP) & Proximity Profiles (PXP). Finally, the SLWSK can be configured as a Retail Beacon to send advertisement data to the App.

After connecting the EFR Connect app and BLE hardware (e.g., a dev kit), the Blinky test on the app shows a green light indicating when your setup is ready to go. The app includes simple demos to teach you how to get started with EFR Connect and all Silicon Labs development tools.
The current retail version can be found on the [US AppStore](https://itunes.apple.com/us/app/silicon-labs-blue-gecko-wstk/id1030932759?mt=8).

The Browser, Advertiser, and Logging features help you to find and fix bugs quickly and test throughput and mobile interoperability simply, with a tap of a button. With our Simplicity Studio’s Network Analyzer tool (free of charge), you can view the packet trace data and dive into the details.
## Project Setup

## Demos and Sample Apps
EFR Connect includes many demos to test sample apps in the Silicon Labs GSDK quickly. Here are demo examples:
In order to load firmware to the device, get set up with [Simplicity Studio](https://www.silabs.com/products/development-tools/software/simplicity-studio).

- **Blinky**: The ”Hello World” of BLE – Toggling a LED is only one tap away.
- **Throughput**: Measure application data throughput between the BLE hardware
and your mobile device in both directions
- **Health Thermometer**: Connect to a BLE hardware kit and receive the temperature data from the on-board sensor.
- **Connected Lighting DMP**: Leverage the dynamic multi-protocol (DMP) sample apps to control a DMP light node from a mobile and protocol-specific switch node (Zigbee, proprietary) while keeping the light status in sync across all devices.
- **Range Test**: Visualize the RSSI and other RF performance data on the mobile phone while running the Range Test sample application on a pair of Silicon Labs radio boards.
- **Motion**: Control a 3D render of a Silicon Labs Thunderboard or Dev Kit that follows the phyiscal board movements.
- **Environment**: Read and display the data from the on-board sensors on a Silicon Labs Thunderboard or Dev Kit.
- **Wi-Fi Commissioning**: Commission a Wi-Fi device over BLE.
The Silicon Labs iOS Application is built to support iOS 11 .0 and higher, and utilizes [CocoaPods](https://cocoapods.org/#install) for library dependency management.

## Development Features
EFR Connect helps developers create and troubleshoot Bluetooth applications running on Silicon Labs’ BLE hardware. Here’s a rundown of some example functionalities.
The application also contains a "hidden" debug button to the immediate right of the navigation bar that becomes visible on TouchDownInside, and contains a local Bluetooth device explorer.

**Bluetooth Browser** - A powerful tool to explore the BLE devices around you. Key features include:
- Scan and sort results with a rich data set
- Label favorite devices to surface on the top of scanning results
- Advanced filtering to identify the types of devices you want to find
- Save filters for later use
- Multiple connections
- Bluetooth 5 advertising extensions
- Rename services and characteristics with 128-bit UUIDs (mappings dictionary)
- Over-the-air (OTA) device firmware upgrade (DFU) in reliable and fast modes
- Configurable MTU and connection interval
- All GATT operations
## Architecture

**Bluetooth Advertiser** – Create and enable multiple parallel advertisement sets:
- Legacy and extended advertising
- Configurable advertisement interval, TX Power, primary/secondary PHYs
- Manual advertisement start/stop and stop based on a time/event limit
- Support for multiple AD types
#### Health Thermometer

**Bluetooth GATT Configurator** – Create and manipulate multiple GATT databases
- Add services, characteristics and descriptors
- Operate the local GATT from the browser when connected to a device
- Import/export GATT database between the mobile device and Simplicity Studio GATT Configurator
To test the Health Thermometer, load the `SOC - Thermometer` firmware in Simplicity Studio. Open the app and select the Health Thermometer cell. You will be presented with a popover. You are able to select Blue Gecko devices or Other devices. Blue Geckos is selected by default. Select Other. You should see a thermometer called Thermometer Example in the list. You should be able to select that thermometer and be brought to a temperature readout screen.

**Bluetooth Interoperability Test** – Verify interoperability between the BLE hardware
and your mobile device
- Runs a sequence of BLE operations to verify interoperability
- Export results log
#### Bluetooth Beaconing

When you enter the Bluetooth Beaconing portion of the app, the app begins to look for several types of "beacons" including iBeacon, AltBeacons, BGBeacons, and Eddystone Beacons.


## Additional information
The app can be found on the [Google PlayStore](https://play.google.com/store/apps/details?id=com.siliconlabs.bledemo&hl=en) and [Apple App Store](https://apps.apple.com/us/app/blue-gecko/id1030932759).

[Learn more about EFR Connect BLE mobile app](https://www.silabs.com/developers/efr-connect-mobile-app).

[Release Notes](https://www.silabs.com/developers/efr-connect-mobile-app)

For more information on Silicon Labs product portfolio please visit [www.silabs.com](https://www.silabs.com).
#### Key Fobs

In order to test the Key Fob mode, make sure that the `SOC - Smart Phone App` firmware is loaded. Open the app and select Key Fobs. Make sure that the hardware is displaying "HTM/KEYFOB MODE" on its LCD display. If it isn't, press the PB0 button. Then press the FIND button in the app. notice that the two small LEDs between the LCD display and the Blue Gecko board are now flashing! If you back out of the Key Fob screen you will see that the app is disconnecting and the LEDs will stop flashing.

## License

Copyright 2021 Silicon Laboratories

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

#### Bluetooth Browser

The Bluetooth browser searches for all Bluetooth peripherals in the surrounding area.

## Additional information
For more information, please visit [www.silabs.com](https://www.silabs.com).
4 changes: 2 additions & 2 deletions SiliconLabsApp-Bridging-Header.h
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,7 @@
#import "SILBeacon.h"
#import "SILCentralManager.h"
#import "SILDiscoveredPeripheralDisplayDataViewModel.h"
#import "SILDiscoveredPeripheral.h"
#import "SILBrowserBeaconType.h"
#import "SILRSSIMeasurementTable.h"
#import "UIColor+SILColors.h"
#import "SILApp.h"
#import "WYPopoverController+SILHelpers.h"
Expand Down Expand Up @@ -44,6 +42,8 @@
#import "UIImage+SILImages.h"
#import "SILBrowserLogViewController.h"
#import "SILBrowserFilterViewController.h"
#import "SILBrowserFilterViewControllerDelegate.h"
#import "SILBrowserFilterViewModel.h"
#import "SILBrowserConnectionsViewController.h"
#import "SILStoryboard+Constants.h"
#import "SILBrowserBeaconType.h"
Expand Down

0 comments on commit dcff9e8

Please sign in to comment.