Skip to the content
PCBKitNew board
2 layers150 × 150.9 mmBluetooth daq digital submodule, the printed circuit board in 3D

Bluetooth daq digital submodule

PatrickAJoseph/bluetooth-daq

A simple low-speed Bluetooth enabled DAQ

Size
150 × 150.9 mm
Copper layers
2
Thickness
1.6 mm
Parts
142
Nets
103
Pads
436
Tracks, vias
1,230, 180
Pours
2
Routed
Yes
KiCad
KiCad 6 (file 20211014)
Created
31 Jan 2026
Updated
2 May 2026

Overview

Bluetooth daq digital submodule is an open-source printed circuit board by PatrickAJoseph, from the PatrickAJoseph/bluetooth-daq repository on GitHub. It is a 2-layer board of 150 × 150.9 mm with 142 parts on 103 nets, routed with 1,230 tracks and 180 vias.

It is built around the SN75176AD, 74HC165D and 74HC595, with the CD4053BE, 24LC1025-I/P and SMAJ5.0CA among its other parts. Its parts include 54 capacitors, 52 resistors, 8 ICs, 7 diodes and 5 connectors. It belongs with the radio and wireless boards of this library.

Main components

6

README

README.md

bluetooth-daq

A simple low-speed Bluetooth enabled DAQ consisting of HV/LV voltage, current measurement, LV analog I/O, resistance measurement, UART, I2C & SPI communication interfaces and a high speed ADC combining multiple functionalities within one device. The device can be operated through a mobile/PC application via Bluetooth or through RS-485 interface. 16 devices can be connected to the RS-485 interface.

Goal of the product

  1. Reduce the number of induvidual electronic test equipment required for electronic hardware/software development.

  2. Combine commonly used electronic test functions within a single device

  3. Enable versatile interface to the device (RS485, Bluetooth, Web) and test automation support to reduce effort of manual testing.

Features of the product

Hardware features

  1. 16 low-speed logic level digital inputs (+/ 3.3V) (maximum sampling rate of 100 SPS)
  2. 16 low-speed logic level digital outputs (0-3V) with maximum current limit of 5mA / channel (maximum sampling rate of 100 SPS).
  3. 2 channel bi-polar differential high-resolution analog inputs (+/-, 50V, 6 digits) with maximum sampling rate of 2 kSPS/channel in single channel sampling mode.
  4. 2 channel high speed bipolar differential analog acquisition channels (maximum input signal frequency of 10kHz)
  5. 1 UART communication instance (UART_TX, UART_RX) with maximum baud rate of 115200.
  6. 1 I2C communication instance (I2C_SDA, I2C_SCL) with maximum clock speed of 400 kHz.
  7. 1 SPI communication instance (SPI_MOSI, SPI_MISO, SPI_nCS, SPI_SCLK) with maximum clock speed of 4 MHz.
  8. 8 channel differental bi-polar low voltage analog inputs +/- 15V range.
  9. 2 current measurement inputs (+/- 50V common mode voltage, and maximum current of 3A).
  10. 2 resistance measurement inputs ( 1 ohm to 1 MOhm ).
  11. 2 thermistor temperature measurement channels.
  12. 8 low speed DC analog outputs.
  13. RS-485 interface for remote control.

Software features

  1. RS-485 control of device through PC.
  2. Bluetooth control of device from PC/Mobile application.
  3. Firmware upgrade through Bluetooth using TI Simplelink Connect app.
  4. Simple Web GUI interface for control of device.
  5. Python scripting support for remote control of device from PC.
  6. LabVIEW support for the device.

Hardware block diagram

alt text

High voltage analog inputs

The device provides 2 high voltage analog inputs with a range of +/- 50V and maximum input frequency of 200 Hz. The high voltage analog input front end attenuates the input voltage signal and adds bias to meet voltage level requirements of the sigma-delta ADC inputs.

Current inputs

The device provides 2 current inputs with common mode voltage upto +/- 50V and a range of +/- 3A. The voltage drop across the current measurement terminal is 0.1V/A.

Low voltage analog inputs

The device provides 8 channel +/- 15V low voltage analog inputs. Maximum input frequency per channel is set to 200 Hz.

Resistance measurement

