Skip to content

Instantly share code, notes, and snippets.

@michalzielanski
Created October 11, 2020 19:52
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save michalzielanski/ac31a715c3a40b579a11c91c8639c7dd to your computer and use it in GitHub Desktop.
Save michalzielanski/ac31a715c3a40b579a11c91c8639c7dd to your computer and use it in GitHub Desktop.
lm_sensors config for ASRock J4105-ITX / J5005-ITX
#
# Board: ASRock J4105-ITX
# Processor: Intel(R) Celeron(R) J4105
#
# From Nuvoton NCT6796D Data Sheet:
# 8-bit Analog to Digital Converter (ADC). Voltage range 0 - 2.048V,
# 8mV LSB (256 steps x 8mV = 2.048V).
#
# Sample values read by me from UEFI, ASRock A-Tuning and found on YT
# and Web reviews:
# - VCore: 0.720, 0.726, 0.824, 0.832, 0.848, 0.888
# - 3.3V: 3.312, 3.328, 3.344, 3.360, 3.376, 3.392, 3.408, 3.424
# - 5V: 4.968, 5.016, 5.088, 5.112, 5.136, 5.160, 5.184
# - 12V: 11.668, 11.721, 11.774, 11.827, 11.880, 11.932, 11.985, 12.038,
# 12.091, 12.144, 12.196, 12.249, 12.302, 12.355, 12.408, 12.460,
# 12.513, 12.725, 12.778
#
# Calculation of divisors:
# https://web.archive.org/web/20150826091212/http://lm-sensors.org/wiki/VoltageLabelsAndScaling
# The difference between the read values:
# - 5V:
# 5.112 - 5.088 = 0.024
# 5.136 - 5.112 = 0.024
# 5.160 - 5.136 = 0.024
# - 12V:
# 11.721 - 11.668 = 0.053
# 11.774 - 11.721 = 0.053
# 11.827 - 11.774 = 0.053
# 11.880 - 11.827 = 0.053
# 11.932 - 11.880 = 0.052
# 12.196 - 12.144 = 0.052
# 12.460 - 12.408 = 0.052
# The value 0.053 is not precise as it is due to rounding.
# Resistors R1 = 56 KΩ and R2 = 10 KΩ were used to create
# the divider. They are the same as given in the example
# in Nuvoton NCT6796D datasheet.
#
# $ sensors -u nct6796-isa-0290 | grep "in[1,4-6]_input"
# in1_input: 1.872, 1.896, 1.904, 1.912, 1.920, 1.928, 1.936
# -> 1.872 * ((R1 + R2) / R2) = 1.872 * (66 / 10) = 12.3552
# -> 1.896 * 6.6 = 12.5136
# -> 1.928 * 6.6 = 12.7248
# -> 1.936 * 6.6 = 12.7776
# in4_input: 1.648, 1.656, 1.664, 1.672
# -> 1.656 * (24 / 8) = 4.968
# -> 1.672 * (24 / 8) = 5.016
# in5_input: 0.208, 0.216
# in6_input: 0.168
# in14_input: 1.712, 1.720
#
chip "nct6796-*"
#set beep_enable 1
label in0 "VCore"
label in3 "+3.3V"
set in3_min 3.3 * 0.95
set in3_max 3.3 * 1.05
label in4 "+5V"
compute in4 @*(24/8), @/(24/8)
set in4_min 5.0 * 0.95
set in4_max 5.0 * 1.05
label in1 "+12V"
compute in1 @*(66/10), @/(66/10)
set in1_min 12.0 * 0.95
set in1_max 12.0 * 1.05
# from /etc/sensors3.conf
label in8 "VBat"
set in8_min 3.0 * 0.90
set in8_max 3.3 * 1.10
# AVCC - Analog +3.3V power input. Internally supply power to all analog
# circuits.
ignore in2
# unknown - not used?
ignore in5
ignore in6
# 3VSB - +3.3V stand-by power supply for the digital circuits.
ignore in7
# unknown - not used?
ignore in9
ignore in10
ignore in11
ignore in12
ignore in13
ignore in14
label temp1 "M/B Temp"
set temp1_max 60
set temp1_max_hyst 55
label temp2 "CPU Temp"
set temp2_max 80
set temp2_max_hyst 75
ignore temp3
ignore temp4
ignore temp5
ignore temp6
ignore temp7
ignore temp8
ignore temp9
ignore temp10
label fan1 "Chassis Fan"
label fan2 "CPU Fan"
ignore fan2 # not connected
# not available on the M/B
ignore fan3
ignore fan4
ignore fan5
ignore fan7
label intrusion0 "Case open"
ignore intrusion0 # not connected
ignore intrusion1
ignore beep_enable
chip "coretemp-*"
label temp1 "APU Temp"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment