
MetSensorSuiteEmbeddedFirmware
Lowcost-Radiosonde-Research-Project/MetSensorSuiteEmbeddedFirmware
This is the source code that runs on the Sensor Suite pico which handles reading from sensors, calculating needed products and building data packets

A simple breakout-style radio module for long-range sub-GHz link without designing an RF front end from scratch.
CC1101 is an open-source printed circuit board by sneakylizard123-4, from the sneakylizard123-4/CC1101_Module repository on GitHub, published under the CERN-OHL-P-2.0 licence. It is a 4-layer board of 50 × 30 mm with 47 parts on 33 nets, routed with 208 tracks and 43 vias.
It is built around the CC1101RGP and CC1190. Its parts include 27 capacitors, 11 inductors, 2 resistors, 2 ICs and 2 connectors. It belongs with the radio and wireless boards of this library.
A 868/915 MHz sub-GHz radio module built around the TI CC1101 transceiver and a CC1190 PA/LNA front end, on a hand-routed 4-layer board.
A simple breakout-style radio module for long-range sub-GHz link without designing an RF front end from scratch. An SPI header brings the CC1101 onto any microcontroller bus, and the CC1190 adds a power amplifier and low-noise amplifier between the transceiver and an edge-mount SMA.

The module is an RF front end in the middle of a radio link: the host brings SPI and power to the header, the CC1101 handles modulation and packet framing, and the CC1190 amplifies the signal on the way to the antenna.
| Block | Part | Role |
|---|---|---|
| Transceiver | CC1101 | sub-GHz FSK/OOK transceiver, 300-928 MHz |
| Range extender | CC1190 | power amplifier + low-noise amplifier front end |
| Antenna connector | SMA (edge mount) | 50 ohm coax or whip antenna |
| Reference clock | 26 MHz crystal | CC1101 reference oscillator |
| Interface | 1x08 header | SPI, power, and HGM control |
| RF matching | 0603 caps and inductors | balun and match between CC1101, CC1190, and 50 ohm |
graph TD
H1["J2 pin 1: +3.3 V"] --> RAIL["+3.3 V rail"]
RAIL --> U1["U1 CC1101 VDD (pins 4, 9, 11, 14, 15, 18)"]
RAIL --> CHOKE["L11 10 nH choke"]
CHOKE --> U2["U2 CC1190 VDD (pins 13, 15, 16)"]
RAIL --> DEC["10 x 100 nF decoupling"]
DEC --> GND["GND"]
U1 --> GND
U2 --> GNDSignal flow (TX): MCU -> SPI header -> CC1101 -> RF_P/RF_N -> balun and match -> CC1190 PA_IN -> CC1190 PA_OUT -> output match -> SMA -> antenna.
Signal flow (RX): antenna -> SMA -> RX match -> CC1190 LNA_IN -> LNA_OUT -> CC1101 -> SPI -> MCU.
GDO0 asserts PA_EN and GDO2 asserts LNA_EN. HGM is brought out to the header so the host can switch the CC1190 into high-gain mode with a GPIO or jumper.



Schematic sheets, in reading order:





