func (this *Printer) readID(n byte, buf []byte) (err error) {
	log.Print("reading ID")
	// disable status reporting
	if _, err = this.port.Write([]byte{0x1D, 0xE0, 0x00}); err != nil {
		return
	}
	if err = FlushReader(this.port); err != nil {
		return
	}
	// send "read ID" command
	if _, err = this.port.Write([]byte{0x1D, 0x49, 0xFF}); err != nil {
		return
	}
	if err = this.port.SetRawRead(len(buf), int(this.Timeout)*10); err != nil {
		return
	}
	if _, err = this.port.Read(buf); err != nil {
		return
	}
	log.Printf("ID(%v): %
#v", n, buf)
	return
}
ИСКЛЮЧЕНИЯ ДЛЯ СЛАБАКОВ