Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[BUG] AD8495 reporting wrong temperature on an BTT Octopus v1.1 #27510

Closed
1 task done
IoakeimSogiakas opened this issue Nov 3, 2024 · 1 comment
Closed
1 task done

Comments

@IoakeimSogiakas
Copy link

Did you test the latest bugfix-2.1.x code?

Yes, and the problem still exists.

Bug Description

I'm trying to move a printer from legacy Marlin (1.1.8) to a more modern setup and am using the latest bugfix version.

The issue is with the AD8495 board, which uses a K-type thermocouple for the bed. I set the bed thermistor to -4 in the thermistor settings:

#define TEMP_SENSOR_BED -4

However, when I connect to Pronterface, the temperature reads as 390°C. For reference, I'm using the Adafruit AD8495 (Adafruit product link). At around 25°C ambient, the board outputs about 1V, and when I heat the bed, the signal does increase, so the amplifier seems to be functioning correctly. I'm powering the board with 3.3V.

I've set the max bed temp temporarily high to prevent a kill command due to high bed temp readings, which I plan to fix later.

My Questions:

  1. Pin Configuration: Do I need to define a specific pin, or should this work as a regular thermistor after amplification?

  2. Temperature Changes: I've seen issues where people modify the temperature.cpp file, so I'm sharing the relevant line below for context:

    #define TEMP_AD8495(RAW) ((RAW) * (ADC_VREF_MV / 5) / float(HAL_ADC_RANGE) / (OVERSAMPLENR) * (TEMP_SENSOR_AD8495_GAIN) + TEMP_SENSOR_AD8495_OFFSET) //default

Observations:

Something odd is happening. Even if it boots (it sometimes fails due to "high temperature exceeding max temp," which I've temporarily disabled with an outrageously high value for BED_MAXTEMP), Pronterface shows a temperature of 390°C. When I heat the bed with a hairdryer, the reported temperature doesn't change at all. This makes me suspect there's a bug in the code, as I would expect some response to heating.

Bug Timeline

I don't know I haven't used this board before

Expected behavior

I would expect at least the temperature to change when I manually heat the bed up

Actual behavior

Neither the reported temperature is correct nor does it ever change in Proterface

Steps to Reproduce

  1. Flash the board
  2. Connect to proterface
  3. Mark down the bed temperature
  4. Start heating the bed with a hairdryer while checking the reported temperature in Porterface and the actuall temperature with ta temp gun actual

Version of Marlin Firmware

Marlin bugfix-2.1.x 19/10/2024

Printer model

Gigabot3+ Dual Y endstops

Electronics

The board is a BTT Octopus V1.1

LCD/Controller

Althought not in use it is a Viki2 screen

Other add-ons

It uses a AD8495 board for bed temp

Bed Leveling

No Bed Leveling

Your Slicer

Cura

Host Software

Pronterface

Don't forget to include

  • A ZIP file containing your Configuration.h and Configuration_adv.h.

Additional information & file uploads

Marlin.zip
Here are the configuration.h, confugiration_adv and temperature.cpp files.

@IoakeimSogiakas
Copy link
Author

Turns out I am an idiot ignore this please sorry for any trouble

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant