code: def get_current_platform():
      
      board_info_dir = '/sys/class/board-info/'
  
      if not os.path.exists(board_info_dir) or os.environ.get("FAKE_SYS"):
          return 'fake'
  
      for board in os.listdir(board_info_dir):
          uevent_filename = os.path.join(board_info_dir, board, 'uevent')
  
          if os.path.exists(uevent_filename):
              with open(uevent_filename, 'r') as fh:
                  for line in fh.readlines():
                      (key, value) = line.strip().split('=')
  
                      if key == 'BOARD_INFO_MODEL':
  
                          if value == 'LEGO MINDSTORMS EV3':
                              return 'ev3'
  
                          elif value in ('FatcatLab EVB', 'QuestCape'):
                              return 'evb'
  
                          elif value == 'PiStorms':
                              return 'pistorms'
  
                          # This is the same for both BrickPi and BrickPi+.
                          # There is not a way to tell the difference.
                          elif value == 'Dexter Industries BrickPi':
                              return 'brickpi'
  
                          elif value == 'Dexter Industries BrickPi3':
                              return 'brickpi3'
  
                          elif value == 'FAKE-SYS':
                              return 'fake'
  
      return None
docs: Look in /sys/class/board-info/ to determine the platform type.
  
      This can return 'ev3', 'evb', 'pistorms', 'brickpi', 'brickpi3' or 'fake'.