mirror of
https://github.com/cmur2/miflorad.git
synced 2025-06-26 12:30:23 +02:00
module: setup project structure, document and add utilities
This commit is contained in:
129
utils/legacy/scanner.go
Normal file
129
utils/legacy/scanner.go
Normal file
@ -0,0 +1,129 @@
|
||||
//shows how to watch for new devices and list them
|
||||
package legacy
|
||||
|
||||
import (
|
||||
"os"
|
||||
|
||||
"github.com/muka/go-bluetooth/api"
|
||||
"github.com/muka/go-bluetooth/emitter"
|
||||
log "github.com/sirupsen/logrus"
|
||||
)
|
||||
|
||||
const adapterID = "hci0"
|
||||
|
||||
// func main() {
|
||||
// manager, err := api.NewManager()
|
||||
// if err != nil {
|
||||
// log.Error(err)
|
||||
// os.Exit(1)
|
||||
// }
|
||||
//
|
||||
// err = manager.RefreshState()
|
||||
// if err != nil {
|
||||
// log.Error(err)
|
||||
// os.Exit(1)
|
||||
// }
|
||||
//
|
||||
// var address = "C4:7C:8D:66:D5:27"
|
||||
//
|
||||
// dev, err := api.GetDeviceByAddress(address)
|
||||
// if err != nil {
|
||||
// log.Error(err)
|
||||
// os.Exit(1)
|
||||
// }
|
||||
//
|
||||
// if dev == nil {
|
||||
// log.Infof("No device found!")
|
||||
// os.Exit(1)
|
||||
// }
|
||||
//
|
||||
// dev.GetAllServicesAndUUID()
|
||||
//
|
||||
// props, err := dev.GetProperties()
|
||||
// if err != nil {
|
||||
// log.Error(err)
|
||||
// os.Exit(1)
|
||||
// }
|
||||
//
|
||||
// log.Infof("name=%s addr=%s rssi=%d", props.Name, props.Address, props.RSSI)
|
||||
//
|
||||
// err = dev.Connect()
|
||||
// if err != nil {
|
||||
// log.Error(err)
|
||||
// os.Exit(1)
|
||||
// }
|
||||
//
|
||||
// if !dev.IsConnected() {
|
||||
// log.Infof("Device not connected!")
|
||||
// os.Exit(1)
|
||||
// }
|
||||
//
|
||||
// y, err := dev.GetCharByUUID("00002a00-0000-1000-8000-00805f9b34fb")
|
||||
// if err != nil {
|
||||
// log.Error(err)
|
||||
// os.Exit(1)
|
||||
// }
|
||||
//
|
||||
// log.Infof(y.Path)
|
||||
//
|
||||
// err = dev.Disconnect()
|
||||
// if err != nil {
|
||||
// log.Error(err)
|
||||
// os.Exit(1)
|
||||
// }
|
||||
// }
|
||||
|
||||
// func main() {
|
||||
// log.SetLevel(log.DebugLevel)
|
||||
//
|
||||
// // clean up connection on exit
|
||||
// defer api.Exit()
|
||||
//
|
||||
// manager, err := api.NewManager()
|
||||
// if err != nil {
|
||||
// log.Error(err)
|
||||
// os.Exit(1)
|
||||
// }
|
||||
//
|
||||
// err = manager.RefreshState()
|
||||
// if err != nil {
|
||||
// log.Error(err)
|
||||
// os.Exit(1)
|
||||
// }
|
||||
//
|
||||
// boo, err := api.AdapterExists(adapterID)
|
||||
// if err != nil {
|
||||
// log.Error(err)
|
||||
// os.Exit(1)
|
||||
// }
|
||||
// log.Debugf("AdapterExists: %b", boo)
|
||||
//
|
||||
// err = api.StartDiscoveryOn(adapterID)
|
||||
// if err != nil {
|
||||
// log.Error(err)
|
||||
// os.Exit(1)
|
||||
// }
|
||||
// log.Debugf("Started discovery")
|
||||
//
|
||||
// err = api.On("discovery", emitter.NewCallback(func(ev emitter.Event) {
|
||||
// discoveryEvent := ev.GetData().(api.DiscoveredDeviceEvent)
|
||||
// dev := discoveryEvent.Device
|
||||
// handleDevice(dev)
|
||||
// }))
|
||||
//
|
||||
// select {}
|
||||
// }
|
||||
//
|
||||
// func handleDevice(dev *api.Device) {
|
||||
// if dev == nil {
|
||||
// return
|
||||
// }
|
||||
//
|
||||
// props, err := dev.GetProperties()
|
||||
// if err != nil {
|
||||
// log.Error(err)
|
||||
// return
|
||||
// }
|
||||
//
|
||||
// log.Infof("name=%s addr=%s rssi=%d", props.Name, props.Address, props.RSSI)
|
||||
// }
|
12
utils/reset.py
Executable file
12
utils/reset.py
Executable file
@ -0,0 +1,12 @@
|
||||
#!/usr/bin/python
|
||||
|
||||
# This script allows hard-resetting the Intel Wireless Bluetooth 8265 chip
|
||||
# (ID 8087:0a2b) built into newer Thinkpads which tends to get stuck as other
|
||||
# people noticed before: https://bbs.archlinux.org/viewtopic.php?id=193813
|
||||
|
||||
# Setup: pip install pyusb
|
||||
# Usage: sudo python reset.py
|
||||
|
||||
from usb.core import find as finddev
|
||||
dev = finddev(idVendor=0x8087, idProduct=0x0a2b)
|
||||
dev.reset()
|
Reference in New Issue
Block a user