Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

History

30 Commits

Repository files navigation

RadioCore_Kit

RadioCore_Kit is the shared Arduino library for RadioCore series hardware. It provides compile-time board configuration used by portable, board-adaptive examples.

Installation

Open Library Manager in the Arduino IDE, search for RadioCore_Kit, and select Install. Arduino CLI users can install the library with:

arduino-cli lib install RadioCore_Kit

For development versions that have not been released, clone or copy this repository into the libraries directory of your Arduino sketchbook, then restart the Arduino IDE if it is already running.

Sketches can include the library with:

#include<RadioCore_Kit.h>

Dependencies

The library declares these Arduino dependencies:

  • Adafruit BME280 Library
  • BH1750 version 1.3.0 or newer from claws/BH1750
  • Adafruit NeoPixel
  • ESP32Servo for ESP32-based RadioCore boards

Dependency-aware Arduino tools can install these libraries automatically. RadioCore_Kit does not copy, wrap, or re-export them.

The Heltec nRF52 board package supplies the Arduino official Servo library used by Servo_Control on RC52; no separate Servo library installation is required.

NV3001B_Display additionally requires the NV3001B-enabled Quency-D/Arduino_GFX fork. Install that fork manually in the Arduino sketchbook libraries directory. It is not listed in library.properties because NV3001B support has not been merged into the Arduino Library Manager version of GFX Library for Arduino.

Examples

Open the examples from File > Examples > RadioCore_Kit in the Arduino IDE. Board configuration macros select the supported pins and peripherals at compile time.

ExamplePurposeDocumentation
BH1750_ReadRead ambient light over Sensor I2CGuide
CH01_ReadEstimate CH01 gas concentration and trendGuide
CO01_ReadRun the CO01 warm-up cycle and estimate concentrationGuide
VO01_ReadEstimate VO01 gas concentration and trendGuide
Soil_Moisture_ReadRead and calibrate an analog soil moisture sensorGuide
NV3001B_DisplayExercise the 128-by-220 color TFTGuide
WS2812Run a three-color breathing animationSketch
Motor_ControlDrive two direction inputs on an external motor driverSketch
Relay_ControlToggle an active-high relay moduleSketch
Servo_ControlControl both channels of an RS-SV01 servo driverSketch

Guided examples include their dependencies, wiring, board differences, runtime behavior, and applicable calibration or limitation notes. Basic examples keep their essential connection and safety notes in the sketch header.

Adding a board configuration

Add a hardware-facts-only header under src/boards/, then select it from src/RadioCoreBoardConfig.h. Keep peripheral initialization and example behavior out of the board header.

A new board declares only the capabilities it supports:

  • Sensor I2C instance, pins, frequency, and optional sensor-power control for BH1750_Read.
  • ADC pins and optional power controls for CH01_Read, VO01_Read, CO01_Read, and Soil_Moisture_Read; CO01 also requires its control pin.
  • NV3001B pins, active levels, SPI frequency, and one supported display transport for NV3001B_Display.
  • A data pin for WS2812, two motor-driver inputs for Motor_Control, a relay output and active level for Relay_Control, and two PWM pins plus driver enable facts for Servo_Control.

The shared examples currently support the ESP32/WiFi Kit Series and Heltec nRF52 peripheral APIs used by RC32, RCC6, and RC52. A board with a different I2C, ADC, SPI, or servo API may require a new architecture path in the relevant example.

Unknown boards can still include RadioCore_Kit.h. All example capability macros default to disabled, and an unsupported example reports its missing capability during preprocessing.

License

RadioCore_Kit is released under the MIT License. See LICENSE.

About

Arduino library for RadioCore series hardware.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages