Meadow Foundation and Hardware Reference

website·Indexed 34 days ago

https://developer.wildernesslabs.co/

Developer documentation for the Meadow platform, featuring the Meadow.Foundation API for hardware peripherals such as TFT SPI displays, OLEDs (SSD130x), e-Paper displays, and TEA5767 radio. Includes a comprehensive hardware reference covering electronic components like MOSFETs, various diode types (Zener, Schottky, LED), and circuit calculation guides.

Tokens
703K
Snippets
4.6K
Records
6.4K
Agent score
69%

What's inside Meadow

  1. Overview of Meadow.Desktop for rapid prototyping

    Meadow.Desktop allows developers to run Meadow code on Windows, macOS, and various Linux distributions (including WSL2). It is designed for quick prototyping and high-responsiveness environments. Key capabilities include:

    • Hardware Access: With compatible single-board computers (SBCs) or FT232H modules, developers can access GPIO pins, SPI, and I2C.
    • Graphics Emulation: An emulated IDisplay object can be used to render graphics to a standard window on Windows before deploying to physical component displays.
    • Performance: Running applications on desktop hardware allows for more intensive workloads that require higher processing power than standard Meadow modules.
  2. Overview of Meadow.Gateways.Bluetooth Namespace

    The Meadow.Gateways.Bluetooth namespace contains the classes, interfaces, and types required to implement Bluetooth GATT (Generic Attribute Profile) functionality on Meadow devices. It provides a structured way to define Bluetooth devices, manage services, and interact with characteristics using strongly-typed values.
  3. Overview of EPaperMonoBase for monochrome ePaper displays

    The EPaperMonoBase class is an abstract base class located in the EPaper.dll assembly. It provides a standardized interface for monochrome ePaper displays, implementing IPixelDisplay and IDisplay. It manages the pixel buffer and basic drawing primitives required for monochrome ePaper hardware.
    public abstract class EPaperMonoBase : EPaperBase, ISpiPeripheral, IDisposable, IPixelDisplay, IDisplay
  4. Overview of Meadow.Units measurement types

    The Meadow.Units namespace provides strongly-typed representations for a wide variety of physical measurements. These are primarily implemented as structs to ensure type safety when handling different units of measure. Key measurement types include:

    • Electrical: Voltage, Current, Resistance, Charge, Conductivity, ApparentPower, ReactivePower, ReactiveEnergy.
    • Motion & Mechanics: Acceleration (and Acceleration3D), AngularVelocity (and AngularVelocity3D), AngularAcceleration (and AngularAcceleration3D), Speed, Torque, Mass, Length, Volume, Pressure.
    • Environmental: Temperature, RelativeHumidity, AbsoluteHumidity, PotentialHydrogen (pH), Turbidity, Concentration, ConcentrationInWater, Illuminance, Density, ParticleDensity.
    • Spatial & Temporal: GeoLocation (latitude/longitude), GeographicCoordinate, Azimuth, Angle, TimePeriod, Frequency.
    • Other: DigitalStorage, Energy, MagneticField (and MagneticField3D).
  5. Overview of Meadow.Foundation libraries and frameworks

    Meadow.Foundation provides a suite of specialized libraries and frameworks designed to simplify embedded hardware development on Meadow devices. Available tools include:

    • MicroJson: An ultra-lightweight .NET JSON serializer and deserializer.
    • MicroLayout: A lightweight Human-Machine Interface (HMI) framework.
    • MicroGraphics: A general-purpose graphics library.
    • Maple Server: An ultra-lightweight web API server.
    • TextDisplayMenu: A general-purpose menu library compatible with both character and graphic displays.
    • GPS/GNSS NMEA Processor: A processor for reading and parsing NMEA sentences from GPS and GNSS receivers.
    • TensorFlowLite for Microcontrollers: A machine learning library specifically for the Meadow F7.
  6. Overview of Meadow.Foundation.Displays.UI.InputTypes

    The Meadow.Foundation.Displays.UI.InputTypes namespace contains classes used to implement input menu items for text displays. It provides specialized input types for common data formats including:

    • Boolean/OnOff: For true/false or on/off toggles.
    • Numerical/Temperature: For numeric values and temperature settings.
    • Date/Time: For date and time selection, including variations like TimeShort and TimeDetailed.
    • Base Classes: InputBase, NumericBase, ListBase, and TimeBase serve as foundations for creating custom input types.