code: func NewJHD1313M1Driver(a Connector, options ...func(Config)) *JHD1313M1Driver {
  	j := &JHD1313M1Driver{
  		name:       gobot.DefaultName("JHD1313M1"),
  		connector:  a,
  		Config:     NewConfig(),
  		Commander:  gobot.NewCommander(),
  		lcdAddress: 0x3E,
  		rgbAddress: 0x62,
  	}
  
  	for _, option := range options {
  		option(j)
  	}
  
  	j.AddCommand("SetRGB", func(params map[string]interface{}) interface{} {
  		r, _ := strconv.Atoi(params["r"].(string))
  		g, _ := strconv.Atoi(params["g"].(string))
  		b, _ := strconv.Atoi(params["b"].(string))
  		return j.SetRGB(r, g, b)
  	})
  	j.AddCommand("Clear", func(params map[string]interface{}) interface{} {
  		return j.Clear()
  	})
  	j.AddCommand("Home", func(params map[string]interface{}) interface{} {
  		return j.Home()
  	})
  	j.AddCommand("Write", func(params map[string]interface{}) interface{} {
  		msg := params["msg"].(string)
  		return j.Write(msg)
  	})
  	j.AddCommand("SetPosition", func(params map[string]interface{}) interface{} {
  		pos, _ := strconv.Atoi(params["pos"].(string))
  		return j.SetPosition(pos)
  	})
  	j.AddCommand("Scroll", func(params map[string]interface{}) interface{} {
  		lr, _ := strconv.ParseBool(params["lr"].(string))
  		return j.Scroll(lr)
  	})
  
  	return j
  }
docs: // NewJHD1313M1Driver creates a new driver with specified i2c interface.
  // Params:
  //		conn Connector - the Adaptor to use with this Driver
  //
  // Optional params:
  //		i2c.WithBus(int):	bus to use with this driver
  //