Fix of a very stoopid mistake
This commit is contained in:
@@ -57,7 +57,7 @@ func NewPeripheralDevice(port string) *PeripheralDevice {
|
||||
func (p *PeripheralDevice) Probe() error {
|
||||
err := p.WT.TurnOn()
|
||||
if err != nil {
|
||||
return nil
|
||||
return err
|
||||
}
|
||||
|
||||
// Papers, please!
|
||||
|
||||
@@ -13,15 +13,13 @@ type IdentificationPacket struct {
|
||||
}
|
||||
|
||||
func (pkt *IdentificationPacket) Read(wt *WalkieTalkie) error {
|
||||
fmt.Println("Reading framed data")
|
||||
|
||||
err := wt.ReadFramedData(binary.Size(IdentificationPacket{}), pkt)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
if !pkt.Validate() {
|
||||
return fmt.Errorf("invalid packet")
|
||||
return fmt.Errorf("invalid data")
|
||||
}
|
||||
|
||||
return nil
|
||||
|
||||
@@ -13,11 +13,13 @@ const (
|
||||
)
|
||||
|
||||
type PeripheralDeviceClerk struct {
|
||||
// Devices map[string]PeripheralDevice
|
||||
Devices map[string]*PeripheralDevice
|
||||
}
|
||||
|
||||
func NewPeripheralDeviceClerk() *PeripheralDeviceClerk {
|
||||
return &PeripheralDeviceClerk{}
|
||||
return &PeripheralDeviceClerk{
|
||||
Devices: make(map[string]*PeripheralDevice),
|
||||
}
|
||||
}
|
||||
|
||||
func (clerk *PeripheralDeviceClerk) listPorts() ([]string, error) {
|
||||
@@ -29,6 +31,10 @@ func (clerk *PeripheralDeviceClerk) listPorts() ([]string, error) {
|
||||
return ttyUSBs, nil
|
||||
}
|
||||
|
||||
func (clerk *PeripheralDeviceClerk) addDevice(dev *PeripheralDevice) {
|
||||
clerk.Devices[string(dev.Name[:])] = dev
|
||||
}
|
||||
|
||||
func (clerk *PeripheralDeviceClerk) FindDevices() error {
|
||||
ports, err := clerk.listPorts()
|
||||
if err != nil {
|
||||
@@ -37,17 +43,22 @@ func (clerk *PeripheralDeviceClerk) FindDevices() error {
|
||||
|
||||
for _, p := range ports {
|
||||
newDevice := NewPeripheralDevice(p)
|
||||
err := newDevice.Probe()
|
||||
|
||||
var msg string
|
||||
if err == nil {
|
||||
msg = string(newDevice.Name[:])
|
||||
} else {
|
||||
msg = err.Error()
|
||||
err := newDevice.Probe()
|
||||
if err != nil {
|
||||
fmt.Println(p, err.Error())
|
||||
continue
|
||||
}
|
||||
|
||||
fmt.Println(p, msg)
|
||||
clerk.addDevice(newDevice)
|
||||
fmt.Println(p, string(newDevice.Name[:]))
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
// func (c *PeripheralDeviceClerk) clerkBackgroundJob() {
|
||||
// for {
|
||||
//
|
||||
// }
|
||||
// }
|
||||
|
||||
Reference in New Issue
Block a user