Skip to the content
2 layers11.8 × 38.4 mmReceiver6, the printed circuit board in 3D

Code for Bluetooth Low Energy bee tracking system

Size
11.8 × 38.4 mm
Copper layers
2
Thickness
0.2 mm
Parts
10
Nets
12
Pads
44
Tracks, vias
106, 4
Pours
10
Routed
Yes
KiCad
KiCad 9.0 (file 20241229)
Created
18 Mar 2024
Updated
27 May 2026

Overview

Receiver6 is an open-source printed circuit board by SheffieldMLtracking, from the SheffieldMLtracking/BLETrack repository on GitHub, published under the GPL-3.0 licence. It is a 2-layer board of 11.8 × 38.4 mm with 10 parts on 12 nets, routed with 106 tracks and 4 vias.

Its parts include 3 capacitors, 1 IC, 1 diode, 1 connector and 1 crystal. It belongs with the radio and wireless boards of this library.

README

README.md

path

Code for Bluetooth Low Energy bee tracking system.

  • "Transmitter" folder contains the code to be flashed to the BT832X/BM832E transmitter board.
  • "Receiver" folder contains the code to be flashed to the DA14531 chip on-tag and the 'Active Scanner' code for testing & diagnostics.
  • "To Print" folder contains FreeCAD files of the transmitter housing.
  • "Path Inference" folder contains code to process data from tag/dev board
  • Test data stored here

Notes on Programming Transmitter

Transmitter programming:

  • Requires nRF Connect SDK.
  • Create a build for the nrf52dk_nrf52832 and add the included device tree overlay.
  • Connect nrf52dk and BT832X/BM832E to the computer via JLINK (done via micro USB cable). Connect DEBUG OUT on nrf52dk to DEBUG IN on BT832X/BM832E:nrf52dk_programming_example
  • flashthisfirst.c must be flashed to the BT832X/BM832E first - then main.c can be flashed.

NOTE: P0.31 is used for encoder output A, P0.30 for encoder output B and P0.11 for hall effect sensor input.

Receiver programming:

  • Requires Keil uVision and configuration of environment as shown here.
  • To program a receiver tag via flashing code to the OTP memory, follow these instructions. If you need to debug code on a tag, do not flash to the OTP. DA14531 USB Development Kit can be used as a serial wire debug probe to debug code on an external DA14531 chip on the receiver tag using this configuration of SWIO cables and DIP switches.
  • Note: binary for compiled DA14531 is found in Keil/DA14531_OUT/Objects.
  • Note: USB dev kit switches should be configured as shown: da14531_usb

Usage of the System

Setting Up Transmitters

  • Charge transmitters before field trial!
  • Each transmitter is placed onto a tripod across the landscape. The 0 degree point on the tripod (denoted by the small magnet on the base the transmitter sits in) should be pointed north using a compass before placing the transmitter itself upon the tripod. The transmitter should be level with the ground and mounted as high up as possible.
  • As each transmitter is turned on, the time between turning each on should be taken using a stop watch. This time is later used to zero the time readouts in the packets.
  • Using the "Active Scanner" code downloaded to the DA14531 USB Dev Kit, the serial output from the dev kit - which can be accessed using a serial terminal program such as Tera Term - should be used to verify the functionality of the tramsitters. The packets recieved by the active scanner are in the following form and should be assessed to ensure that the transmitter is in fact transmitting and that the motor is reading out ~360 degrees of rotation, resetting at the zero point. If there is an issue, the transmitter may need reprogramming, regarching or the motor encoder may have been knocked out of place. Screenshot from 2024-10-29 13-43-06
  • Each transmitter currently has a range of approximately 100m (further at peak signal strength but not currently used in angle inference algorithm). The area tracked should be covered by at least 2, preferably 3 transmitters.

Using a Receiever Tag

  • A programmed tag should be allowed to drain fully to hardware reset, then be charged and attatched to a bee.
  • Following retrieval, put the tag on charge and apply ground to the interrupt pin to switch the tag into transmit mode.
  • The data of each packet is encoded in the destination addr, in the same form as the transmitted packets except the RSSI of the packet is encoded in the leftmost byte. Using a bluetooth sniffer (reccomended nrf52 BLE sniffer) and Wireshark the transmitted packets can be read. The following filter shows only read packets:

btle.advertising_header.pdu_type == 0x01 && !_ws.expert && btle.advertising_address == 80:ea:ca:70:00:04

Performing Infernece

  • Instructions for performing path inference on data are located in PathInferenceFinalCut.inpyb

Parts

