nanoFramework.Iot.Device.Ads1115 1.0.288-preview.99

Prefix Reserved
This is a prerelease version of nanoFramework.Iot.Device.Ads1115.
There is a newer version of this package available.
See the version list below for details.
dotnet add package nanoFramework.Iot.Device.Ads1115 --version 1.0.288-preview.99
                    
NuGet\Install-Package nanoFramework.Iot.Device.Ads1115 -Version 1.0.288-preview.99
                    
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.0.288-preview.99" />
                    
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.0.288-preview.99" />
                    
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.0.288-preview.99
                    
#r "nuget: nanoFramework.Iot.Device.Ads1115, 1.0.288-preview.99"
                    
#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.
#addin nuget:?package=nanoFramework.Iot.Device.Ads1115&version=1.0.288-preview.99&prerelease
                    
Install nanoFramework.Iot.Device.Ads1115 as a Cake Addin
#tool nuget:?package=nanoFramework.Iot.Device.Ads1115&version=1.0.288-preview.99&prerelease
                    
Install nanoFramework.Iot.Device.Ads1115 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 187 4/2/2025
1.2.864 162 4/2/2025
1.2.852 175 3/11/2025
1.2.846 173 3/10/2025
1.2.822 124 2/26/2025
1.2.775 141 2/4/2025
1.2.772 123 2/4/2025
1.2.759 119 1/31/2025
1.2.755 117 1/31/2025
1.2.743 126 1/20/2025
1.2.737 103 1/13/2025
1.2.718 111 12/30/2024
1.2.704 119 12/18/2024
1.2.696 124 12/16/2024
1.2.673 139 10/23/2024
1.2.662 120 10/11/2024
1.2.656 118 10/3/2024
1.2.639 138 9/6/2024
1.2.631 118 8/28/2024
1.2.613 148 8/9/2024
1.2.601 98 7/26/2024
1.2.590 111 7/17/2024
1.2.573 142 6/19/2024
1.2.570 138 6/14/2024
1.2.560 140 5/29/2024
1.2.548 135 5/15/2024
1.2.536 149 4/15/2024
1.2.514 144 3/22/2024
1.2.494 136 2/28/2024
1.2.474 160 1/24/2024
1.2.462 178 1/5/2024
1.2.458 147 12/20/2023
1.2.436 183 11/10/2023
1.2.416 129 11/8/2023
1.2.403 155 10/6/2023
1.2.396 144 9/27/2023
1.2.384 163 9/6/2023
1.2.378 162 8/16/2023
1.2.369 174 8/2/2023
1.2.363 165 7/28/2023
1.2.357 168 7/19/2023
1.2.354 159 7/14/2023
1.2.345 158 6/21/2023
1.2.341 159 6/14/2023
1.2.337 167 6/7/2023
1.2.335 142 6/2/2023
1.2.329 155 5/26/2023
1.2.313 164 5/12/2023
1.2.302 192 5/10/2023
1.2.297 193 5/3/2023
1.2.273 253 3/17/2023
1.2.267 245 3/10/2023
1.2.263 256 3/8/2023
1.2.259 265 2/27/2023
1.2.256 261 2/24/2023
1.2.253 269 2/22/2023
1.2.222 346 1/9/2023
1.2.212 334 1/5/2023
1.2.208 336 1/3/2023
1.2.203 317 12/28/2022
1.2.159 393 11/14/2022
1.2.153 405 11/5/2022
1.2.141 425 10/25/2022
1.2.128 411 10/22/2022
1.2.122 466 10/12/2022
1.2.114 430 10/8/2022
1.2.95 483 9/22/2022
1.2.87 511 9/15/2022
1.2.73 439 9/8/2022
1.2.63 446 9/3/2022
1.2.47 467 8/15/2022
1.2.40 473 8/6/2022
1.2.38 466 8/5/2022
1.2.28 452 8/1/2022
1.2.13 483 7/24/2022
1.2.10 463 7/23/2022
1.1.145.58726 493 7/7/2022
1.1.133.52556 481 6/30/2022
1.1.121.35854 490 6/26/2022
1.1.116.8772 482 6/24/2022
1.1.113.2032 479 6/23/2022
1.1.102.51394 464 6/15/2022
1.1.99.36719 464 6/14/2022
1.1.97.17326 490 6/13/2022
1.1.92.53000 483 6/8/2022
1.1.72.29765 495 5/31/2022
1.1.64.21380 477 5/26/2022
1.1.58.10097 484 5/23/2022
1.1.54.28879 482 5/23/2022
1.1.40 496 5/5/2022
1.1.3 525 4/15/2022
1.1.1 507 4/14/2022
1.0.300 503 3/31/2022
1.0.288-preview.114 163 3/25/2022
1.0.288-preview.113 149 3/25/2022
1.0.288-preview.104 150 3/22/2022
1.0.288-preview.103 144 3/21/2022
1.0.288-preview.100 161 3/19/2022
1.0.288-preview.99 166 3/18/2022
1.0.288-preview.98 154 3/18/2022
1.0.288-preview.93 164 3/15/2022
1.0.288-preview.87 156 3/10/2022
1.0.288-preview.86 160 3/8/2022
1.0.288-preview.77 163 2/27/2022
1.0.288-preview.75 153 2/26/2022
1.0.288-preview.65 161 2/18/2022
1.0.288-preview.63 159 2/16/2022
1.0.288-preview.61 165 2/12/2022
1.0.288-preview.58 157 2/10/2022
1.0.288-preview.53 158 2/9/2022
1.0.288-preview.48 182 2/4/2022
1.0.288-preview.41 173 1/31/2022
1.0.288-preview.29 175 1/28/2022
1.0.288-preview.20 175 1/27/2022
1.0.288-preview.19 180 1/27/2022
1.0.288-preview.18 180 1/27/2022
1.0.288-preview.5 175 1/24/2022
1.0.288-preview.1 167 1/21/2022
1.0.272 208 1/10/2022
1.0.259 374 12/9/2021
1.0.258 367 12/7/2021
1.0.218 244 10/18/2021
1.0.209 403 10/12/2021
1.0.157 388 9/4/2021
1.0.155 383 8/31/2021
1.0.153 214 8/14/2021
1.0.151 224 8/6/2021
1.0.146 211 7/22/2021
1.0.136 281 7/17/2021
1.0.135 210 7/16/2021
1.0.134 215 7/15/2021
1.0.133 229 7/14/2021
1.0.130 205 7/6/2021
1.0.127 222 7/5/2021
1.0.125 242 7/5/2021
1.0.122 263 6/30/2021
1.0.121 245 6/29/2021
1.0.119 268 6/28/2021
1.0.111 233 6/14/2021
1.0.105 329 5/29/2021
1.0.104 289 5/29/2021
1.0.97 225 5/28/2021
1.0.63 227 5/26/2021
1.0.20 267 5/21/2021