nanoFramework.Iot.Device.Max31856 1.2.889

Prefix Reserved
dotnet add package nanoFramework.Iot.Device.Max31856 --version 1.2.889
                    
NuGet\Install-Package nanoFramework.Iot.Device.Max31856 -Version 1.2.889
                    
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.Max31856" Version="1.2.889" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="nanoFramework.Iot.Device.Max31856" Version="1.2.889" />
                    
Directory.Packages.props
<PackageReference Include="nanoFramework.Iot.Device.Max31856" />
                    
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.Max31856 --version 1.2.889
                    
#r "nuget: nanoFramework.Iot.Device.Max31856, 1.2.889"
                    
#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.Max31856@1.2.889
                    
#: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.Max31856&version=1.2.889
                    
Install as a Cake Addin
#tool nuget:?package=nanoFramework.Iot.Device.Max31856&version=1.2.889
                    
Install as a Cake Tool

Max31856 - cold-junction compensated thermocouple to digital converter

The Max31856 device is a SPI interface cold-junction compensated thermocouple to digital converter.

Illustration of wiring from an ESP32 device

Note: ThermocoupleType.K is configured for a K type thermocouple if you want to use a B,E,J,K,N,R,S, or T simply change the K to the thermocouple type of your choosing.

Documentation

Usage

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

//////////////////////////////////////////////////////////////////////
// when connecting to an ESP32 device, need to configure the SPI GPIOs
// used for the bus
Configuration.SetPinFunction(21, DeviceFunction.SPI1_MOSI);
Configuration.SetPinFunction(22, DeviceFunction.SPI1_MISO);
Configuration.SetPinFunction(23, DeviceFunction.SPI1_CLOCK);
// Make sure as well you are using the right chip select

For other devices like STM32, please make sure you're using the preset pins for the SPI bus you want to use. The chip select can as well be pre setup.

The Max31856.samples file contains a sample usage of the device. Note that this reads two temperatures. One is a connected thermocouple reading which can be read using the TryGetTemperature command and the other is the temperature of the device itself which can be read using the GetColdJunctionTemperature command. The Cold Junction Temperature is used internally to increase the accuracy of the thermocouple but can also be read if you find a use for it.

Create a new SpiConnectionSettings Class if using a MCU do not change these settings.

SpiConnectionSettings settings = new(1, 42)
{
    ClockFrequency = Max31856.SpiClockFrequency,
    Mode = Max31856.SpiMode,
    DataFlow = 0
};

Create a new SpiDevice with the settings from above. Then create a new Max31856 device with the SpiDevice as well as the correct ThermocoupleType (see note below)

using SpiDevice device = SpiDevice.Create(settings);
using Max31856 sensor = new(device, ThermocoupleType.K);

Now read the temperature from the device. Using the UnitsNet nuget you can see the units of your choosing. In this example you chan changeDegreesFahrenheit to DegreesCelsius or any other unit by changing .GetTemperature().DegreesFahrenheit to another unit of your choice.

while (true)
{
    Temperature tempColdJunction = sensor.GetColdJunctionTemperature();
    Debug.WriteLine($"Temperature: {tempColdJunction.DegreesCelcius} ℃");
    Thread.Sleep(2000);
}
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.889 88 7/28/2025
1.2.869 208 4/2/2025
1.2.864 179 4/2/2025
1.2.852 183 3/11/2025
1.2.846 186 3/10/2025
1.2.822 147 2/26/2025
1.2.775 142 2/4/2025
1.2.772 138 2/4/2025
1.2.759 126 1/31/2025
1.2.755 132 1/31/2025
1.2.743 132 1/20/2025
1.2.737 116 1/13/2025
1.2.718 130 12/30/2024
1.2.704 133 12/18/2024
1.2.696 142 12/16/2024
1.2.673 158 10/23/2024
1.2.656 133 10/3/2024
1.2.639 153 9/6/2024
1.2.631 150 8/28/2024
1.2.613 160 8/9/2024
1.2.601 125 7/26/2024
1.2.590 153 7/17/2024
1.2.573 153 6/19/2024
1.2.570 155 6/14/2024
1.2.560 156 5/29/2024
1.2.548 157 5/15/2024
1.2.536 164 4/15/2024
1.2.514 171 3/22/2024
1.2.494 158 2/28/2024
1.2.462 229 1/5/2024
1.2.458 188 12/20/2023
1.2.436 195 11/10/2023
1.2.416 151 11/8/2023
1.2.403 202 10/6/2023
1.2.396 193 9/27/2023
1.2.384 208 9/6/2023
1.2.378 240 8/16/2023
1.2.369 235 8/2/2023
1.2.363 229 7/28/2023
1.2.357 224 7/19/2023
1.2.354 214 7/14/2023
1.2.345 216 6/21/2023
1.2.341 213 6/14/2023
1.2.337 236 6/7/2023
1.2.335 201 6/2/2023
1.2.329 211 5/26/2023
1.2.313 233 5/12/2023
1.2.302 247 5/10/2023
1.2.297 233 5/3/2023
1.2.273 325 3/17/2023
1.2.267 325 3/10/2023
1.2.263 318 3/8/2023
1.2.259 333 2/27/2023
1.2.256 348 2/24/2023
1.2.253 315 2/22/2023
1.2.222 367 1/9/2023
1.2.212 384 1/5/2023
1.2.208 384 1/3/2023
1.2.203 380 12/28/2022
1.2.159 444 11/14/2022
1.2.153 466 11/5/2022
1.2.141 456 10/25/2022
1.2.128 476 10/22/2022
1.2.122 529 10/12/2022
1.2.114 472 10/8/2022
1.2.95 504 9/22/2022
1.2.87 580 9/15/2022
1.2.73 520 9/8/2022
1.2.63 519 9/3/2022
1.2.47 512 8/15/2022
1.2.40 520 8/6/2022
1.2.38 536 8/5/2022
1.2.28 558 8/1/2022
1.2.13 548 7/24/2022
1.2.10 542 7/23/2022
1.2.5 549 7/13/2022
1.1.142.3202 537 7/7/2022
1.1.141.41205 560 7/6/2022
1.1.133.52556 563 6/30/2022
1.1.121.35854 574 6/26/2022
1.1.116.8772 571 6/24/2022
1.1.113.2032 562 6/23/2022
1.1.102.51394 565 6/15/2022
1.1.99.36719 538 6/14/2022
1.1.97.17326 555 6/13/2022
1.1.92.53000 597 6/8/2022
1.1.72.29765 579 5/31/2022
1.1.64.21380 557 5/26/2022
1.1.58.10097 570 5/23/2022
1.1.54.28879 555 5/23/2022
1.1.40 558 5/5/2022
1.1.27 572 4/26/2022
1.1.20 558 4/21/2022
1.1.3 589 4/15/2022
1.1.1 568 4/14/2022
1.0.300 560 3/31/2022
1.0.277-preview.126 200 3/25/2022
1.0.277-preview.125 190 3/25/2022
1.0.277-preview.116 189 3/22/2022
1.0.277-preview.115 187 3/21/2022
1.0.277-preview.112 193 3/19/2022
1.0.277-preview.111 196 3/18/2022
1.0.277-preview.110 197 3/18/2022
1.0.277-preview.106 199 3/15/2022
1.0.277-preview.105 197 3/15/2022
1.0.277-preview.99 196 3/10/2022
1.0.277-preview.98 199 3/8/2022
1.0.277-preview.89 205 2/27/2022
1.0.277-preview.87 189 2/26/2022
1.0.277-preview.85 192 2/25/2022
1.0.277-preview.77 191 2/18/2022
1.0.277-preview.75 190 2/16/2022
1.0.277-preview.73 198 2/12/2022
1.0.277-preview.70 200 2/10/2022
1.0.277-preview.65 185 2/9/2022
1.0.277-preview.60 214 2/4/2022
1.0.277-preview.53 210 1/31/2022
1.0.277-preview.41 211 1/28/2022
1.0.277-preview.32 208 1/27/2022
1.0.277-preview.30 208 1/27/2022
1.0.277-preview.17 207 1/24/2022
1.0.277-preview.13 207 1/21/2022
1.0.277-preview.1 204 1/11/2022
1.0.272 410 1/10/2022
1.0.259 443 12/9/2021
1.0.258 418 12/7/2021
1.0.221 238 10/19/2021
1.0.219 243 10/19/2021
1.0.218 269 10/18/2021
1.0.157 246 9/4/2021
1.0.155 244 8/31/2021
1.0.153 247 8/14/2021
1.0.151 255 8/6/2021
1.0.146 244 7/22/2021
1.0.136 316 7/17/2021
1.0.135 243 7/16/2021
1.0.134 256 7/15/2021
1.0.133 272 7/14/2021
1.0.131 253 7/8/2021
1.0.129 252 7/6/2021
1.0.127 263 7/5/2021
1.0.125 276 7/5/2021
1.0.122 294 6/30/2021
1.0.121 284 6/29/2021
1.0.119 307 6/28/2021
1.0.111 275 6/14/2021
1.0.105 256 5/29/2021
1.0.104 335 5/29/2021
1.0.97 253 5/28/2021
1.0.42 276 5/24/2021