Ecosyste.ms: Packages
An open API service providing package, version and dependency metadata of many open source software ecosystems and registries.
Top 0.4% dependent packages on proxy.golang.org
Top 0.5% dependent repos on proxy.golang.org
Top 2.5% forks on proxy.golang.org
Top 0.3% docker downloads on proxy.golang.org
proxy.golang.org : github.com/google/gousb
Package gousb provides an low-level interface to attached USB devices. A Context manages all resources necessary for communicating with USB devices. Through the Context users can iterate over available USB devices. The USB standard defines a mechanism of discovering USB device functionality through descriptors. After the device is attached and initialized by the host stack, it's possible to retrieve its descriptor (the device descriptor). It contains elements such as product and vendor IDs, bus number and device number (address) on the bus. In gousb, the Device struct represents a USB device. The Device structβs Desc field contains all known information about the device. Among other information in the device descriptor is a list of configuration descriptors, accessible through Device.Desc.Configs. The USB standard allows one physical USB device to switch between different sets of behaviors, or working modes, by selecting one of the offered configs (each device has at least one). This allows the same device to sometimes present itself as e.g. a 3G modem, and sometimes as a flash drive with the drivers for that 3G modem. Configs are mutually exclusive, each device can have only one active config at a time. Switching the active config performs a light-weight device reset. Each config in the device descriptor has a unique identification number. In gousb a device config needs to be selected through Device.Config(num). It returns a Config struct that represents the device in this particular configuration. The configuration descriptor is accessible through Config.Desc. A config descriptor determines the list of available USB interfaces on the device. Each interface is a virtual device within the physical USB device and its active config. There can be many interfaces active concurrently. Interfaces are enumerated sequentially starting from zero. Additionally, each interface comes with a number of alternate settings for the interface, which are somewhat similar to device configs, but on the interface level. Each interface can have only a single alternate setting active at any time. Alternate settings are enumerated sequentially starting from zero. In gousb an interface and its alternate setting can be selected through Config.Interface(num, altNum). The Interface struct is the representation of the claimed interface with a particular alternate setting. The descriptor of the interface is available through Interface.Setting. An interface with a particular alternate setting defines up to 30 data endpoints, each identified by a unique address. The endpoint address is a combination of endpoint number (1..15) and endpoint directionality (IN/OUT). IN endpoints have addresses 0x81..0x8f, while OUT endpoints 0x01..0x0f. An endpoint can be considered similar to a UDP/IP port, except the data transfers are unidirectional. Endpoints are represented by the Endpoint struct, and all defined endpoints can be obtained through the Endpoints field of the Interface.Setting. Each endpoint descriptor (EndpointDesc) defined in the interface's endpoint map includes information about the type of the endpoint: - endpoint address - endpoint number - direction: IN (device-to-host) or OUT (host-to-device) - transfer type: USB standard defines a few distinct data transfer types: --- bulk - high throughput, but no guaranteed bandwidth and no latency guarantees, --- isochronous - medium throughput, guaranteed bandwidth, some latency guarantees, --- interrupt - low throughput, high latency guarantees. The endpoint descriptor determines the type of the transfer that will be used. - maximum packet size: maximum number of bytes that can be sent or received by the device in a single USB transaction. and a few other less frequently used pieces of endpoint information. An IN Endpoint can be opened for reading through Interface.InEndpoint(epNum), while an OUT Endpoint can be opened for writing through Interface.OutEndpoint(epNum). An InEndpoint implements the io.Reader interface, an OutEndpoint implements the io.Writer interface. Both Reads and Writes will accept larger slices of data than the endpoint's maximum packet size, the transfer will be split into smaller USB transactions as needed. But using Read/Write size equal to an integer multiple of maximum packet size helps with improving the transfer performance. Apart from 15 possible data endpoints, each USB device also has a control endpoint. The control endpoint is present regardless of the current device config, claimed interfaces and their alternate settings. It makes a lot of sense, as the control endpoint is actually used, among others, to issue commands to switch the active config or select an alternate setting for an interface. Control commands are also often used to control the behavior of the device. There is no single standard for control commands though, and many devices implement their custom control command schema. Control commands can be issued through Device.Control(). For more information about USB protocol and handling USB devices, see the excellent "USB in a nutshell" guide: http://www.beyondlogic.org/usbnutshell/ This example demostrates the full API for accessing endpoints. It opens a device with a known VID/PID, switches the device to configuration #2, in that configuration it opens (claims) interface #3 with alternate setting #0. Within that interface setting it opens an IN endpoint number 6 and an OUT endpoint number 5, then starts copying data between them, This examples demonstrates the use of a few convenience functions that can be used in simple situations and with simple devices. It opens a device with a given VID/PID, claims the default interface (use the same config as currently active, interface 0, alternate setting 0) and tries to write 5 bytes of data to endpoint number 7.
Registry
-
Source
- Documentation
- JSON
purl: pkg:golang/github.com/google/gousb
License: Apache-2.0
Latest release: about 4 years ago
First release: about 4 years ago
Namespace: github.com/google
Dependent packages: 173
Dependent repositories: 126
Stars: 707 on GitHub
Forks: 115 on GitHub
Docker dependents: 16
Docker downloads: 37,169,345
See more repository details: repos.ecosyste.ms
Last synced: 1 day ago
github.com/LambdatestIncPrivate/ios-quicktime-capture v0.1.20
31 versions - Latest release: about 1 month ago - 0 stars on GitHubgithub.com/lambdatestincprivate/ios-quicktime-capture v0.1.20
31 versions - Latest release: about 1 month ago - 0 stars on GitHubgithub.com/sinacosa/escpos-go v0.0.1
A small library to talk to my printer :)1 version - Latest release: about 1 month ago - 0 stars on GitHub
github.com/sinacosa/escposgo v0.0.1
A small library to talk to my printer :)1 version - Latest release: about 1 month ago - 0 stars on GitHub
github.com/Sinacosa/escpos-go v0.0.1
A small library to talk to my printer :)1 version - Latest release: about 1 month ago - 0 stars on GitHub
github.com/Sinacosa/escposgo v0.0.1
A small library to talk to my printer :)1 version - Latest release: about 1 month ago - 0 stars on GitHub
github.com/BossHobby/Configurator v0.8.0
USB configurator for QUICKSILVER40 versions - Latest release: about 2 months ago - 12 stars on GitHub
github.com/bosshobby/configurator v0.8.0
40 versions - Latest release: about 2 months agogithub.com/BossHobby/configurator v0.8.0
USB configurator for QUICKSILVER39 versions - Latest release: about 2 months ago - 12 stars on GitHub
github.com/Doraemonkeys/doraemon v0.2.1
utils12 versions - Latest release: 2 months ago - 0 stars on GitHub
github.com/0187773933/StreamDeck v1.0.44
3 versions - Latest release: 2 months ago - 0 stars on GitHubgithub.com/0187773933/streamdeck v1.0.44
1 version - Latest release: 2 months ago - 0 stars on GitHubgithub.com/roffe/txlogger v1.0.14
Blazing fast data logging for Trionic 7 & 812 versions - Latest release: 2 months ago - 3 stars on GitHub
github.com/tryanks/go-accessoryhid v0.9.0
Emulate any hid device for Android.1 version - Latest release: 3 months ago - 8 stars on GitHub
github.com/0187773933/tvcontroller v1.0.9
9 versions - Latest release: 3 months ago - 0 stars on GitHubgithub.com/0187773933/TVController v1.0.9
8 versions - Latest release: 3 months agogithub.com/roffe/t7logger v1.0.12
Blazing fast data logging for Trionic 7 & 810 versions - Latest release: 3 months ago - 3 stars on GitHub
github.com/0187773933/IRController v1.0.7
2 versions - Latest release: 3 months ago - 2 dependent packages - 0 stars on GitHubgithub.com/0187773933/ircontroller v1.0.7
7 versions - Latest release: 3 months ago - 0 stars on GitHubgithub.com/grvstick/usbtmc v0.0.2
Go library to communicate with a USB Test and Measurement Class (USBTMC) interface1 version - Latest release: 5 months ago - 0 stars on GitHub
github.com/akares/skreader v0.1.0
Golang library and example command line tool for SEKONIC spectrometers remote control.1 version - Latest release: 5 months ago - 2 stars on GitHub
github.com/whywaita/rfid-poker v0.0.0-20240118171814-a2a7382f5da8
2 versions - Latest release: 5 months ago - 1 stars on GitHubgithub.com/frnckdlprt/hdsctl v0.0.0-20240109034205-80015048663c
CLI for Owon HDS200 series oscilloscope3 versions - Latest release: 5 months ago - 0 stars on GitHub
github.com/roffe/gocan v0.0.0-20231231164343-755e5ac84c98
Golang CAN library with J2534 support27 versions - Latest release: 5 months ago - 3 dependent packages - 1 dependent repositories - 6 stars on GitHub
github.com/intel/intel-device-plugins-for-kubernetes v0.29.0
Collection of Intel device plugins for Kubernetes21 versions - Latest release: 6 months ago - 2 dependent repositories - 344 stars on GitHub
github.hscsec.cn/intel/intel-device-plugins-for-kubernetes v0.29.0
20 versions - Latest release: 6 months agogithub.imxd.top/intel/intel-device-plugins-for-kubernetes v0.29.0
20 versions - Latest release: 6 months agogithub.skymusic.top/intel/intel-device-plugins-for-kubernetes v0.29.0
20 versions - Latest release: 6 months agogithub.xiaoq7.com/intel/intel-device-plugins-for-kubernetes v0.29.0
20 versions - Latest release: 6 months agogithub.com/serbyxp/quicktime_video_hack v0.2.0
Record iOS device audio and video3 versions - Latest release: 6 months ago - 0 stars on GitHub
github.com/Tryanks/go-accessoryhid v0.0.0-20231214032111-d11ee90149d1
Emulate any hid device for Android.3 versions - Latest release: 6 months ago - 1 stars on GitHub
github.com/scottlaird/udmx v1.0.0
Package udmx provides a minimal insterface for sending DMX messages via a cheap uDMX USB interfac...3 versions - Latest release: 6 months ago - 1 dependent repositories - 1 stars on GitHub
github.com/scottlaird/dmxthing v1.0.0
1 version - Latest release: 6 months agogithub.com/Yubico/yubihsm-connector v0.0.0-20231122143408-904f223cebe1
4 versions - Latest release: 7 months ago - 26 stars on GitHubgithub.com/gurvan/go-gc-adapter v0.1.1
A Go library for interfacing with the Gamecube controller adapter.3 versions - Latest release: 7 months ago - 1 stars on GitHub
github.com/Gurvan/go-gc-adapter v0.1.1
A Go library for interfacing with the Gamecube controller adapter.3 versions - Latest release: 7 months ago - 1 stars on GitHub
github.com/mm0070/go-vocore v0.0.0-20231102114231-683908e3e474
Simple Go library to communicate with VoCore screens1 version - Latest release: 7 months ago - 0 stars on GitHub
github.com/mtp/fpanels v0.0.0-20231031121530-504fb3edbed6
Package fpanels provides an interface to Logitech/Saitek flight panels. Use the New*Panel() func...1 version - Latest release: 7 months ago - 0 stars on GitHub
github.com/rtr7/tools v0.0.0-20231028090219-62c0a0154c3a
goembed generates a Go source file from an input file.4 versions - Latest release: 8 months ago - 3 stars on GitHub
txmrl.net/gogs/lahire/lckscnusb v0.0.0-20231026111702-238943c104e4
4 versions - Latest release: 8 months agogithub.com/nasa-jpl/golaborate v0.0.0-20231026003301-efe4ef59b00c
Go servers/services for remote and autonomous testbeds and labs9 versions - Latest release: 8 months ago - 7 stars on GitHub
github.com/h3rby7/usbdmx-golang v0.4.0
A versatile USB DMX library written in Go for programatic show control and special effects.6 versions - Latest release: 8 months ago - 0 stars on GitHub
github.com/H3rby7/usbdmx-golang v0.4.0
A versatile USB DMX library written in Go for programatic show control and special effects.6 versions - Latest release: 8 months ago - 1 dependent repositories - 0 stars on GitHub
github.com/OrbTools/OrbMap v0.0.0-20231021032514-11f37bb8b572 π°
Key re-binding utilities built with golang and userspace3 versions - Latest release: 8 months ago - 0 stars on GitHub
github.com/karloygard/xcomfortd-go v0.0.0-20231005103756-67f6764b0be9
Eaton xComfort CKOZ-00/14 and CCIA-0x/01 to MQTT gateway3 versions - Latest release: 8 months ago - 39 stars on GitHub
github.com/maitredede/gonfc v0.0.0-20230924205600-3c12a922cc2e
8 versions - Latest release: 9 months ago - 1 dependent package - 1 dependent repositories - 0 stars on GitHubgithub.com/bcdevices/ly11-ble-usbh4 v0.6.17-usb1
Bluetooth Low Energy for Linux / macOS1 version - Latest release: 9 months ago - 0 stars on GitHub
github.com/ivobcd/ble v0.6.17-usb1
1 version - Latest release: 9 months agogithub.com/IvoBCD/ble v0.6.17-usb1
1 version - Latest release: 9 months agogithub.com/gotmc/usbtmc v0.7.0
Package usbtmc uses libusb to communicate with USB Test & Measurement Class (USBTMC) compliant de...9 versions - Latest release: 9 months ago - 1 dependent package - 1 dependent repositories - 14 stars on GitHub
github.com/gotmc/ivi-examples v0.0.0-20230913160715-f888eafe7ae7
Examples using the gotmc ivi package.1 version - Latest release: 9 months ago - 2 stars on GitHub
github.com/gotmc/visa v0.7.0
Go-based VISA resource manager.6 versions - Latest release: 9 months ago - 1 dependent repositories - 8 stars on GitHub
github.com/puhitaku/mtplvcap v1.6.2 π°
Nikon to USB Webcam. Supports older models that Nikon WU does not. Windows/macOS/Linux. No HDMI c...27 versions - Latest release: 9 months ago - 190 stars on GitHub
github.com/blacktop/ipsw v0.1.0 π°
iOS/macOS Research Swiss Army Knife270 versions - Latest release: 9 months ago - 958 stars on GitHub
github.com/DaleFarnsworth-dmr/codeplug v1.0.31
Package codeplug implements access to MD380-style codeplug files. It can read/update/write both ....132 versions - Latest release: 9 months ago - 3 stars on GitHub
github.com/dalefarnsworth-dmr/codeplug v1.0.31
Package codeplug implements access to MD380-style codeplug files. It can read/update/write both ....135 versions - Latest release: 9 months ago - 4 dependent packages - 4 dependent repositories - 3 stars on GitHub
github.com/DaleFarnsworth-DMR/codeplug v1.0.31
Package codeplug implements access to MD380-style codeplug files. It can read/update/write both ....132 versions - Latest release: 9 months ago - 3 stars on GitHub
github.com/dalefarnsworth-dmr/dmrradio v1.0.33
137 versions - Latest release: 9 months ago - 4 stars on GitHubgithub.com/dalefarnsworth-dmr/dmrRadio v1.0.33
137 versions - Latest release: 9 months ago - 4 stars on GitHubgithub.com/steelbrain/gocarplay v0.0.0-20230828002457-6cbb9e633f21
CarPlay dongle library written in Go.1 version - Latest release: 10 months ago - 0 stars on GitHub
github.com/dhowlett99/dmxlights v0.0.0-20230827223704-548e503ccb8c
A DJ lighting package11 versions - Latest release: 10 months ago - 0 stars on GitHub
github.com/mt-inside/envbin v0.0.8
A container image that prints info about its environment, and has testing features7 versions - Latest release: 10 months ago - 4 stars on GitHub
github.com/senax/ws1361_prometheus v0.0.0-20230813061108-64236f12f940
Small program to present WS1361 sound pressure meter reading on a prometheus endpoint.1 version - Latest release: 10 months ago - 1 stars on GitHub
github.com/half2me/antgo v0.0.0-20230811092244-111609f1b521
ANT+ Library in GO2 versions - Latest release: 10 months ago - 11 stars on GitHub
github.com/Philippe12/extra v0.0.0-20230810085744-0cf8e222f4bc removed
Package extra is obsolete. Please use https://periph.io/x/host/v3 (or later) directly.1 version - Latest release: 10 months ago - 6 stars on GitHub
github.com/bin-work/go-example v0.0.0-20230808065902-c113072743ef
3 versions - Latest release: 10 months agogithub.com/Tryanks/go-aoahid v0.0.0-20230705054928-e1281d0411e8
Emulate any hid device for Android.1 version - Latest release: 11 months ago - 1 stars on GitHub
github.com/Dineshkuppan/quicktime_video_hack v1.0.0
Record iOS device audio and video1 version - Latest release: 12 months ago - 0 stars on GitHub
github.com/DineshKuppan/quicktime_video_hack v1.0.0
Record iOS device audio and video1 version - Latest release: 12 months ago - 0 stars on GitHub
github.com/dineshkuppan/quicktime_video_hack v1.0.0
Record iOS device audio and video1 version - Latest release: 12 months ago - 0 stars on GitHub
github.com/everadaptive/mindlights v0.0.0-20230630130322-bfde8e17a29a
1 version - Latest release: 12 months ago - 1 stars on GitHubgithub.com/BigJk/snd v0.7.5 π°
Sales & Dungeons β Thermal Printer as D&D / TTRPG Utility19 versions - Latest release: about 1 year ago - 373 stars on GitHub
github.com/bigjk/snd v0.7.5 π°
Sales & Dungeons β Thermal Printer as D&D / TTRPG Utility26 versions - Latest release: about 1 year ago - 373 stars on GitHub
github.com/jon-ryan/go-zebra-scanner/snapi v1.0.3
4 versions - Latest release: about 1 year ago - 1 dependent package - 0 stars on GitHubgithub.com/yanome/felica-reader v0.0.0-20230527115617-73894d35ef43
Terminal based Felica card reader.1 version - Latest release: about 1 year ago - 0 stars on GitHub
github.com/RootUserGit/bettercap v0.0.0-20230510045652-f83f7ad9c9fd
The Swiss Army knife for 802.11, BLE, IPv4 and IPv6 networks reconnaissance and MITM attacks.1 version - Latest release: about 1 year ago - 0 stars on GitHub
github.com/h8gi/rcs380 v0.0.0-20230508163038-835a58cdfd5a
2 versions - Latest release: about 1 year agogithub.com/benjojo/qc-usb-userspace v0.0.0-20230504105423-65d6c9d8d850
A userspace USB driver for the logitech quickcam express1 version - Latest release: about 1 year ago - 42 stars on GitHub
github.com/danielpaulus/quicktime_video_hack v0.0.0-20230504104950-d81396e2e775 π°
Record iOS device audio and video2 versions - Latest release: about 1 year ago - 3 dependent packages - 3 dependent repositories - 401 stars on GitHub
github.com/multiverse-os/uinput v0.0.0-20230503153022-cd6ce9f7a94a
An uinput library used by Multiverse OS's vinput package which provides virtual device capabiliti...3 versions - Latest release: about 1 year ago - 3 stars on GitHub
github.com/chenhengjie123/quicktime_video_hack v0.0.0-20230413124306-7d3d09a214d8
5 versions - Latest release: about 1 year agogithub.com/roffe/gocanflasher v0.0.0-20230409000227-8d119bc983db
Trionic 5/7/8 CANbus flasher with J2534 support5 versions - Latest release: about 1 year ago - 2 dependent packages - 1 dependent repositories - 0 stars on GitHub
github.com/hrntknr/chinese-mini-keyboard v1.0.1
work in progress2 versions - Latest release: about 1 year ago - 0 stars on GitHub
github.com/vsior/testproject1 v0.1.0
1 version - Latest release: about 1 year agogithub.com/vsior/testProject1 v0.1.0
1 version - Latest release: about 1 year ago - 0 stars on GitHubgithub.com/mongoose-os/mos v0.0.0-20230313140341-b44964e63a92
The Mongoose OS Command Line Tool - https://mongoose-os.com/docs/mongoose-os/quickstart/setup.md11 versions - Latest release: about 1 year ago - 1 dependent repositories - 38 stars on GitHub
github.com/freemyipod/wInd3x v0.0.0-20230305221133-591c4400043f
iPod Classic and Nano 3/4/5G bootrom exploit2 versions - Latest release: over 1 year ago - 143 stars on GitHub
github.com/fightforge/bettercap v0.0.0-20230224123445-a21a33b424c2
The Swiss Army knife for 802.11, BLE, IPv4 and IPv6 networks reconnaissance and MITM attacks.1 version - Latest release: over 1 year ago - 0 stars on GitHub
github.com/ebarkie/goblusb v1.0.1
Command Line Interface for interacting with the Blusb Universal BT-USB Model M Controller.2 versions - Latest release: over 1 year ago - 1 stars on GitHub
github.com/gooseclip/pi-gamepad v0.0.0-20230202113957-d99ac9f6b751
An event driven implementation for a Raspberry Pi gamepad1 version - Latest release: over 1 year ago - 2 stars on GitHub
github.com/purpl3F0x/go-ant v0.1.0
ANT, ANT+, ANT-FS Protocol Stack library and ANT-USB driver written in Go2 versions - Latest release: over 1 year ago - 1 dependent repositories - 0 stars on GitHub
github.com/patryk4815/usb-proxy v0.0.0-20221204032954-f10f7dfdab69
Usb Proxy using raw-gadget, usb proxy golang rawgadget raw-gadget1 version - Latest release: over 1 year ago - 3 stars on GitHub
github.com/jjunghyup/ios-screen-mirror v0.0.0-20221128015435-a5be869c0976
ios-screen-mirror2 versions - Latest release: over 1 year ago - 29 stars on GitHub
github.com/postmannen/go-learning v0.0.0-20221126225139-9882766ff3a9
My Golang training material for testing smaller Go concepts and ideas.2 versions - Latest release: over 1 year ago - 27 stars on GitHub
github.com/NotFastEnuf/QS_Configurator v1.0.0
USB configurator for QUICKSILVER16 versions - Latest release: over 1 year ago - 1 stars on GitHub
github.com/notfastenuf/qs_configurator v1.0.0
USB configurator for QUICKSILVER16 versions - Latest release: over 1 year ago - 1 stars on GitHub
github.com/zsa/wally v0.0.0-20221025224048-623a50d0e0b9
The Flash(ing tool)2 versions - Latest release: over 1 year ago - 599 stars on GitHub
github.com/DemmyDemon/pertelian v0.1.0
Talk to Pertelian character LCDs in Go1 version - Latest release: over 1 year ago - 0 stars on GitHub
github.com/demmydemon/pertelian v0.1.0
Talk to Pertelian character LCDs in Go1 version - Latest release: over 1 year ago - 0 stars on GitHub
github.com/zsa/wally-cli v0.0.0-20221021113736-b0fafe52cc7f
Flash your ZSA Keyboard the EZ way.1 version - Latest release: over 1 year ago - 88 stars on GitHub