Lost + Found CC1101 433MHz radio transceiver driver library for Raspberry Pi Pico C SDK
  • C 93.2%
  • Python 4.3%
  • CMake 2.5%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
2026-08-01 19:54:52 -07:00
include Refactor: Prefix source and header files with lf_ 2026-08-01 19:13:11 -07:00
src Refactor: Prefix source and header files with lf_ 2026-08-01 19:13:11 -07:00
CMakeLists.txt Refactor: Prefix source and header files with lf_ 2026-08-01 19:13:11 -07:00
conanfile.py Fix Conan package structure by placing CMakeLists.txt at root 2026-08-01 19:54:52 -07:00
README.md Refactor: Prefix source and header files with lf_ 2026-08-01 19:13:11 -07:00

lf-cc1101

Reusable CC1101 433MHz transceiver driver library for the Raspberry Pi Pico C SDK, packaged as a Conan package. This is designed for the Ebyte E07-M1101D v2.0 433MHz CC1101 transceiver.

This is part of the Lost + Found suite of projects.

🛠️ Usage with CMake

Copy the driver directory into your project as a subdirectory:

add_subdirectory(lib/lf-cc1101)

target_link_libraries(your_project PRIVATE
    lf-cc1101
)

And in your C code:

#include "lf_cc1101.h"

⚙️ Prerequisites: Setting up Conan with uv

To install the Conan CLI package manager securely and in an isolated environment on your system, it is recommended to use uv:

# Install Conan globally as an isolated tool
uv tool install conan

This makes the conan executable available on your PATH immediately and keeps your system's Python packages clean.


📦 Consumption via Forgejo Conan Registry

The package is hosted and distributed through the Forgejo Conan Package Registry at git.clowderlabs.com.

1. Add the Remote Registry

Add the remote repository to your local Conan configuration:

conan remote add clowder https://git.clowderlabs.com/api/packages/blong/conan

2. Authenticate

Log in using your personal access token:

conan remote login -p <your_token> clowder <username>

3. Add to your Project

Add the dependency to your conanfile.txt (or conanfile.py):

[requires]
lf-cc1101/0.0.1

Then install the dependencies:

conan install . --output-folder=build --build=missing

Expected Output of conan install

When running conan install, Conan downloads the source package from your remote Forgejo registry, unpacks it locally, and generates the necessary target files for CMake:

======== Computing dependency graph ========
lf-cc1101/0.0.1: Not found in local cache, looking in remotes...
lf-cc1101/0.0.1: Checking remote: clowder
Connecting to remote 'clowder' with user 'blong'
lf-cc1101/0.0.1: Downloaded recipe revision 8809dc809c8e0261b8f0ab07c5e434dd

======== Computing necessary packages ========
Requirements
    lf-cc1101/0.0.1#8809dc809c8e0261b8f0ab07c5e434dd:da39a3ee5e6b4b0d3255bfef95601890afd80709 - Build

======== Installing packages ========
lf-cc1101/0.0.1: Sources downloaded from 'clowder'

-------- Installing package lf-cc1101/0.0.1 (1 of 1) --------
lf-cc1101/0.0.1: Building from source
lf-cc1101/0.0.1: Package lf-cc1101/0.0.1:da39a3ee5e6b4b0d3255bfef95601890afd80709
>>> Source step
lf-cc1101/0.0.1: Copying sources to build folder
>>> Package step
Calling package()
package(): Packaged 1 '.c' file: lf_cc1101.c
package(): Packaged 1 '.txt' file: CMakeLists.txt
package(): Packaged 1 '.h' file: lf_cc1101.h
Package 'da39a3ee5e6b4b0d3255bfef95601890afd80709' created

======== Finalizing install (deploy, generators) ========
Generator 'CMakeDeps' calling 'generate()'
CMakeDeps necessary find_package() and targets for your CMakeLists.txt
    find_package(lf-cc1101)
    target_link_libraries(... lf-cc1101::lf-cc1101)
Install finished successfully

🛠️ Local Testing

To test building and exporting this Conan package locally without uploading, run:

conan export .

This will register lf-cc1101/0.0.1 in your local Conan cache for offline testing.