From fbc79e1a8f4a61b0dc2ef5bcc0a96a585cb3c3c7 Mon Sep 17 00:00:00 2001 From: Adrian Zankich Date: Wed, 19 Nov 2014 17:44:08 -0800 Subject: [PATCH] Update raspi package for new i2c interface --- examples/raspi_blinkm.go | 3 ++- platforms/raspi/.raspi_adaptor_test.go.swo | Bin 0 -> 12288 bytes platforms/raspi/raspi_adaptor.go | 18 ++++++++++-------- platforms/raspi/raspi_adaptor_test.go | 3 ++- 4 files changed, 14 insertions(+), 10 deletions(-) create mode 100644 platforms/raspi/.raspi_adaptor_test.go.swo diff --git a/examples/raspi_blinkm.go b/examples/raspi_blinkm.go index 0c1fa6c3..ca22bf22 100644 --- a/examples/raspi_blinkm.go +++ b/examples/raspi_blinkm.go @@ -20,7 +20,8 @@ func main() { g := byte(gobot.Rand(255)) b := byte(gobot.Rand(255)) blinkm.Rgb(r, g, b) - fmt.Println("color", blinkm.Color()) + color, _ := blinkm.Color() + fmt.Println("color", color) }) } diff --git a/platforms/raspi/.raspi_adaptor_test.go.swo b/platforms/raspi/.raspi_adaptor_test.go.swo new file mode 100644 index 0000000000000000000000000000000000000000..b90544aed4fdd50c1d1119a122114bcc659835ef GIT binary patch literal 12288 zcmeI2O>Epm6vwBP_}G5%QLcPUj9PiacD=ie2m*?T8Y%^;r6ef@MIoBCXE#>7_R5}3 zvyD;^C&Up-MGqApXSncjLtN;s6rmnc2@#=GNc4aZg&V!_AKRPVBx^f4aDdDzzjf^Q z{AS*N-t%Uasg_h=*Dz+=Ro}MizSnBPqv{Ex=`d0A{6=8-ENI%%`wX*K zQ+WQ2;DIRCz3kzYhf-kYD$o+O!%yueM=Ir#6yb4gfIf8K^v=~oWv&!Z3Md7X0!jg; zfKosypcL4F3W(+|@&@wW9q0Z`eB8C+7@w+xQa~x76i^B%1(X6x0i}RaKq;UUPzopo zlmh=j1(-$1jT|9A@4@8p|NqYS|3B|1BiS z0≈@CCRC&Vy5+00u!G{JkHs!I$6za1Oi%hQI;v+dhmBeg)ryYv3!;01lV{PlCt5 zBj921*Iq)F!DrwyxCGt=uY%*?1#l4T1FOhc=Dh+w2bVw_EPxt#4jcpn;6ZQ;I$Z^y zfRDk4;B7Dm#=*-V2X5a>$RFSaSO(X@r{EpH!6-Nc_JGxU2)P2@2N%G*zy;3(9qa`w zcSC>hBlrP)3qAsu!CT-AcmfOp9qa}-??P;_46cFiz&Aj>lmbeD|BC`kBo}UxDvksJ z_m|dA*M1oZx)(zqp^E~wm|z7uHC=5BzS!f77@O^-g;J?Nmq=!y$Pw@5rTo@{hQ2AT zFr`?-*(1a{m+r|nXPhxqH?CB=t5VYSj=H^~WDJ3|klx##x0O1FRAW43fo_zsCqtP@ zdXRK0vdVOjC6?`!?GaUKuAW@0iI%Mehfb(&l8ZWMhCY3ivf^099Oul^D=@Ic0nkFd z&Dt%Yuv8L^+bM>G5K*J28q>-^-k5lEq9J~^bgF-|U$RVDkEPAA)<4fWV`8D8UYh2; zX=kjeT;nsoEx5iRv#=bn?9yREF!W7np;kj71nr;}6eqZtXa^>99Q{yq<%DO>#g`Uk zC9U}#w;hfX!5exlfI%8_nql#I!>*Wz%UXftYJse{=$4cGtc=xj+thR*eA}%rVm{K( zc5N|<-Ld0x*X&5NT~^PNTFW)*#_O2AF6f}#Op6G`$vj;o{nWDyw2X=25EuWbjlH|f z2^&BwAJJfB#rR^Rn7kU^wRtU|P&of7%|KFy>98O$>P;JagYhnNYMO-_$em!H+6zfexLoUlm3nmFco z_!R9^DsiQ3zkb&y(yxepE?T}znJi6|l8d!QA4G$ojn?&t)@aAAA`1=Ak6e7WCg;}M zk0e+1m~V|E*8ru1Y-MNZd8$WkSfJ5Swo=%0{riy)_Kq*x4&!R68{)$%*D|~`d>Pf^ Xe%6THkcCBcLYmB+V|7l$z4YWCH}%YT literal 0 HcmV?d00001 diff --git a/platforms/raspi/raspi_adaptor.go b/platforms/raspi/raspi_adaptor.go index c56723fe..37cf5783 100644 --- a/platforms/raspi/raspi_adaptor.go +++ b/platforms/raspi/raspi_adaptor.go @@ -225,18 +225,20 @@ func (r *RaspiAdaptor) PwmWrite(pin string, val byte) (err error) { } // I2cStart starts a i2c device in specified address -func (r *RaspiAdaptor) I2cStart(address byte) { - r.i2cDevice, _ = sysfs.NewI2cDevice(r.i2cLocation, address) +func (r *RaspiAdaptor) I2cStart(address byte) (err error) { + r.i2cDevice, err = sysfs.NewI2cDevice(r.i2cLocation, address) + return err } // I2CWrite writes data to i2c device -func (r *RaspiAdaptor) I2cWrite(data []byte) { - r.i2cDevice.Write(data) +func (r *RaspiAdaptor) I2cWrite(data []byte) (err error) { + _, err = r.i2cDevice.Write(data) + return } // I2cRead returns value from i2c device using specified size -func (r *RaspiAdaptor) I2cRead(size uint) []byte { - buf := make([]byte, size) - r.i2cDevice.Read(buf) - return buf +func (r *RaspiAdaptor) I2cRead(size uint) (data []byte, err error) { + data = make([]byte, size) + _, err = r.i2cDevice.Read(data) + return } diff --git a/platforms/raspi/raspi_adaptor_test.go b/platforms/raspi/raspi_adaptor_test.go index 1a409c55..90573a85 100644 --- a/platforms/raspi/raspi_adaptor_test.go +++ b/platforms/raspi/raspi_adaptor_test.go @@ -54,5 +54,6 @@ func TestRaspiAdaptorI2c(t *testing.T) { a.I2cStart(0xff) a.I2cWrite([]byte{0x00, 0x01}) - gobot.Assert(t, a.I2cRead(2), []byte{0x00, 0x01}) + data, _ := a.I2cRead(2) + gobot.Assert(t, data, []byte{0x00, 0x01}) }