code: func (h *JHD1313M1Driver) SetCustomChar(pos int, charMap [8]byte) error {
  	if pos > 7 {
  		return fmt.Errorf("can't set a custom character at a position greater than 7")
  	}
  	location := uint8(pos)
  	if err := h.command([]byte{LCD_SETCGRAMADDR | (location << 3)}); err != nil {
  		return err
  	}
  	_, err := h.lcdConnection.Write(append([]byte{LCD_DATA}, charMap[:]...))
  	return err
  }
docs: // SetCustomChar sets one of the 8 CGRAM locations with a custom character.
  // The custom character can be used by writing a byte of value 0 to 7.
  // When you are using LCD as 5x8 dots in function set then you can define a total of 8 user defined patterns
  // (1 Byte for each row and 8 rows for each pattern).
  // Use http://www.8051projects.net/lcd-interfacing/lcd-custom-character.php to create your own
  // characters.
  // To use a custom character, write byte value of the custom character position as a string after
  // having setup the custom character.