None shipped - this is a passive module. It works with any SPI master that speaks the CC1101 protocol, for example the cc1101 Arduino library or register settings exported from TI SmartRF Studio. The two GDO lines are consumed by the on-board CC1190, so the host only needs MOSI, MISO, SCLK, CS, and optionally HGM for high gain mode.
Solder a 1x08 header to J2, or use the board as a soldered-down daughter card:
| Pin | Function |
|---|---|
| 1 | +3.3 V (2.0-3.6 V) |
| 2 | GND |
| 3 | SCLK |
| 4 | MOSI |
| 5 | MISO |
| 6 | ~CS |
| 7 | HGM (CC1190 high-gain mode, active high) |
| 8 | GND |
Pull HGM high for maximum PA output, or tie it low for the default gain. Keep the supply clean and place a bulk capacitor near the header if the module is fed over a long cable.
45 electrical parts plus two mechanical mounting holes. Full BOM: BOM.csv
| Item | Cost |
|---|---|
| Components, per board (45 parts) | $13.27 |
| PCB, 4-layer, 5 pcs (estimate) | $10.00 |
| Components for 5 boards | $66.35 |
| Stencil (optional, for the QFN pads) | $10.00 |
| Estimated total, 5 boards, no stencil, before shipping | $76.35 |
| Shipping | varies |
The edge-mount SMA is the single most expensive part at $8.56 each, so most of the component cost is the connector.
kicad/production/bom.csv and kicad/production/positions.csv.CC1101_Module/
|-- kicad/ # KiCad project, schematic, PCB, production files
| |-- CC1101.kicad_pro
| |-- CC1101.kicad_sch # root schematic
| |-- CC1101.kicad_pcb # routed 4-layer board
| |-- cc1101.kicad_sch # CC1101 core sheet
| |-- palna.kicad_sch # CC1190 PA/LNA sheet
| |-- sma.kicad_sch # SMA and output match
| |-- connector.kicad_sch # 1x08 header
| `-- production/ # gerbers, drill, BOM, positions
|-- parts/ # custom symbols, footprints, 3D models
|-- cad/ # STEP export of the assembled board
|-- blender/ # PCB3D export for Blender
|-- images/ # 3D renders, PCB plots, schematic exports
|-- BOM.csv # machine-readable BOM with links and total
|-- JOURNAL.md # build log
|-- README.md # this file
|-- LICENSE # CERN-OHL-P-2.0 (hardware)
`-- LICENSE-MIT # MIT (docs and example code)Hardware (schematic, PCB, footprints): CERN-OHL-P-2.0. See LICENSE.
Docs and example code: MIT. See LICENSE-MIT.
SPDX-License-Identifier: CERN-OHL-P-2.0
SPDX-License-Identifier: MIT
| Qty | Value | Footprint | References |
|---|---|---|---|
| 10 | 100nF | Capacitor_SMD:C_0603_1608Metric | C1, C19, C20, C21, C22, C23, C24, C25, C26, C27 |
| 4 | 12nH | Inductor_SMD:L_0603_1608Metric | L1, L2, L5, L6 |
| 4 | 47pF | Capacitor_SMD:C_0603_1608Metric | C9, C15, C17, C18 |
| 3 | 12pF | Capacitor_SMD:C_0603_1608Metric | C10, C14, C16 |
| 2 | 1.5pF | Capacitor_SMD:C_0603_1608Metric | C3, C5 |
| 2 | 18nH | Inductor_SMD:L_0603_1608Metric | L3, L4 |
| 2 | 27pF | Capacitor_SMD:C_0603_1608Metric | C7, C8 |
| 2 | 3.3pF | Capacitor_SMD:C_0603_1608Metric | C6, C13 |
| 2 | MountingHole | MountingHole:MountingHole_3.2mm_M3 | H3, H4 |
| 1 | 0.5pF | Capacitor_SMD:C_0603_1608Metric | C11 |
| 1 | 100pF | Capacitor_SMD:C_0603_1608Metric | C4 |
| 1 | 10nH | Inductor_SMD:L_0603_1608Metric | L11 |
| 1 | 1pF | Capacitor_SMD:C_0603_1608Metric | C2 |
| 1 | 2.2nH | Inductor_SMD:L_0603_1608Metric | L9 |
| 1 | 26MHz | Crystal:Crystal_SMD_2520-4Pin_2.5x2.0mm | X1 |
| 1 | 3.3k | Resistor_SMD:R_0603_1608Metric | R2 |
| 1 | 3.3nH | Inductor_SMD:L_0603_1608Metric | L7 |
| 1 | 3.9nH | Inductor_SMD:L_0603_1608Metric | L8 |
| 1 | 56k | Resistor_SMD:R_0603_1608Metric | R1 |
| 1 | 7.5nH | Inductor_SMD:L_0603_1608Metric | L10 |
| 1 | 8.2pF | Capacitor_SMD:C_0603_1608Metric | C12 |
| 1 | CC1101 | Package_DFN_QFN:Texas_RGP0020D_VQFN-20-1EP_4x4mm_P0.5mm_EP2.7x2.7mm_ThermalVias | U1 |
| 1 | CC1190 | Package_DFN_QFN:VQFN-16-1EP_3x3mm_P0.5mm_EP1.6x1.6mm_ThermalVias | U2 |
| 1 | Conn_01x08 | Connector_PinHeader_2.54mm:PinHeader_1x08_P2.54mm_Vertical | J2 |
| 1 | Conn_Coaxial | Connector_Coaxial:SMA_Amphenol_132289_EdgeMount | J1 |

Lowcost-Radiosonde-Research-Project/MetSensorSuiteEmbeddedFirmware
This is the source code that runs on the Sensor Suite pico which handles reading from sensors, calculating needed products and building data packets




Rodemfr/MicronetToNMEA
A NMEA 0183 converter for Raymarine's wireless instruments ... and much more !


jp112sdl/HB-Dis-EP-42BW
4.2" ePaper Display mit 10 Tasterkanälen für Homematic

OnionDAO-git/oniondao-badge
An open-source, hacker-conference-style electronic badge built around the ESP32-S3-WROOM-1-N8R8 (8 MB flash + 8 MB Octal PSRAM), with swappable RF / audio / storage modules, an e-paper (or TFT) display socket, a secure…
It measures 50 × 30 mm and has 4 copper layers, 1.61 mm thick.
47 parts, built around the CC1101RGP and CC1190. 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.
From the sneakylizard123-4/CC1101_Module repository on GitHub, at the commit this page was made from: the board is kicad/CC1101.kicad_pcb and its schematic kicad/CC1101.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Its repository publishes it under the CERN-OHL-P-2.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).