nanoFramework.Iot.Device.Ads1115 1.2.869

Prefix Reserved
dotnet add package nanoFramework.Iot.Device.Ads1115 --version 1.2.869
                    
NuGet\Install-Package nanoFramework.Iot.Device.Ads1115 -Version 1.2.869
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="nanoFramework.Iot.Device.Ads1115" Version="1.2.869" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="nanoFramework.Iot.Device.Ads1115" Version="1.2.869" />
                    
Directory.Packages.props
<PackageReference Include="nanoFramework.Iot.Device.Ads1115" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add nanoFramework.Iot.Device.Ads1115 --version 1.2.869
                    
#r "nuget: nanoFramework.Iot.Device.Ads1115, 1.2.869"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package nanoFramework.Iot.Device.Ads1115@1.2.869
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=nanoFramework.Iot.Device.Ads1115&version=1.2.869
                    
Install as a Cake Addin
#tool nuget:?package=nanoFramework.Iot.Device.Ads1115&version=1.2.869
                    
Install as a Cake Tool

ADS1115 - Analog to Digital Converter

ADS1115 is an Analog-to-Digital converter (ADC) with 16 bits of resolution.

Documentation

Prodcut datasheet can be found here

Sensor Image

ADS1115

Usage

Important: make sure you properly setup the I2C pins especially for ESP32 before creating the I2cDevice, make sure you install the nanoFramework.Hardware.ESP32 nuget:

//////////////////////////////////////////////////////////////////////
// when connecting to an ESP32 device, need to configure the I2C GPIOs
// used for the bus
Configuration.SetPinFunction(21, DeviceFunction.I2C1_DATA);
Configuration.SetPinFunction(22, DeviceFunction.I2C1_CLOCK);

For other devices like STM32, please make sure you're using the preset pins for the I2C bus you want to use.

// set I2C bus ID: 1
// ADS1115 Addr Pin connect to GND
I2cConnectionSettings settings = new I2cConnectionSettings(1, (int)I2cAddress.GND);
I2cDevice device = I2cDevice.Create(settings);

// pass in I2cDevice
// measure the voltage AIN0
// set the maximum range to 6.144V
using (Ads1115 adc = new Ads1115(device, InputMultiplexer.AIN0, MeasuringRange.FS6144))
{
    // read raw data form the sensor
    short raw = adc.ReadRaw();
    // raw data convert to voltage
    double voltage = adc.RawToVoltage(raw);
}

See the samples project for more examples and usage for different applications.

If you want to use the interrupt pin, the pulses generated by the ADS1115 might be to short to be properly recognized in the software, i.e. on a MCU. The schematic below shows a way of increasing the pulse length so that it is properly recognized (from about 10us to 150us). This uses discrete electronics, but an implementation with an NE555 or equivalent would likely work as well (Just note that you need a type that works at 3.3V).

Pulse_lengthener_schema

Example

Hardware Required

  • ADS1115
  • Rotary Potentiometer
  • Male/Female Jumper Wires

Circuit

circuit

ADS1115

  • ADDR - GND
  • SCL - SCL
  • SDA - SDA
  • VCC - 5V
  • GND - GND
  • A0 - Rotary Potentiometer Pin 2

Rotary Potentiometer

  • Pin 1 - 5V
  • Pin 2 - ADS1115 Pin A0
  • Pin 3 - GND

Code

// set I2C bus ID: 1
// ADS1115 Addr Pin connect to GND
I2cConnectionSettings settings = new I2cConnectionSettings(1, (int)I2cAddress.GND);
I2cDevice device = I2cDevice.Create(settings);

// pass in I2cDevice
// measure the voltage AIN0
// set the maximum range to 6.144V
using (Ads1115 adc = new Ads1115(device, InputMultiplexer.AIN0, MeasuringRange.FS6144))
{
    // loop
    while (true)
    {
        // read raw data form the sensor
        short raw = adc.ReadRaw();
        // raw data convert to voltage
        double voltage = adc.RawToVoltage(raw);

        Debug.WriteLine($"ADS1115 Raw Data: {raw}");
        Debug.WriteLine($"Voltage: {voltage}");
        Debug.WriteLine();

        // wait for 2s
        Thread.Sleep(2000);
    }
}

Results

run results interupt result

