code: func (b *Client) DigitalWrite(pin int, value int) error {
  	port := byte(math.Floor(float64(pin) / 8))
  	portValue := byte(0)
  
  	b.pins[pin].Value = value
  
  	for i := byte(0); i < 8; i++ {
  		if b.pins[8*port+i].Value != 0 {
  			portValue = portValue | (1 << i)
  		}
  	}
  	return b.write([]byte{DigitalMessage | port, portValue & 0x7F, (portValue >> 7) & 0x7F})
  }
docs: // DigitalWrite writes value to pin.