• Stars
    star
    115
  • Rank 305,916 (Top 7 %)
  • Language
    C
  • Created over 7 years ago
  • Updated over 4 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

nrf52-ble-image-transfer-demo

This demo uses a camera sensor to capture a JPG image, and send it over BLE to a phone app. The image can be captured either in a single shot mode, or in a streaming mode where it will take pictures as fast as the BLE link can keep up.

The resolution can be changed in 6 steps between 160x120 to 1600x1200, and an estimate of the transfer speed can be calculated based on the time it takes to transfer each image.

The example is set up to request different BLE phy's, and can be used to demonstrate the difference between 1Mbps and 2Mbps BLE modes on phones that support it.

The Android companion app can be found here:
https://github.com/NordicSemiconductor/Android-Image-Transfer-Demo

Requirements

Hardware setup

nRF52840 using front connector

Note: This requires solder bridges SB10-15 and SB20-25 to be soldered/cut, as illustrated here:

nRF52840 using side connector

nRF52832 using side connector

SoftDevice version

For the nRF52840 use the S140 v7.0.1, provided with SDK v16.0.0.

For the nRF52832 use the S132 v7.0.1, provided with SDK v16.0.0.

Note

The project may need modifications to work with other versions or other boards.

To compile it, clone the repository in the [SDK]/examples/ble_peripheral folder.

About this project

This application is one of several applications that has been built by the support team at Nordic Semiconductor, as a demo of some particular feature or use case. It has not necessarily been thoroughly tested, so there might be unknown issues. It is hence provided as-is, without any warranty.

However, in the hope that it still may be useful also for others than the ones we initially wrote it for, we've chosen to distribute it here on GitHub.

The application is built to be used with the official nRF5 SDK, that can be downloaded from developer.nordicsemi.com

Please post any questions about this project on devzone

More Repositories

1

nRF51-ble-bcast-mesh

C
323
star
2

Android-nRF-UART

nRF UART app for Android. A simple app showing how to handle BLE with custom service in Android.
Java
199
star
3

nRF52-Bluetooth-Course

C
187
star
4

nrf51-ble-app-lbs

Simple example application showing how to do a custom service. Fully explained in nAN-36, available on www.nordicsemi.com.
C
93
star
5

nRF52-ADC-examples

C
91
star
6

puck-central-android

Java
88
star
7

nrf5-eagle-reference-design

80
star
8

nrf-docker

Dockerfile example for building nRF Connect SDK applications with GitHub Actions
Dockerfile
72
star
9

nrf51-UART-examples

nRF51 UART examples
C
64
star
10

nrf51-powerdown-examples

Powerdown examples for the nRF51, showing wakeup from system on with RTC and GPIO and from system off from GPIO.
C
62
star
11

nRF5x-custom-ble-service-tutorial

C
61
star
12

nrf52-quadcopter

C
59
star
13

nrf52-ble-multi-link-multi-role

C
58
star
14

webapp-nordic-thingy

Thingy:52 reference web app
JavaScript
54
star
15

nrf51-pwm-library

PWM library with examples for the nRF51x22. Supports up to 4 PWM channels, and can be used with or without a SoftDevice.
C
51
star
16

nrf5-calendar-example

C
50
star
17

nrf51-ble-tutorial-advertising

This example is meant to be used togheter with the tutorial "A beginner's tutorial: Advertising" found at https://devzone.nordicsemi.com/tutorials/5/a-beginners-tutorial-advertising/. The tutorial is fairly superficial and is meant to be a hands-on introduction to BLE advertising and broadcasting of a limited payload.
C
49
star
18

nrf5-sdk-for-eddystone

Example implementation of the Eddystone GATT Configuration Service for nRF5 devices.
C
46
star
19

nrf51-ADC-examples

Examples that operate the nRF51 internal ADC
C
43
star
20

nrf-doom

C
40
star
21

nRF51-multi-role-conn-observer-advertiser

Runs an Observer or Advertiser role (timeslot API) with a Connection. Provides a HCI interface to the Observer and Advertiser. Advertiser provides SCAN REQs back to application.
C
40
star
22

nRF52-ble-long-range-demo

C
40
star
23

Nordic-Thingy52-Nodejs

Nordic Thingy:52 Node.js library example. Please see http://www.nordicsemi.com/thingy for the latest Nordic Thingy:52 news and software releases.
JavaScript
40
star
24

Nordic-Thingy52-Thingyjs

JavaScript
39
star
25

Android-Image-Transfer-Demo

Java
38
star
26

nrf51-ble-app-temp

Project for the nRF51822 that can send data to the nRF Temp smartphone apps.
C
38
star
27

IOS-nRF-For-HomeKit

Swift
37
star
28

nrf528xx-ble-throughput-demo

C
36
star
29

IOS-nRF-Beacons

Objective-C
33
star
30

nRF52-ble-app-lbs

Simple example application showing how to do a custom service. Fully explained in nAN-36, available on www.nordicsemi.com.
C
32
star
31

nrf24lu1p-snifferdemo

C
30
star
32

nRF5-universal-prog

The nrfjprog command line tool implemented in Python.
Python
30
star
33

solar_sensor_beacon

C
30
star
34

secure-dfu-web-bluetooth

Performs secure device firmware updated over-the-air via Web-Bluetooth.
JavaScript
30
star
35

Nordic-Thingy52-mesh-demo

C
29
star
36

nrf51-micro-esb

Stripped down Enhanced Shockburst library for the nRF51 series
C
27
star
37

Windows-nRF-Toolbox

nRF Toolbox source code
C#
27
star
38

nrf8001-ble-uart-spark-io

C
26
star
39

nrf51-ble-tutorial-service

C
25
star
40

