diff --git a/src/interface_implementations/ballandbeam.jl b/src/interface_implementations/ballandbeam.jl
index bdb778635aa74b259e2bf45d4d030c1fc735add5..6e9a8fdbb65b2559855b164ebabd591ecbd491aa 100644
--- a/src/interface_implementations/ballandbeam.jl
+++ b/src/interface_implementations/ballandbeam.jl
@@ -4,8 +4,9 @@ export BallAndBeam, BallAndBeamSimulator, BallAndBeamType
 
 struct BallAndBeam <: PhysicalProcess
     h::Float64
+    bias::Float64
 end
-BallAndBeam() = BallAndBeam(0.01)
+BallAndBeam() = BallAndBeam(0.01, 0.0)
 
 struct BallAndBeamSimulator <: SimulatedProcess
     h::Float64
@@ -22,7 +23,7 @@ isasstable(p::BallAndBeamType)  = false
 sampletime(p::BallAndBeamType)  = p.h
 
 control(p::BallAndBeam, u)  = ccall((:comedi_write, comedipath),Int32,
-                                        (Int32,Int32,Int32,Int32),0,1,1,num2io(u[1]))
+                                        (Int32,Int32,Int32,Int32),0,1,1,num2io(u[1]+p.bias))
 measure(p::BallAndBeam)     = io2num(ccall((:comedi_read,comedipath), Int32,
                                         (Int32,Int32,Int32), 0,0,0))