code: def getAccelData( self,  raw = False ):
          
          x = self._readWord(self.REG_ACCEL_XOUT_H)
          y = self._readWord(self.REG_ACCEL_YOUT_H)
          z = self._readWord(self.REG_ACCEL_ZOUT_H)
  
          accel_scale_modifier = None
          accel_range = self.readAccelRange()
  
          if accel_range == self.ACCEL_RANGE_2G:
              accel_scale_modifier = self.ACCEL_SCALE_MODIFIER_2G
          elif accel_range == self.ACCEL_RANGE_4G:
              accel_scale_modifier = self.ACCEL_SCALE_MODIFIER_4G
          elif accel_range == self.ACCEL_RANGE_8G:
              accel_scale_modifier = self.ACCEL_SCALE_MODIFIER_8G
          elif accel_range == self.ACCEL_RANGE_16G:
              accel_scale_modifier = self.ACCEL_SCALE_MODIFIER_16G
          else:
              print( "ERROR: Unkown accel range!" )
              return False            
              #accel_scale_modifier = self.ACCEL_SCALE_MODIFIER_2G
  
          x = x / accel_scale_modifier
          y = y / accel_scale_modifier
          z = z / accel_scale_modifier
  
          if raw == True:
              return { 'x': x, 'y': y, 'z': z }
          elif raw == False:
              return { 'x': x * self._gravityFactor, 'y': y * self._gravityFactor, 'z': z * self._gravityFactor }
docs: !
          Gets and returns the X, Y and Z values from the accelerometer.
  
          @param raw If raw is True, it will return the data in m/s^2,<br> If raw is False, it will return the data in g
          @return a dictionary with the measurement results or Boolean.
              @retval {...} data in m/s^2 if raw is True.
              @retval {...} data in g if raw is False.
              @retval False means 'Unkown accel range', that you need to check the "accel range" configuration
          @note Result data format: {"x":0.45634,"y":0.2124,"z":1.334}