mirror of
https://github.com/cecio/USBvalve.git
synced 2025-12-06 03:41:45 +00:00
Compare commits
4 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
27e0285aae | ||
|
|
07a18dadd6 | ||
|
|
805d361da8 | ||
|
|
815b0434c2 |
11
README.md
11
README.md
@@ -5,6 +5,7 @@
|
||||
<p float="left">
|
||||
<img src="https://github.com/cecio/USBvalve/blob/main/pictures/versions.png" alt="The two models" width="30%" height="30%" />
|
||||
<img src="https://github.com/cecio/USBvalve/blob/main/pictures/USBvalve_PIWATCH.png" alt="The Watch" width="26%" height="26%" />
|
||||
<img src="https://github.com/cecio/USBvalve/blob/main/pictures/version1_2.png" alt="1.2" width="26%" height="26%" />
|
||||
</p>
|
||||
|
||||
I'm sure that, like me, you were asked to put your USB drive in an *unknown* device...and then the doubt:
|
||||
@@ -34,7 +35,7 @@ If you prefer videos, you can also have a look to my [Insomni'hack Presentation]
|
||||
|
||||
## USBvalve Watch
|
||||
|
||||
Starting from version `0.15.0` a new *Pi Pico Watch* version is supported. To compile the new version you have to uncomment the `#define PIWATCH` line at the beginning of the code or use the pre-compiled firmware provided. The hardware is a RP2040-based 1.28-inch TFT display and watch board. You can find some more info [here](https://www.raspberrypi.com/news/how-to-build-your-own-raspberry-pi-watch/).
|
||||
Starting from version `0.15.0` a new *Pi Pico Watch* version is supported. To compile the new version you have to uncomment the `#define PIWATCH` line at the beginning of the code. The hardware is a RP2040-based 1.28-inch TFT display and watch board. You can find some more info [here](https://www.raspberrypi.com/news/how-to-build-your-own-raspberry-pi-watch/).
|
||||
This is also fully compatible with the [Waveshare RP2040-LCD-1.28](https://www.waveshare.com/wiki/RP2040-LCD-1.28).
|
||||
|
||||
## Repository Structure
|
||||
@@ -170,8 +171,8 @@ I grouped most of the variables you may want to modify in this section ([see Doc
|
||||
|
||||
Obviously you can also build your own firmware. To build the *standard* one I used:
|
||||
|
||||
- Arduino IDE `2.2.1`
|
||||
- `Adafruit TinyUSB Library` version `2.4.1`, `Pico-PIO-USB` version `0.5.2`, Board `Raspberry Pi RP2040 (3.6.3)` setting Tools=>CPU Speed at `120MHz` and Tools=>USB Stack to `Adafruit TinyUSB`
|
||||
- Arduino IDE `2.3.2`
|
||||
- `Adafruit TinyUSB Library` version `3.1.1`, `Pico-PIO-USB` version `0.5.2`, Board `Raspberry Pi RP2040 (3.7.2)` setting Tools=>CPU Speed at `120MHz` and Tools=>USB Stack to `Adafruit TinyUSB`
|
||||
- `ssd1306` OLED library version `1.8.3`
|
||||
|
||||
If you want to re-create a new fake filesystem, you may want to have a look to the `utils` folder, where I placed some utilities to build a new one.
|
||||
@@ -190,3 +191,7 @@ The firmware will be placed with extension `uf2` in folder `USBvalve_out`.
|
||||
### Contribute
|
||||
|
||||
If you have ideas or improvements in your mind, I encourage you to open an issue so that we can improve the project together! Thanks!
|
||||
|
||||
### Support
|
||||
|
||||
If you have question or need support you can open an `Issue` here or reach me out on Twitter/X [@red5heep](https://twitter.com/red5heep)
|
||||
|
||||
@@ -109,7 +109,7 @@ bool activeState = false;
|
||||
//
|
||||
// USBvalve globals
|
||||
//
|
||||
#define VERSION "USBvalve - 0.15.0"
|
||||
#define VERSION "USBvalve - 0.16.0"
|
||||
boolean readme = false;
|
||||
boolean autorun = false;
|
||||
boolean written = false;
|
||||
@@ -244,7 +244,7 @@ void setup() {
|
||||
|
||||
// Core 1 Setup: will be used for the USB host functions for BADUSB detector
|
||||
void setup1() {
|
||||
// Set a custom clock (multiple of 12Mhz) to achieve maximum compatibility
|
||||
// Set a custom clock (multiple of 12Mhz) to achieve maximum compatibility for HID
|
||||
set_sys_clock_khz(144000, true);
|
||||
|
||||
pio_usb_configuration_t pio_cfg = PIO_USB_DEFAULT_CONFIG;
|
||||
@@ -666,3 +666,31 @@ void cursor_movement(int8_t x, int8_t y, int8_t wheel) {
|
||||
}
|
||||
|
||||
// END of BADUSB detector section
|
||||
|
||||
//
|
||||
// OTHER Host devices detection section
|
||||
//
|
||||
|
||||
// Invoked when a device with MassStorage interface is mounted
|
||||
void tuh_msc_mount_cb(uint8_t dev_addr) {
|
||||
printout("\n[++] Mass Device");
|
||||
SerialTinyUSB.printf("Mass Device attached, address = %d\r\n", dev_addr);
|
||||
}
|
||||
|
||||
// Invoked when a device with MassStorage interface is unmounted
|
||||
void tuh_msc_umount_cb(uint8_t dev_addr) {
|
||||
SerialTinyUSB.printf("Mass Device unmounted, address = %d\r\n", dev_addr);
|
||||
}
|
||||
|
||||
// Invoked when a device with CDC (Communication Device Class) interface is mounted
|
||||
void tuh_cdc_mount_cb(uint8_t idx) {
|
||||
printout("\n[++] CDC Device");
|
||||
SerialTinyUSB.printf("CDC Device attached, idx = %d\r\n", idx);
|
||||
}
|
||||
|
||||
// Invoked when a device with CDC (Communication Device Class) interface is unmounted
|
||||
void tuh_cdc_umount_cb(uint8_t idx) {
|
||||
SerialTinyUSB.printf("CDC Device unmounted, idx = %d\r\n", idx);
|
||||
}
|
||||
|
||||
// END of OTHER Host devices detector section
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
pictures/version1_2.png
Normal file
BIN
pictures/version1_2.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 121 KiB |
Reference in New Issue
Block a user