

Sara rx ab
SARA-R4 NB-IoT + Cat-M1 + GNSS application board - NINA-B3 with Secure MQTT
- Size
- 82.4 × 53.3 mm
- Copper layers
- 4
- Thickness
- 1.6 mm
- Parts
- 133
- Nets
- 99
- Pads
- 691
- Tracks, vias
- 1,065, 360
- Pours
- 23
- Routed
- Yes
- KiCad
- KiCad 5 (file 20171130)
- Created
- 18 Dec 2019
- Updated
- 11 Nov 2020
Overview
Sara rx ab is an open-source printed circuit board by ldab, from the ldab/SARA-Rx-application-board repository on GitHub, published under the MIT licence. It is a 4-layer board of 82.4 × 53.3 mm with 133 parts on 99 nets, routed with 1,065 tracks and 360 vias.
It is built around the SHTC3, TPS61021ADSG and USBLC6-2SC6, with the NINA-B3X6, TP4054 and TXS0108EPW among its other parts. Its parts include 34 capacitors, 27 resistors, 13 connectors, 11 ICs and 7 diodes. It belongs with the home automation and IoT and radio and wireless boards of this library.
Main components
12SHTC3
Digital I²C temperature / humidity sensor. Input voltage: 1.62 - 3.6 V Typical accuracy: ±2 %RH and ±0.2 °C Datasheet: https://www.sensirion.com/shtc3/SensirionUncategorisedTPS61021ADSG
WSON-8-EP(2x2)-40℃~+125℃@(TJ) 1 1.8V~4V 17uA 2MHz 3A 500mV~4.4V Adjustable Boost Boost Built-in Yes WSON-8-EP(2x2) DC-DC Converters ROHSTexas InstrumentsDC-DC ConvertersUSBLC6-2SC6
SOT-23-60.35pF、0.8pF 100nA 150W@8/20us 15V 2 5V 6A@8/20us 6V ESD SOT-23-6 ESD and Surge Protection (TVS/ESD) ROHSUMWESD And Surge Protection (TVS/ESD)NINA-B3X6
LGALGA New Arrivals ROHSu-bloxUncategorisedTP4054
SOT-23-5L-40℃~+85℃ 1 25uA 4.2V 4.2V~6.5V 500mA Charging IC Lithium Battery Not supported 恒流充电、恒压充电、涓流充电、自动再充电、充电终止、可编程充电电流、软启动、欠压锁定 SOT-23-5L Battery Management ROHSUMWBattery ManagementTXS0108EPW
TSSOP-20-40℃~+85℃ 1 1.4V~3.6V 1.65V~5.5V 60Mbps 8 Automatic direction detection、Output enable high-impedance、Integrated pull-up resistor Bidirectional Level translator Push-Pull、Open-drain TSSOP-20 Translators, Level Shifters ROHSTexas InstrumentsTranslators, Level ShiftersLTST-C191KGKT
0603-55℃~+85℃ 130° 20mA 2V 35mcd 567.5nm~576.5nm 574nm 75mW Discrete Diode Water Clear Yellow Green 0603 LED Indication - Discrete ROHSLite-OnLED Indication - DiscretePMEG4010CEJ
SOD-323F1 Independent 10A 1A 40V 50uA@40V 570mV@1A SOD-323F Schottky Diodes ROHSNexperiaSchottky Diodes19-217/R6C-AL1M2VY/3T
0603-40℃~+85℃ 1.95V 11.5mcd~28.5mcd 120° 5mA 60mW 617.5nm 632nm Red Water Clear 0603 LED Indication - Discrete ROHSEverlight ElectronicsLED Indication - DiscretePESD5V0U2BT
SOT-23-65℃~+150℃ 2 2.9pF 5.5V 5V 5nA Bidirectional ESD IEC 61000-4-2 SOT-23 ESD and Surge Protection (TVS/ESD) ROHSNexperiaESD And Surge Protection (TVS/ESD)DFE252012P-R47M=P2
100827mΩ 470nH 4A 5.7A ±20% 1008 Power Inductors ROHSMurataPower InductorsFTSH-105-01-L-D
插件,P=1.27mm-55℃~+125℃ 1.27mm 1.27mm 10P 2 2.29mm 2.51mm 3.05mm 3.4A Black Gold Phosphor bronze Pin Header Through Hole Plugin,P=1.27mm Pin Headers ROHSSamtecPin Headers
README
README.mdSARA-Rx application board
SARA-R4 NB-IoT + Cat-M1 + GNSS application board - NINA-B3 with Secure MQTT
:heavy_exclamation_mark:BEFORE YOU DO ANYTHING, CHECK BATTERY POLARITY:heavy_exclamation_mark:
TODO
- More details about battery etc...
- !!! Better Socket close URC handler.
- Check AT response based on the last chars, in order to avoid missing URCs when after "OK" for example
- Implement Subscribe;