Product Compatible and additional computed target framework versions.
.NET Framework net is compatible. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
1.2.869 216 4/2/2025
1.2.864 182 4/2/2025
1.2.852 195 3/11/2025
1.2.846 192 3/10/2025
1.2.822 140 2/26/2025
1.2.775 164 2/4/2025
1.2.772 142 2/4/2025
1.2.759 138 1/31/2025
1.2.755 136 1/31/2025
1.2.743 143 1/20/2025
1.2.737 130 1/13/2025
1.2.718 127 12/30/2024
1.2.704 140 12/18/2024
1.2.696 149 12/16/2024
1.2.673 159 10/23/2024
1.2.662 136 10/11/2024
1.2.656 146 10/3/2024
1.2.639 163 9/6/2024
1.2.631 138 8/28/2024
1.2.613 162 8/9/2024
1.2.601 118 7/26/2024
1.2.590 131 7/17/2024
1.2.573 159 6/19/2024
1.2.570 162 6/14/2024
1.2.560 156 5/29/2024
1.2.548 159 5/15/2024
1.2.536 166 4/15/2024
1.2.514 160 3/22/2024
1.2.494 156 2/28/2024
1.2.474 178 1/24/2024
1.2.462 195 1/5/2024
1.2.458 169 12/20/2023
1.2.436 193 11/10/2023
1.2.416 139 11/8/2023
1.2.403 171 10/6/2023
1.2.396 158 9/27/2023
1.2.384 177 9/6/2023
1.2.378 183 8/16/2023
1.2.369 204 8/2/2023
1.2.363 184 7/28/2023
1.2.357 192 7/19/2023
1.2.354 183 7/14/2023
1.2.345 174 6/21/2023
1.2.341 176 6/14/2023
1.2.337 184 6/7/2023
1.2.335 160 6/2/2023
1.2.329 174 5/26/2023
1.2.313 185 5/12/2023
1.2.302 209 5/10/2023
1.2.297 214 5/3/2023
1.2.273 271 3/17/2023
1.2.267 266 3/10/2023
1.2.263 287 3/8/2023
1.2.259 283 2/27/2023
1.2.256 280 2/24/2023
1.2.253 300 2/22/2023
1.2.222 365 1/9/2023
1.2.212 350 1/5/2023
1.2.208 356 1/3/2023
1.2.203 338 12/28/2022
1.2.159 413 11/14/2022
1.2.153 426 11/5/2022
1.2.141 452 10/25/2022
1.2.128 430 10/22/2022
1.2.122 483 10/12/2022
1.2.114 450 10/8/2022
1.2.95 501 9/22/2022
1.2.87 536 9/15/2022
1.2.73 466 9/8/2022
1.2.63 467 9/3/2022
1.2.47 487 8/15/2022
1.2.40 492 8/6/2022
1.2.38 485 8/5/2022
1.2.28 479 8/1/2022
1.2.13 510 7/24/2022
1.2.10 499 7/23/2022
1.1.145.58726 519 7/7/2022
1.1.133.52556 501 6/30/2022
1.1.121.35854 511 6/26/2022
1.1.116.8772 506 6/24/2022
1.1.113.2032 501 6/23/2022
1.1.102.51394 488 6/15/2022
1.1.99.36719 487 6/14/2022
1.1.97.17326 520 6/13/2022
1.1.92.53000 505 6/8/2022
1.1.72.29765 519 5/31/2022
1.1.64.21380 498 5/26/2022
1.1.58.10097 502 5/23/2022
1.1.54.28879 505 5/23/2022
1.1.40 517 5/5/2022
1.1.3 546 4/15/2022
1.1.1 529 4/14/2022
1.0.300 526 3/31/2022
1.0.288-preview.114 201 3/25/2022
1.0.288-preview.113 171 3/25/2022
1.0.288-preview.104 173 3/22/2022
1.0.288-preview.103 168 3/21/2022
1.0.288-preview.100 185 3/19/2022
1.0.288-preview.99 195 3/18/2022
1.0.288-preview.98 175 3/18/2022
1.0.288-preview.93 186 3/15/2022
1.0.288-preview.87 185 3/10/2022
1.0.288-preview.86 186 3/8/2022
1.0.288-preview.77 192 2/27/2022
1.0.288-preview.75 178 2/26/2022
1.0.288-preview.65 182 2/18/2022
1.0.288-preview.63 180 2/16/2022
1.0.288-preview.61 196 2/12/2022
1.0.288-preview.58 183 2/10/2022
1.0.288-preview.53 183 2/9/2022
1.0.288-preview.48 204 2/4/2022
1.0.288-preview.41 203 1/31/2022
1.0.288-preview.29 205 1/28/2022
1.0.288-preview.20 198 1/27/2022
1.0.288-preview.19 203 1/27/2022
1.0.288-preview.18 204 1/27/2022
1.0.288-preview.5 196 1/24/2022
1.0.288-preview.1 188 1/21/2022
1.0.272 229 1/10/2022
1.0.259 397 12/9/2021
1.0.258 388 12/7/2021
1.0.218 266 10/18/2021
1.0.209 424 10/12/2021
1.0.157 413 9/4/2021
1.0.155 405 8/31/2021
1.0.153 238 8/14/2021
1.0.151 245 8/6/2021
1.0.146 234 7/22/2021
1.0.136 313 7/17/2021
1.0.135 246 7/16/2021
1.0.134 246 7/15/2021
1.0.133 250 7/14/2021
1.0.130 228 7/6/2021
1.0.127 247 7/5/2021
1.0.125 266 7/5/2021
1.0.122 299 6/30/2021
1.0.121 271 6/29/2021
1.0.119 298 6/28/2021
1.0.111 264 6/14/2021
1.0.105 360 5/29/2021
1.0.104 313 5/29/2021
1.0.97 248 5/28/2021
1.0.63 250 5/26/2021
1.0.20 292 5/21/2021