Skip to content

Sensor Reading Examples

Documentation in Progress

This documentation is currently being developed. The underlying sensor reading functionality is implemented and working in the core Belay.NET library.

Status: ✅ Core functionality complete, 📝 Documentation in progress
Expected completion: After Issue 002-106 (Cross-Component Integration Layer)

Coming Soon

This page will provide practical examples for reading sensor data from MicroPython devices, including:

  • Temperature Sensors: DS18B20, DHT22, and analog temperature sensors
  • Environmental Sensors: Humidity, pressure, and air quality sensors
  • Motion Sensors: Accelerometers, gyroscopes, and PIR sensors
  • Light Sensors: Photoresistors, photodiodes, and color sensors
  • Error Handling: Robust sensor failure detection and recovery
  • Data Validation: Sensor range checking and data filtering
  • Performance Tips: Optimizing sensor polling rates and power consumption

Quick Preview

csharp
// Example of what's coming - basic temperature reading
public class TemperatureSensor : Device
{
    [Setup]
    public async Task InitializeAsync() =>
        await ExecuteAsync("from machine import Pin, ADC; sensor = ADC(Pin(26))");
        
    [Task(Cache = true, TimeoutMs = 5000)]
    public async Task<float> ReadTemperatureAsync() =>
        await ExecuteAsync<float>("sensor.read_u16() * 3.3 / 65536 * 100");
}

Need help now? Check our GitHub Discussions or review the core API documentation.

Released under the Apache License 2.0.