Energy Budget
- 88mA active current;
- Code takes ~10 seconds to execute;
- Wakes every hour;
- 40uA Sleep current;
- 10 hours of light available;
- V charge ready = 3.67V;
- V Over discharge = 3.6V;
- V Over charge = 4.12V;
Source Power Required = 3.8mW
Storage Required = 4.73mAh


Sleep Current
| Component | Current |
|---|---|
| SARA-R410 | 7uA |
| NINA-B3 | 3uA |
| Batt ADC | 3uA |
| SHTC3 | 0.5uA |
| TP4054 | 1uA |
| TXS0108 | 5uA(?) |
| TPS61021A | 17uA |
| TOTAL | ~37uA |
Nordic SDK
- This is based on nRF5_SDK_16.0.0_98a08e2, get yours here: https://www.nordicsemi.com/Software-and-tools/Software/nRF5-SDK/Download

- Sign in to the AWS IoT Console
- Register a Device in the Registry
- Configure Your Device
- View Device MQTT Messages with the AWS IoT MQTT Client
https://docs.aws.amazon.com/iot/latest/developerguide/iot-gs.html
- 120mA active current;
- Code takes 15 seconds to execute;
- Wakes every hour;
- 2mA Sleep current This needs to be optimized;
- 10 hours of light available;
- V charge ready = 3.67V;
- V Over discharge = 3.6V;
- V Over charge = 4.12V;
- Clone this repo to a local folder
> git clone https://github.com/ldab/SARA-Rx-application-board - Point the
$(SDK)@./code/ninab3/blank/ses/libuarte_pca10056.emProjectto where you have installed Nordic SDK, for exampleC:\nRF\nRF5_SDK_16.0.0_98a08e2 - Like so:
macros="CMSIS_CONFIG_TOOL=C:/nRF/nRF5_SDK_16.0.0_98a08e2/external_tools/cmsisconfig/CMSIS_Configuration_Wizard.jar;SDK=C:/nRF/nRF5_SDK_16.0.0_98a08e2" - Open the SEGGER Embedded Studio project file located in
./code/ninab3/blank/ses/libuarte_pca10056.emProject
- PS. don't forget to set the NFC Pins as GPIO on the Preprocessor:
CONFIG_NFCT_PINS_AS_GPIOS
Ref. https://devzone.nordicsemi.com/f/nordic-q-a/44638/how-to-move-an-sdk-example-out-of-the-sdk-tree
IoT Dashboard
-
Adafruit https://io.adafruit.com provides a free MQTT broker with a Dashboard allowing this project to be displayed publicly with little to no effort
- Create an account and insert your KEY as the
MQTT_PASS MQTT_USERis the username used for creating the account.
- Create an account and insert your KEY as the
-
Adafruit expect data as a json, for example:
text sprintf(_msg, "{\"feeds\": {\"T\": %.01f,\"H\": %.01f,\"Bpc\": %d,\"RSRP\": %.02f,\"Bv\": %.02f}}", temperature, humidity, batt_lvl_in_percentage, modemInfo.RSRP, _b) -
The topic, groups and feeds are created automagically, on the example the MAC address is added as an identifier:
text sprintf(topic, "lbispo/g/nina_%X/json", NRF_FICR->DEVICEADDR[0]);
https://io.adafruit.com/lbispo/dashboards/moree?kiosk=true
Efficiency
Schematic
PCB
BOM
Enclosure
Kown issues, limintations
- MQTT Socket Implementaition can only publish QoS 0 messages.
Thoughts or Improvements
- Use STATUS 2 of AEM10941 as last grasp;
- Control boost converter EN, in order to turn SARA Off;
- Remove boost converter, as it does not boost a lot since Vbatt ON = 3.6V.
- SARA RESET Pin access;
- Use 101b AEM10941 Configuration in order to Vovdis = 3.0V givin extra ~20% battery (?).
- Open Drain 74LVC3G07 buffer on NINA LED, in order to avoid leakage.
Credits
- MQTTBox for Windows in order to communicate with the broker and check messages;
- CloudMQTT Free Cloud Broker;
- MQTT implementation inspired and based on knolleary PubSub Client;
- AT Commands implementation inspired on vshymanskyy TinyGSM;
- GitHub Shields and Badges created with Shields.io;
Parts
133| Qty | Value | Footprint | References |
|---|---|---|---|
| 10 | 0R | Resistor_SMD:R_0402_1005Metric | R6, R8, R11, R12, R15, R16, R24, R25, R26, R27 |
| 10 | 100n | Capacitor_SMD:C_0603_1608Metric | C1, C2, C3, C5, C6, C7, C19, C23, C33, C34 |
| 7 | 10u | Capacitor_SMD:C_0603_1608Metric | C8, C9, C10, C11, C12, C13, C15 |
| 6 | 10K | Resistor_SMD:R_0603_1608Metric | R1, R2, R3, R17, R19, R23 |
| 5 | 47p | Capacitor_SMD:C_0603_1608Metric | C17, C18, C20, C21, C26 |
| 4 | 1K | Resistor_SMD:R_0603_1608Metric | R13, R14, R18, R20 |
| 4 | BLM18EG221SN1D | Inductor_SMD:L_0603_1608Metric | FB1, FB2, FB3, FB4 |
| 4 | CONN_01X01 | Socket_Arduino_Uno:Arduino_1pin | P4, P5, P6, P7 |
| 4 | Jumper_NC_Small | Connector_PinHeader_2.00mm:PinHeader_1x02_P2.00mm_Vertical | JP1, JP2, JP3, JP4 |
| 4 | TestPoint | TestPoint:TestPoint_Pad_D1.5mm | TP1, TP2, TP3, TP4 |
| 3 | 1M±0.1% | Resistor_SMD:R_0805_2012Metric | R4, R21, R22 |
| 3 | LTST-C191KGKT | LED_SMD:LED_0603_1608Metric | GPIO1, GPIO2, LED3 |
| 3 | PMEG4010CEJ | Diode_SMD:D_SOD-323F | D1, D2, D3 |
| 3 | USBLC6-2SC6 | Package_TO_SOT_SMD:SOT-23-6 | U1, U2, U4 |
| 2 | 10n | Capacitor_SMD:C_0603_1608Metric | C22, C27 |
| 2 | 10u | SamacSys_Parts:L_Taiyo-Yuden_NRH30xx | L1, L2 |
| 2 | 15p | Capacitor_SMD:C_0603_1608Metric | C24, C32 |
| 2 | 19-217/R6C-AL1M2VY/3T | LED_SMD:LED_0603_1608Metric | LED1, LED2 |
| 2 | 4.7p | Capacitor_SMD:C_0603_1608Metric | C14, C31 |
| 2 | Bridge | custom:4Layer_15mil | J2, J4 |
| 2 | DNP | Resistor_SMD:R_0402_1005Metric | R7, R9 |
| 2 | KMR2 | SamacSys_Parts:SW_Push_1P1T_NO_CK_KMR2 | SW2, SW3 |
| 2 | MUN5214DW1T1G | Package_TO_SOT_SMD:SOT-363_SC-70-6 | Q1, Q2 |
| 2 | PESD5V0U2BT | Package_TO_SOT_SMD:SOT-23 | D4, D5 |
| 1 | 0.3p | Capacitor_SMD:C_0603_1608Metric | C30 |
| 1 | 10 | Resistor_SMD:R_0603_1608Metric | R10 |
| 1 | 100u | Capacitor_Tantalum_SMD:CP_EIA-3528-21_Kemet-B | C16 |
| 1 | 1u | Capacitor_SMD:C_0603_1608Metric | C4 |
| 1 | 267K | Resistor_SMD:R_0603_1608Metric | R5 |
| 1 | 27n | Inductor_SMD:L_0603_1608Metric | L4 |
| 1 | 39n | Inductor_SMD:L_0603_1608Metric | L6 |
| 1 | 5p | Capacitor_SMD:C_0603_1608Metric | C28 |
| 1 | 68p | Capacitor_SMD:C_0603_1608Metric | C25 |
| 1 | 8.2n | Inductor_SMD:L_0603_1608Metric | L5 |
| 1 | AEM10941 | Package_DFN_QFN:QFN-28-1EP_5x5mm_P0.5mm_EP3.35x3.35mm | U6 |
| 1 | Analog | Socket_Arduino_Uno:Socket_Strip_Arduino_1x06 | P2 |
| 1 | Bridge | custom:4Layer_square | J6 |
| 1 | Conn_Coaxial | Connector_Coaxial:SMA_Amphenol_132291_Vertical | ANT2 |
| 1 | DFE252012P-R47M=P2 | SamacSys_Parts:INDC2520X120N | L3 |
| 1 | DNP | Capacitor_SMD:C_0603_1608Metric | C29 |
| 1 | Digital | Socket_Arduino_Uno:Socket_Strip_Arduino_1x08 | P3 |
| 1 | EXT Antenna | Connector_Coaxial:SMA_Amphenol_132291_Vertical | ANT4 |
| 1 | EXT BATT | Connector_JST:JST_PH_B2B-PH-SM4-TB_1x02-1MP_P2.00mm_Vertical | BT2 |
| 1 | FTSH-105-01 | custom:SWD_JTAG | J3 |
| 1 | HT42B534-MSOP | Package_SO:MSOP-10_3x3mm_P0.5mm | U5 |
| 1 | LIR2450 | Battery:BatteryHolder_Keystone_3008_1x2450 | BT1 |
| 1 | LOGO | SamacSys_Parts:MoreE | G*** |
| 1 | M830120 | custom:M830120 | ANT1 |
| 1 | NINA-B3 | custom:NINA-B3 | U10 |
| 1 | PCB ANT 1004795 | custom:1009475 | ANT3 |
| 1 | PWR_ON | SamacSys_Parts:SW_Push_1P1T_NO_CK_KMR2 | SW1 |
| 1 | Power | Socket_Arduino_Uno:Socket_Strip_Arduino_1x08 | P1 |
| 1 | SARA-Rx | RF_GSM:ublox_SARA-G3_LGA-96 | U9 |
| 1 | SHTC3 | Package_DFN_QFN:AMS_QFN-4-1EP_2x2mm_P0.95mm_EP0.7x1.6mm | U11 |
| 1 | SMO-1512 | SamacSys_Parts:SMO1512 | J5 |
| 1 | SOLAR PV | Connector_PinHeader_2.00mm:PinHeader_1x02_P2.00mm_Vertical | J1 |
| 1 | TP4054 | Package_TO_SOT_SMD:SOT-23-5 | U7 |
| 1 | TPS61021A | Package_SON:WSON-8-1EP_2x2mm_P0.5mm_EP0.9x1.6mm_ThermalVias | U8 |
| 1 | TXS0108EPW | Package_SO:TSSOP-20_4.4x6.5mm_P0.65mm | U3 |
| 1 | TestPoint | TestPoint:TestPoint_Pad_D1.0mm | TP5 |
| 1 | USB_B_Micro | SamacSys_Parts:C77238 | USB1 |
| 1 | USB_B_Micro_C145795 | custom:USB_Micro-B_U-D-M5DD-W-1_VERTICAL | USB3 |
| 1 | USB_B_Micro_C77238 | SamacSys_Parts:C77238 | USB2 |
The 129 most common of 133 parts.
Questions
How big is the Sara rx ab PCB?
It measures 82.4 × 53.3 mm and has 4 copper layers, 1.6 mm thick.
What parts does the Sara rx ab use?
133 parts, built around the SHTC3, TPS61021ADSG, USBLC6-2SC6 and NINA-B3X6. 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 Sara rx ab KiCad files?
From the ldab/SARA-Rx-application-board repository on GitHub, at the commit this page was made from: the board is PCB/sara-rx-ab.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.
Can I use the Sara rx ab design in my own project?
Its repository publishes it under the MIT licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).
Similar boards
- 2 layers

- 2 layers35 × 53 mm

- 4 layers55 × 30 mm

Stitch candidate
EthanKahn08/example-pcb
Design-stage RP2040 USB-C microSD reader: KiCad hardware, verification evidence, UART bring-up firmware, and assembly plan. Unbuilt and untested.
68 parts - 4 layers90 × 130 mm

Adventure board
picorubykaigi/adventure-board-pcb
PicoRubyKaigi 2026 の オリジナルRP2350 基板「Adventure Board」の設計データ(KiCad 9)
362 partsCERN-OHL-P-2.0 - 2 layers132 × 66.4 mm

Lighthouse display
mwuerms/lighthouse_hardware
+ lighthouse + buoy: hand sender, ble advertising
137 partsMIT - 2 layers229.7 × 135.6 mm

Morse mesh v2
eihli/morse-mesh
This is the current hardware source for future Morse Mesh revisions. It is a professionally reviewed redraw of the frozen, fabricated v1 board, not a pin-compatible replacement: notably, KEYIN moved from v1 PA0 to v2…
75 parts1 - 2 layers40.7 × 52.1 mm

Probe
JamieG/temp-sensor
A wireless temperature monitoring system: small battery-powered probes broadcast temperature, humidity, and battery level over BLE, and a Wi-Fi-connected hub collects those readings and uploads them to a webhook.
11 parts - 4 layers57.2 × 49.2 mm