The device provides 2 channel resistance measurement feature. The supported resistance measurement range is 1 ohm to 1 MOhm.

High speed acquisition channels

The device provides 2 single ended high speed analog signal acquisition channels with sampling frequency of 200 kSPS per channel, limiting the combined input signal frequency to 10kHz.

Thermistor temperature measurement channels

The device provides 2 thermistor temperature measurement channels. The reference voltage for the thermistor interface is 3.3V and reference resistance is 10k. The device comes with a calibration table for a 10K NTC. If user uses any other NTC, then, the calibration table for thermistor has to be manually entered by the user via software.

Sigma-Delta ADC

The heart of most of the analog to digital conversions is carried out by a 24-bit sigma-delta ADC (ADS131M02: https://www.ti.com/lit/ds/symlink/ads131m02.pdf?ts=1769953054375&ref_url=https%253A%252F%252Fwww.ti.com%252Fproduct%252FADS131M02).

The input to each channel of the ADC is multiplexed with the help of analog multiplexer (CD4051: https://www.ti.com/lit/ds/symlink/cd4051b.pdf)

Low speed analog outputs

The device provides 8 analog outputs with range +/- 10V. Since a sample and hold circuit is used at the output stage, the output current limit is 1mA and so an external buffer must be used. The DAC used in the solution is DAC101C081 (https://www.ti.com/product/DAC101C081)

SPI SRAM

The device uses a 1 MBit SRAM to store samples acquired from various modules such as high speed ADC, digital inputs, digital output patterns etc. The SRAM used is 23LCV1024 (https://ww1.microchip.com/downloads/en/DeviceDoc/25156A.pdf)

Digital inputs and outputs

The device provides 16 digital inputs and digital outputs. The digital inputs are read by the MCU through a 74HC165 shift register (https://www.ti.com/lit/ds/symlink/sn74hc165.pdf) and the digital outputs are transferred through 74HC595 shift register (https://www.ti.com/lit/ds/symlink/sn74hc595.pdf).

The digital inputs have a range of +/- 3.3V in order to provided reverse voltage protection. The digital outputs have a current limit of 5mA per channel.

Indicator LEDs

There are three indicator LEDs, 1 green, 1 red and 1 yellow. The green LED indicates status of any ongoing communication between host and the device. The red LED indicates any error which has occured in the device. The yello LED indicates that a firmware upgrade is going on the device.

MCU

The microcontroller used in the device is CC2340R52 (https://www.ti.com/product/CC2340R5/part-details/CC2340R52E0RGER) which is an ARM Cortex-M0+ MCU with 512 KB FLASH and 36 KB RAM.

UART, I2C and SPI interfaces

The device provides an SPI, I2C and a UART interface which can be used by the user to transfer bytes to external devices under test.

Software block diagram

alt text

RTOS

The software uses FreeRTOS operating system. This is required by the TI Bluetooth Stack and also for multithreading purposes.

Soc Peripheral Drivers

The following SoC peripheral drivers are required by the product.

DriverDescription
ADCRequired by the high speed analog input module
SPIRequired for accessing the shift registers
and the external SRAM memory
I2CRequired to control DAC IC on the board
UARTRequired for interaction with host PC through RS-485 interface
GPIORequired by all other drivers

Board Peripheral Drivers

DriverPurpose
ADS131M02Controls the 24-bit Sigma-Delta ADC. Performs common operations such as setting ADC PGA gain, calibration, sample acquisition etc.
SN75HC595Write data to the digital outputs through shift registers
SN75HC165Read data from the SOPI shift registers
DAC101C081Required for controlling the external 10-bit for setting the desired output voltage. Also, supports calibration.
23LCV1024Controls the external SRAM IC. Provides read and write APIs for the external memory

Bootloader and Firmware upgrade

The device supports over the air firmware upgrade through the TI Simplelink Connect application for Mobile (https://www.bing.com/search?q=TI+Simplelink+connect&cvid=ed73fef019854968bf1f31853ef2398b&gs_lcrp=EgRlZGdlKgYIABBFGDkyBggAEEUYOTIGCAEQABhAMgYIAhAAGEAyBggDEAAYQDIGCAQQABhAMgYIBRAAGEAyBggGEAAYQNIBCDMyNjZqMGo5qAIIsAIB&FORM=ANAB01&PC=U531). Firmware upgrade over Bluetooth is only supported for mobile phones and not for laptop.

Bluetooth stack

The device uses the Texas Instruments Bluetooth stack. This stack is required for Bluetooth over the air firmware upgrade and also serves as an interface between the mobile/PC and the device.

SSCP stack (serial) & SSCP stack (bluetooth)

The SSCP (Simple System Control Protocol) is the transport protocol which is used by the device to interact with the host via serial interface or Bluetooth. Each interface requires a seperate SSCP responder stack instance. For more details about the SSCP protocol refer to the following Git repository: https://github.com/PatrickAJoseph/simple-system-control-protocol.

SSCP application interface

This software component defines the register callback functions, register definitions related to the application for the SSCP stack.

SSCP responder stack processing task (serial & Bluetooth)

This software components receives bytes from the interface (serial/Bluetooth) and sends the received byets to the SSCP stack for processing.

Device configuration manager

Validates the configuration provided by the user. Also, stores and loads device settings in non-volatile storage.

High speed ADC data acquisition handler

Acquires samples from the high speed acquisition ADC channels and stores conversion results in the external SRAM. Users can then read back the samples stored in the SRAM.

Digital I/O handler

Used to control the digital inputs and the digital outputs of the device through the shift registers as described in the hardware section. Supports setting, clearing, toggling each DO pin and reading state of DI pins.

Analog I/O handler

Controls calibration of each high voltage analog input channel, current channel, resistance measurement channel, thermistor temperature measurement channel and analog output channel. Acquires samples from the analog input channels, performs filtering and then adds calibration parameters to provide processed results. Manages the multiplexing of different analog inputs to the input channels of the sigma-delta converter through the multiplexer.

External SRAM handler

The external SRAM handler is an abstraction component for the external SRAM driver. Responsible for reading and writing data application defined memory regions in the external SRAM memory via the SPI interface.

Digital interfaces handler (UART, SPI, I2C)

Used to handle received communication interface commands (such as transmit, receive commands) for UART, I2C and SPI protocols. Can handle multiple byte transfer for all interfaces and stores received bytes in the external SRAM for post processing.

Parts

142
QtyValueFootprintReferences
32100pCapacitor_SMD:C_0805_2012Metric_Pad1.18x1.45mm_HandSolderC1, C2, C3, C10, C11, C12, C13, C14, C15, C16, C29, C30, C31, C32, C33, C34 +16
32620Resistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolderR1, R2, R10, R11, R12, R13, R14, R15, R16, R18, R19, R20, R21, R22, R23, R24 +16
16D_SchottkyDiode_SMD:D_SMA_HandsolderingDIP0, DIP1, DIP2, DIP3, DIP4, DIP5, DIP6, DIP7, DIP8, DIP9, DIP10, DIP11, DIP12, DIP13, DIP14, DIP15
910kResistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolderR17, R26, R27, R41, R42, R43, R49, R57, R200
8100nCapacitor_SMD:C_0805_2012Metric_Pad1.18x1.45mm_HandSolderC17, C20, C23, C37, C48, C51, C54, C56
81uCapacitor_SMD:C_0805_2012Metric_Pad1.18x1.45mm_HandSolderC18, C21, C24, C38, C49, C52, C55, C57
7SMAJ5.0CADiode_SMD:D_SMA_HandsolderingD33, D34, D35, D36, D37, D38, D39
610uCapacitor_SMD:C_0805_2012Metric_Pad1.18x1.45mm_HandSolderC19, C22, C25, C39, C50, C53
422Resistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolderR48, R51, R53, R55
21kResistor_SMD:R_1206_3216Metric_Pad1.30x1.75mm_HandSolderR39, R40
22.2kResistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolderR58, R59
233Resistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolderR45, R47
274HC165SN74HC165_custom:D16U3, U4
274HC595Package_SO:SOIC-16_3.9x9.9mm_P1.27mmU1, U2
2CD4053BCD4053BE_custom:D16U7, U8
1120Resistor_SMD:R_1206_3216Metric_Pad1.30x1.75mm_HandSolderR38
124LC102523LCV1024:SOIC8-N_MC_MCHU5
1Communication I/FConnector_PinHeader_2.54mm:PinHeader_2x08_P2.54mm_VerticalJ4
1Digital InputsConnector_PinHeader_2.54mm:PinHeader_2x08_P2.54mm_VerticalJ2
1Digital OutputsConnector_PinHeader_2.54mm:PinHeader_2x08_P2.54mm_VerticalJ3
1MCU I/FConnector_PinHeader_2.54mm:PinHeader_2x08_P2.54mm_VerticalJ1
1RS-485 I/FConnector_Phoenix_MC_HighVoltage:PhoenixContact_MCV_1,5_2-G-5.08_1x02_P5.08mm_VerticalJ5
1SN75176ADPackage_SO:SOIC-8_3.9x4.9mm_P1.27mmU6

Questions

How big is the Bluetooth daq digital submodule PCB?

It measures 150 × 150.9 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Bluetooth daq digital submodule use?

142 parts, built around the SN75176AD, 74HC165D, 74HC595 and CD4053BE. 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 Bluetooth daq digital submodule KiCad files?

From the PatrickAJoseph/bluetooth-daq repository on GitHub, at the commit this page was made from: the board is hardware/digital_submodule/bluetooth-daq-digital-submodule/bluetooth-daq-digital-submodule.kicad_pcb and its schematic hardware/analog_submodule/analog_submodule/analog_submodule.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Bluetooth daq digital submodule design in my own project?

Its repository states no licence, so its author keeps all rights: ask PatrickAJoseph before reusing the design.

More from PatrickAJoseph/bluetooth-daq

1
  • 2 layers191.8 × 140.3 mmAnalog submodule, the printed circuit board in 3D

    Analog submodule

    PatrickAJoseph/bluetooth-daq

    A simple low-speed Bluetooth enabled DAQ

    214 parts

Similar boards

  • 2 layersDianqiao, the printed circuit board in 3D

    Dianqiao

    yjmwxwx/stm32asm

    84 parts16GPL-3.0
  • 2 layers301 × 262.6 mm1 Sistema FINAL, the printed circuit board in 3D

    1 Sistema FINAL

    felipesantiagoach-ops/cdp1802-8bit-computer

    8-bit microcomputer based on the RCA CDP1802, the first CMOS microprocessor. Three stages designed in KiCad: two built and tested (assembly programs, UART, Tiny BASIC, Elf/OS) and a final design with an ADC, I²C/SPI…

    207 parts
  • 2 layers40 × 24 mmBLDC driver, the printed circuit board in 3D

    BLDC driver

    walmis/BLDC-Servo

    FOC Motor Controller for 57BLF0x NEMA brushless motor

    107 parts43
  • 4 layers100 × 100 mmMWGEN G1, the printed circuit board in 3D

    MWGEN G1

    MR-DOS/MWGEN-G1

    12.5 MHz - 6400 MHz (LMX2572) or even up to 20 GHz (LMX2595) generator board with int./ext. reference.

    373 parts18GPL-3.0
  • 4 layers65.5 × 74.8 mmEng Thesis, the printed circuit board in 3D

    Eng Thesis

    Roxasch97/Eng_Thesis

    Engineering thesis HW repo

    118 parts2
  • 4 layers78 × 70 mmRadome dish controller, the printed circuit board in 3D

    Radome dish controller

    ay2718/RadomeMotorController

    The Radome CAN protocol is very simple. Send azimuth commands to address 0x1 and elevation commands to address 0x2. Azimuth and elevation reply back from addresses 0x101 and 0x102 respectively.

    89 parts1
  • 2 layers40 × 51 mmAllie reader, the printed circuit board in 3D

    Allie reader

    b4ck5p4c3/allie

    (WIP) Aliro, EMV, and UID reader for ACS

    37 parts1
  • 4 layers80 × 50 mmMianCtrl H7, the printed circuit board in 3D

    MianCtrl H7

    Aiyin4Da-2/Main_Ctrl_H7

    STM32H723VGT6 MainCtrlBoard Author: Aiyin4DaGLD · Hardware: v1.2 · Updated: 2026-08-21

    153 partsMIT