code: func (h *MMA7660Driver) XYZ() (x float64, y float64, z float64, err error) {
  	buf := []byte{0, 0, 0}
  	bytesRead, err := h.connection.Read(buf)
  	if err != nil {
  		return
  	}
  
  	if bytesRead != 3 {
  		err = ErrNotEnoughBytes
  		return
  	}
  
  	for _, val := range buf {
  		if ((val >> 6) & 0x01) == 1 {
  			err = ErrNotReady
  			return
  		}
  	}
  
  	x = float64((int8(buf[0]) << 2)) / 4.0
  	y = float64((int8(buf[1]) << 2)) / 4.0
  	z = float64((int8(buf[2]) << 2)) / 4.0
  
  	return
  }
docs: // XYZ returns the raw x,y and z axis from the mma7660