10
QtyValueFootprintReferences
3, ,
2CCapacitor_SMD:C_0402_1005MetricC1, C3
1CP3225ALibrary:CAPCP3225X100N_improvedC2
1Conn_01x08_PinLibrary:FPC_1x08_P1.00mm_plug_3mmJ1
1Crystal_GND24Library:Crystal_SMD_Abracon_ABM13W-4Pin_1.2x1.0mmY1
1DA14531_17-ball_WLCSPLibrary:DA14531_17-ball_WLCSPU1
1LED1KPG-0402SURKKC:KPG-0402SURKKC-TTLED1

More from SheffieldMLtracking/BLETrack

8
  • 2 layers47 × 71.2 mmReceiver6 rep, the printed circuit board in 3D

    Receiver6 rep

    SheffieldMLtracking/BLETrack

    Code for Bluetooth Low Energy bee tracking system

    288 partsGPL-3.0
  • 2 layers80.1 × 22.5 mmAccel tag, the printed circuit board in 3D

    Accel tag

    SheffieldMLtracking/BLETrack

    Code for Bluetooth Low Energy bee tracking system

    14 partsGPL-3.0
  • 2 layers64.9 × 8.9 mmFlatLEDtag, the printed circuit board in 3D

    FlatLEDtag

    SheffieldMLtracking/BLETrack

    Code for Bluetooth Low Energy bee tracking system

    11 partsGPL-3.0
  • 2 layers64.9 × 8.9 mmFlatLEDtag, the printed circuit board in 3D

    FlatLEDtag

    SheffieldMLtracking/BLETrack

    Code for Bluetooth Low Energy bee tracking system

    11 partsGPL-3.0
  • 2 layers11.8 × 8.9 mmReceiver6, the printed circuit board in 3D

    Receiver6

    SheffieldMLtracking/BLETrack

    Code for Bluetooth Low Energy bee tracking system

    9 partsGPL-3.0
  • 2 layers11.8 × 39.2 mmReceiver6, the printed circuit board in 3D

    Receiver6

    SheffieldMLtracking/BLETrack

    Code for Bluetooth Low Energy bee tracking system

    8 partsGPL-3.0
  • 2 layers11.8 × 38.4 mmReceiver6, the printed circuit board in 3D

    Receiver6

    SheffieldMLtracking/BLETrack

    Code for Bluetooth Low Energy bee tracking system

    8 partsGPL-3.0
  • 2 layers11.8 × 8.9 mmReceiver6, the printed circuit board in 3D

    Receiver6

    SheffieldMLtracking/BLETrack

    Code for Bluetooth Low Energy bee tracking system

    3 partsGPL-3.0

Similar boards

  • 2 layers57 × 55.2 mmLogicAnalyzer, the printed circuit board in 3D

    LogicAnalyzer

    gusmanb/logicanalyzer

    24 channel, 100Msps logic analyzer hardware and software

    10 parts5.1kGPL-3.0
  • 2 layers32.2 × 15.4 mmProtector, the printed circuit board in 3D

    Protector

    byrantech/laptop

    anyon_e, a highly integrated, high end, open source laptop. Attempt the impossible.

    10 parts4.3kMIT
  • 2 layers26 × 18 mmConn, the printed circuit board in 3D

    Conn

    yaqwsx/KiKit

    Automation tools for KiCAD

    10 parts2.1kMIT
  • 2 layers44.3 × 30.5 mmLime2-SATA RevA, the printed circuit board in 3D

    Lime2-SATA RevA

    OLIMEX/OLINUXINO

    OLINUXINO is Open Source / Open Hardware, low cost from EUR 24 Linux Industrial grade Single Board Computer capable to operate -25+85C

    10 parts1.5k
  • 2 layers17.8 × 43.2 mmNano Adapter, the printed circuit board in 3D

    Nano Adapter

    VoronDesign/Voron-Hardware

    Cool Hardware designed by the Voron Design group

    10 parts1.1kGPL-3.0
  • 2 layers53.9 × 23.2 mmBuffer, the printed circuit board in 3D

    Buffer

    hoglet67/RGBtoHDMI

    Bare-metal Raspberry Pi project that provides pixel-perfect sampling of Retro Computer RGB/YUV video and conversion to HDMI

    10 parts1kGPL-3.0

Questions

How big is the Receiver6 PCB?

It measures 11.8 × 38.4 mm and has 2 copper layers, 0.2 mm thick.

What parts does the Receiver6 use?

10 parts. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.

Where can I download the Receiver6 KiCad files?

From the SheffieldMLtracking/BLETrack repository on GitHub, at the commit this page was made from: the board is Tag PCBs/2026 Tag Designs/Supercap LEDS v2/receiver6.kicad_pcb and its schematic Tag PCBs/2026 Tag Designs/Flat LED Tag 44uF Caps/Flat LED Tag/flatLEDtag/flatLEDtag.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Receiver6 design in my own project?

Its repository publishes it under the GPL-3.0 licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).