Skip to main content
Read analog voltage values from ADC pins.

Import

from lager import Net, NetType

Methods

MethodDescription
input()Read analog voltage

Method Reference

Net.get(name, type=NetType.ADC)

Get an ADC net by name.
from lager import Net, NetType

adc = Net.get('SENSOR', type=NetType.ADC)
Parameters:
ParameterTypeDescription
namestrName of the ADC net
typeNetTypeMust be NetType.ADC
Returns: ADC Net instance

input()

Read the analog voltage.
voltage = adc.input()
print(f"Voltage: {voltage}V")
Returns: float - Voltage in volts

Examples

Single Reading

from lager import Net, NetType

sensor = Net.get('TEMP_SENSOR', type=NetType.ADC)
voltage = sensor.input()
print(f"Sensor voltage: {voltage:.3f}V")

Continuous Monitoring

from lager import Net, NetType
import time

battery = Net.get('BATTERY_SENSE', type=NetType.ADC)

for i in range(10):
    voltage = battery.input()
    print(f"Battery: {voltage:.2f}V")
    time.sleep(1)

Data Logging

from lager import Net, NetType
import time
import csv

sensor = Net.get('CURRENT_SENSE', type=NetType.ADC)

with open('readings.csv', 'w', newline='') as f:
    writer = csv.writer(f)
    writer.writerow(['time', 'voltage'])

    start = time.time()
    for i in range(100):
        elapsed = time.time() - start
        voltage = sensor.input()
        writer.writerow([elapsed, voltage])
        time.sleep(0.1)

Multiple Sensors

from lager import Net, NetType

sensors = {
    'TEMP': Net.get('TEMP_SENSOR', type=NetType.ADC),
    'CURRENT': Net.get('CURRENT_SENSE', type=NetType.ADC),
    'BATTERY': Net.get('BATTERY_SENSE', type=NetType.ADC),
}

for name, sensor in sensors.items():
    voltage = sensor.input()
    print(f"{name}: {voltage:.3f}V")

Hardware Integration

HardwareChannelsRange
LabJack T7AIN0-AIN130-10V

Pin Mapping

Pin NumberLabJack Channel
0AIN0
1AIN1
2AIN2
13AIN13

Notes

  • ADC nets work directly without enable()/disable() calls
  • Returns voltage as a float in volts
  • Input range is 0-10V with 12-bit resolution
  • Each operation opens and closes the LabJack connection
  • Net names must match those configured on the Lager Box