nanoFramework.Iot.Device.Max31856 1.2.203

Prefix Reserved
There is a newer version of this package available.
See the version list below for details.
dotnet add package nanoFramework.Iot.Device.Max31856 --version 1.2.203                
NuGet\Install-Package nanoFramework.Iot.Device.Max31856 -Version 1.2.203                
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.203" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add nanoFramework.Iot.Device.Max31856 --version 1.2.203                
#r "nuget: nanoFramework.Iot.Device.Max31856, 1.2.203"                
#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.
// Install nanoFramework.Iot.Device.Max31856 as a Cake Addin
#addin nuget:?package=nanoFramework.Iot.Device.Max31856&version=1.2.203

// Install nanoFramework.Iot.Device.Max31856 as a Cake Tool
#tool nuget:?package=nanoFramework.Iot.Device.Max31856&version=1.2.203                

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.852 135 3/11/2025
1.2.846 142 3/10/2025
1.2.822 104 2/26/2025
1.2.775 103 2/4/2025
1.2.772 97 2/4/2025
1.2.759 86 1/31/2025
1.2.755 92 1/31/2025
1.2.743 88 1/20/2025
1.2.737 75 1/13/2025
1.2.718 94 12/30/2024
1.2.704 97 12/18/2024
1.2.696 96 12/16/2024
1.2.673 116 10/23/2024
1.2.656 98 10/3/2024
1.2.639 119 9/6/2024
1.2.631 109 8/28/2024
1.2.613 124 8/9/2024
1.2.601 90 7/26/2024
1.2.590 114 7/17/2024
1.2.573 120 6/19/2024
1.2.570 113 6/14/2024
1.2.560 115 5/29/2024
1.2.548 123 5/15/2024
1.2.536 132 4/15/2024
1.2.514 133 3/22/2024
1.2.494 122 2/28/2024
1.2.462 199 1/5/2024
1.2.458 160 12/20/2023
1.2.436 178 11/10/2023
1.2.416 135 11/8/2023
1.2.403 178 10/6/2023
1.2.396 159 9/27/2023
1.2.384 178 9/6/2023
1.2.378 205 8/16/2023
1.2.369 201 8/2/2023
1.2.363 194 7/28/2023
1.2.357 176 7/19/2023
1.2.354 175 7/14/2023
1.2.345 180 6/21/2023
1.2.341 171 6/14/2023
1.2.337 194 6/7/2023
1.2.335 157 6/2/2023
1.2.329 170 5/26/2023
1.2.313 194 5/12/2023
1.2.302 205 5/10/2023
1.2.297 182 5/3/2023
1.2.273 287 3/17/2023
1.2.267 285 3/10/2023
1.2.263 275 3/8/2023
1.2.259 290 2/27/2023
1.2.256 307 2/24/2023
1.2.253 274 2/22/2023
1.2.222 327 1/9/2023
1.2.212 344 1/5/2023
1.2.208 346 1/3/2023
1.2.203 338 12/28/2022
1.2.159 406 11/14/2022
1.2.153 427 11/5/2022
1.2.141 418 10/25/2022
1.2.128 433 10/22/2022
1.2.122 488 10/12/2022
1.2.114 433 10/8/2022
1.2.95 464 9/22/2022
1.2.87 538 9/15/2022
1.2.73 477 9/8/2022
1.2.63 478 9/3/2022
1.2.47 471 8/15/2022
1.2.40 475 8/6/2022
1.2.38 490 8/5/2022
1.2.28 513 8/1/2022
1.2.13 504 7/24/2022
1.2.10 489 7/23/2022
1.2.5 507 7/13/2022
1.1.142.3202 490 7/7/2022
1.1.141.41205 513 7/6/2022
1.1.133.52556 517 6/30/2022
1.1.121.35854 526 6/26/2022
1.1.116.8772 523 6/24/2022
1.1.113.2032 513 6/23/2022
1.1.102.51394 518 6/15/2022
1.1.99.36719 490 6/14/2022
1.1.97.17326 504 6/13/2022
1.1.92.53000 540 6/8/2022
1.1.72.29765 529 5/31/2022
1.1.64.21380 501 5/26/2022
1.1.58.10097 522 5/23/2022
1.1.54.28879 503 5/23/2022
1.1.40 511 5/5/2022
1.1.27 518 4/26/2022
1.1.20 510 4/21/2022
1.1.3 531 4/15/2022
1.1.1 516 4/14/2022
1.0.300 508 3/31/2022
1.0.277-preview.126 148 3/25/2022
1.0.277-preview.125 142 3/25/2022
1.0.277-preview.116 134 3/22/2022
1.0.277-preview.115 134 3/21/2022
1.0.277-preview.112 142 3/19/2022
1.0.277-preview.111 144 3/18/2022
1.0.277-preview.110 147 3/18/2022
1.0.277-preview.106 146 3/15/2022
1.0.277-preview.105 145 3/15/2022
1.0.277-preview.99 147 3/10/2022
1.0.277-preview.98 143 3/8/2022
1.0.277-preview.89 151 2/27/2022
1.0.277-preview.87 138 2/26/2022
1.0.277-preview.85 141 2/25/2022
1.0.277-preview.77 138 2/18/2022
1.0.277-preview.75 139 2/16/2022
1.0.277-preview.73 142 2/12/2022
1.0.277-preview.70 148 2/10/2022
1.0.277-preview.65 133 2/9/2022
1.0.277-preview.60 161 2/4/2022
1.0.277-preview.53 159 1/31/2022
1.0.277-preview.41 153 1/28/2022
1.0.277-preview.32 154 1/27/2022
1.0.277-preview.30 155 1/27/2022
1.0.277-preview.17 157 1/24/2022
1.0.277-preview.13 154 1/21/2022
1.0.277-preview.1 151 1/11/2022
1.0.272 356 1/10/2022
1.0.259 390 12/9/2021
1.0.258 364 12/7/2021
1.0.221 186 10/19/2021
1.0.219 190 10/19/2021
1.0.218 216 10/18/2021
1.0.157 194 9/4/2021
1.0.155 192 8/31/2021
1.0.153 195 8/14/2021
1.0.151 202 8/6/2021
1.0.146 191 7/22/2021
1.0.136 261 7/17/2021
1.0.135 189 7/16/2021
1.0.134 196 7/15/2021
1.0.133 220 7/14/2021
1.0.131 195 7/8/2021
1.0.129 199 7/6/2021
1.0.127 207 7/5/2021
1.0.125 222 7/5/2021
1.0.122 240 6/30/2021
1.0.121 230 6/29/2021
1.0.119 253 6/28/2021
1.0.111 212 6/14/2021
1.0.105 202 5/29/2021
1.0.104 281 5/29/2021
1.0.97 199 5/28/2021
1.0.42 222 5/24/2021