j-link-monitoring-mode-debugging

Assembly
24
star
41

nrf51-ble-ancs-nus

Combination of ANCS and NUS service with iOS app
C
24
star
42

nrf5-ble-tutorial-characteristic

C
23
star
43

nRF5-flash-storage-examples

C
23
star
44

nrf52-production-programming

A guide to programming nRF52 series devices in production, along with test cases to verify implementation
Assembly
22
star
45

nRF52-teensy-sgtl5000-audio

Audio example using nRF52 DK and Teensy SGTL5000 Audio adapter
C
21
star
46

nrf52-ble-app-uart-long-range

C
20
star
47

nrf52-gtt-demos

C
19
star
48

nrf52-i2c-hid-demo

C
18
star
49

nRF51-ble-app-uart-static-passkey

ble-app-uart project modified to require a static passkey.
C
18
star
50

iOS-Image-Transfer-Demo

High throughput transfer demo for iOS
Swift
18
star
51

ble-optiboot

This directory contains the Optiboot small bootloader for AVR microcontrollers, modified to support transfer using Bluetooth Low Energy in addition to UART
C
17
star
52

nrf51-ble-micro-esb-uart

Concurrent BLE and micro-ESB wireless UART example
C
17
star
53

node-usb-cdc-acm

Userspace javascript implementation of a USB CDC ACM driver, on top of libusb.
JavaScript
16
star
54

Android-Common-Libraries

A libraries with Nordic's common code for Android apps.
Kotlin
15
star
55

nrf5-physical-web

A collection of tools and projects to help you experiment with the Physical Web by using nRF51 and nRF52 development kits from Nordic Semiconductor.
JavaScript
15
star
56

nrf51-dfu-bootloader-for-gcc-compiler

code examples of a the SDKv6.0 DFU bootloader modified to be built by gcc.
C
15
star
57

Android-Digital-Bird

The Android game that combines what best in Flappy Bird and Bluetooth Smart.
Java
15
star
58

ble-mesh-serial-interface-js

An npm package for Node.js that provides an API to control a router node in a BLE mesh network via the serial port.
JavaScript
15
star
59

nrf52-rocket

C
13
star
60

thingy52-mesh-provisioning-demo

C
13
star
61

nrf52-drv-gpio-example

C
13
star
62

nrf51-TIMER-examples

Simple TIMER example for nRF51, both for timer and counter modes
C
13
star
63

ble_app_hrs---LongWrite

Example on long write (long characteristic)
C
13
star
64

pc-nrfconnect-ble-standalone

JavaScript
13
star
65

nrf52-capsense-example

C
11
star
66

nRF52-clients-for-serial-LTE-modem

C
11
star
67

nrf51-dfu-single-bank-ble

Single bank bootloader for DFU over BLE (nRF51, S110 v7.0+, SDK6.0+)
C
11
star
68

nRF52840-ble-secure-bootloader

C
11
star
69

thread_border_router

Thread Border Router based on OpenWRT and wpantund
Shell
11
star
70

nrf52-esb-ccm-example

C
11
star
71

nRF5-multi-prog

Program multiple nRF5 devices concurrently with this nrfjprog inspired python module/exe
Python
10
star
72

nRF51-ble-peripheral-bond-handling

Uses device manager peripheral with app context to identify the oldest bond
C
10
star
73

nrf-knx-iot

Implementation of KNX IoT over Thread
C
10
star
74

nrf70-linux-driver

Linux driver for the nRF70 series of ICs
C
10
star
75

nrf51-ble-gzll-device-uart

C
10
star
76

nrf91-pizza

Source code for the nRF91 Pizza web application
JavaScript
10
star
77

nRF52-flash-patch

Flash Patch library and example on Nordic Semiconductor's nRF52 Series Device
C
10
star
78

nrf51-dfu-ble-S130

OTA DFU example for S130 based on DFU example in SDK v6.1
C
9
star
79

nrf52840-ble-app-hrs-usb-audio

C
9
star
80

nrf-mesh-freeRTOS-example

C
9
star
81

nrf-esl-bluetooth

C
9
star
82

arduino-primo-iot-examples

Extension to nRF5 IOT SDK with examples for Arduino Primo
C
9
star
83

nrfconnect-chip-docker

Shell
9
star
84

nrf51-8-mhz-gpio-clock

A simple project showing how to use the a TIMER and GPIOTE, connected with the PPI to toggle an I/O at 8 MHz.
C
9
star
85

ncs-display-ble-example

C
8
star
86

nrf51-ble-dfu-symmetric-signing

Symmetric signing example for the SDK bootloader using a SHA256-based HMAC
C
8
star
87

nrf51-watchdog-resetreas-example

Demonstrates the use of the watchdog, System Off and displays RESETREAS register
C
8
star
88

nrf52-mesh-light-switch-client-server-proxy

C
8
star
89

puck

CSS
8
star
90

nrf52-hardware-startup-hands-on

C
7
star
91

nrf52-ble-app-uart-relay

C
7
star
92

nRF51-ble-app-hrs-s130

This example shows how a S130 application can be set up with the same structure as the SDK examples
C
7
star
93

nrf52-esb-broadcaster

C
7
star
94

nRF-Beehavior-Firmware

C
7
star
95

nordic-ot-border-router

Nordic OpenThread Border Router
7
star
96

nrf51-app-button-example

Example demonstrating the button handling library
C
7
star
97

ble-sdk-efm32

C
6
star
98

nrf52-timer-gpiote-ppi-hands-on

C
6
star
99

ANT-Shared-Channel-Demo

A demo of the ANT Shared Channel sample from SDK 7.2.
Objective-C
5
star
100

nrf52-ble-app-uart-c-multilink

C
5
star