Adding additional I²C sensors to ALIX.3D3

J8: SMBus

J8: SMBus

The manual of the ALIX.3D3 board mentions a lot of pin descriptions of all pin headers on the board. J8 interfaces the SMBus of the AMD CS5536 Geode companion (which is compatible to I²C if bus speed is below 100kHz, see Maxim’s Appnote for detailed comparison). So why not add additional I²C sensors. As an example I connected an LM75 temperature sensor.

First of all we need to add some pin headers to J8 found on board next to the USB port. The pin assignment can be found on page 18 of the manual:

PIN signal descriptions
1 +3.3V power supply
2 SMB_SCL SMBus/I²C clock
3 SMB_SDA SMBus/I²C data
4 GND ground

We have to connect these four lines with the power (pin 8), SDA (pin 1), SCL (pin 2) and ground (pin 4) of the LM75 chip. A0, A1 and A2 have to be connected either to GND or power. The level on these pins configure the slave address of the device. I connected all of them with GND. The typical application example found in the datasheet advises an 100 nF capacitor between pin 4 and pin 8 close to the chip:

LM75: Typical application

I soldered the LM75 (a smd chip) to an adapter and connected everything on a bread board:

LM75 wired on bread board

If everything is connected it's time to add software support. I assume you already installed the onboard temperature sensors descriped in my previous article. So, only support for the LM75 is need in the kernel:

Device Drivers  --->
   <*> Hardware Monitoring support  --->
      <*>   National Semiconductor LM75 and compatibles

After compiling and rebooting you can run sensors again. It should show up the new device:

lm75-i2c-0-48
Adapter: CS5536 ACB0
temp:      +30.0 C  (high = +80.0 C, hyst = +75.0 C)

So connecting additional sensors is very easy (when they're support in the kernel).

Leave a Reply

Your email address will not be published. Required fields are marked *