colatino / picozoom Goto Github PK
View Code? Open in Web Editor NEWA MIDI controller based on the Raspberry pi Pico for Zoom pedals
A MIDI controller based on the Raspberry pi Pico for Zoom pedals
Em primeiro lugar obrigado por compartilhar o trabalho!!
Te escrevo pois ao tentar verificar/compilar o código estou recebendo um erro de múltiplas definições de um parâmetro. Como não conheço nada de programação e é minha primeira experiência com Arduíno imagino que possa ser algo mais simples do que parece.
c:\Users\Desktop\Documents\Arduino\libraries\Adafruit_TinyUSB_Library\src\arduino\Adafruit_USBD_CDC.cpp:50:9: error: redefinition of 'static uint8_t Adafruit_USBD_CDC::getInstanceCount()'
50 | uint8_t Adafruit_USBD_CDC::getInstanceCount(void) { return _instance_count; }
| ^~~~~~~~~~~~~~~~~
In file included from C:\Users\Desktop\AppData\Local\Arduino15\packages\rp2040\hardware\rp2040\3.7.2\cores\rp2040/Arduino.h:115,
from c:\Users\Desktop\Documents\Arduino\libraries\Adafruit_TinyUSB_Library\src\arduino\Adafruit_USBD_CDC.cpp:29:
C:\Users\Desktop\AppData\Local\Arduino15\packages\rp2040\hardware\rp2040\3.7.2/libraries/Adafruit_TinyUSB_Arduino/src/arduino/Adafruit_USBD_CDC.h:46:18: note: 'static uint8_t Adafruit_USBD_CDC::getInstanceCount()' previously defined here
46 | static uint8_t getInstanceCount(void) { return _instance_count; }
| ^~~~~~~~~~~~~~~~
Multiple libraries were found for "Adafruit_TinyUSB.h"
Used: C:\Users\Desktop\Documents\Arduino\libraries\Adafruit_TinyUSB_Library
Not used: C:\Users\Desktop\AppData\Local\Arduino15\packages\rp2040\hardware\rp2040\3.7.2\libraries\Adafruit_TinyUSB_Arduino
exit status 1
Compilation error: exit status 1
Passos realizados
Em tempo, eu consigo conectar o PI PICO via USB e fazer os exemplos de piscar o LED
Consegue me dar uma orientação?
Obrigado,
Thiago
Olá André, estou com dificuldades de fazer o codigo funcionar
Hi
this is a great project. It will help me play at church for sure. I got all the libraries and dependencies I found (Adafruit_TinyUSB_Arduino, Pico-PIO-USB, Adafruit_SSD1306, Adafruit-GFX-Library, Adafruit_BusIO, arduino_midi_library). I also selected the board as instructed on Github (Pico). When I do a Verify on the code, I am getting the following error. It seems either a declare is nissing n the code, or I have a missing library. Please help to get this fixed. Thank you.
Arduino: 1.8.19 (Linux), Board: "Raspberry Pi Pico, 2MB (no FS), 120 MHz, Small (-Os) (standard), Disabled, Disabled, Disabled, Disabled, None, Adafruit TinyUSB, IPv4 Only, Default (UF2)"
../Documents/Pedal/beta/beta.ino: In function 'void poll_midi_host_rx()':
beta:771:10: error: 'tuh_midi_configured' was not declared in this scope; did you mean 'tuh_configure'?
771 | if (!tuh_midi_configured(midi_dev_addr)) {
| ^~~~~~~~~~~~~~~~~~~
| tuh_configure
beta:777:9: error: 'tuh_midih_get_num_rx_cables' was not declared in this scope
777 | if (tuh_midih_get_num_rx_cables(midi_dev_addr) < 1) {
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
beta:781:5: error: 'tuh_midi_read_poll' was not declared in this scope; did you mean 'tud_midi_read'?
781 | tuh_midi_read_poll(midi_dev_addr);
| ^~~~~~~~~~~~~~~~~~
| tud_midi_read
/home/marcos/Documents/Pedal/beta/beta.ino: In function 'void midi_host_task()':
beta:790:5: error: 'tuh_midi_stream_flush' was not declared in this scope; did you mean 'tud_midi_stream_write'?
790 | tuh_midi_stream_flush(midi_dev_addr);
| ^~~~~~~~~~~~~~~~~~~~~
| tud_midi_stream_write
/home/marcos/Documents/Pedal/beta/beta.ino: In function 'void send_sysex(uint8_t*, int)':
beta:878:5: error: 'tuh_midi_packet_write' was not declared in this scope; did you mean 'tud_midi_packet_write'?
878 | tuh_midi_packet_write(midi_dev_addr, packet);
| ^~~~~~~~~~~~~~~~~~~~~
| tud_midi_packet_write
/home/marcos/Documents/Pedal/beta/beta.ino: In function 'void tuh_midi_rx_cb(uint8_t, uint32_t)':
beta:930:11: error: 'tuh_midi_packet_read' was not declared in this scope; did you mean 'tud_midi_packet_read'?
930 | if (tuh_midi_packet_read(dev_addr, packet)) {
| ^~~~~~~~~~~~~~~~~~~~
| tud_midi_packet_read
'tuh_midi_configured' was not declared in this scope; did you mean 'tuh_configure'?
Hi,
I'm starting to play with my G1X four (I'm better at coding that playing guitar, so I need an excuse not to practice my scales 😝 )
You did an amazing job here.
Do you know by any chance the sysex
code to switch between the Memory -> Stomp -> Edit
modes?
Thx a lot,
Cheers
Hi, I am pretty sure this is a newbie/environment related problem as this is my first time using Pico and Raspberry. I have several projects in ESP32.
The following error is happening when compiling the code:
In file included from e:\Users\Jungle Boy\Documents\Arduino\libraries\Pico_PIO_USB\src\pio_usb.c:17:0:
C:\Users\Jungle Boy\AppData\Local\Arduino15\packages\arduino\hardware\mbed_rp2040\4.0.2\cores\arduino/mbed/targets/TARGET_RASPBERRYPI/TARGET_RP2040/pico-sdk/common/pico_stdlib/include/pico/stdlib.h:11:10: fatal error: pico/stdio.h: No such file or directory
#include "pico/stdio.h"
I already tried to reinstal SDK but no luck. Anyone can please give me some light??
Thanks
In file included from C:\Users\CJNS\AppData\Local\Temp\arduino\sketches\23D4F6FED3E93305B261E872E3B7ED67\sketch\beta.ino.cpp:1:
C:\Users\CJNS\AppData\Local\Arduino15\packages\rp2040\hardware\rp2040\3.9.3\cores\rp2040/Arduino.h:115:10: fatal error: Adafruit_USBD_CDC.h: No such file or directory
115 | #include "Adafruit_USBD_CDC.h"
| ^~~~~~~~~~~~~~~~~~~~~
compilation terminated.
exit status 1
Compilation error: exit status 1
Please help. I'm getting this error even though I used the custom Adafruit_TinyUSB_Library
Chefe, está dando o seguinte erro ao fazer o upload do código, consegue me ajudar
D:\PicoZoom-main\PicoZoom-main\src\beta\footswitch.cpp: In member function 'foot_switch_state_t FootSwitch::task()':
D:\PicoZoom-main\PicoZoom-main\src\beta\footswitch.cpp:47:33: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'int' [-Wsign-compare]
47 | if (_trigger_time - _time >= _debounce_time) {
| ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
D:\PicoZoom-main\PicoZoom-main\src\beta\footswitch.cpp:61:28: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'int' [-Wsign-compare]
61 | if (millis() - _time > _debounce_time) {
| ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~
D:\PicoZoom-main\PicoZoom-main\src\beta\footswitch.cpp:74:17: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'int' [-Wsign-compare]
74 | if (tempo >= _debounce_time) {
| ~~~~~~^~~~~~~~~~~~~~~~~
D:\Hebert\PicoZoom-main\PicoZoom-main\src\beta\footswitch.cpp:94:17: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'int' [-Wsign-compare]
94 | if (tempo >= _debounce_time) {
| ~~~~~~^~~~~~~~~~~~~~~~~
In file included from D:\Hebert\PicoZoom-main\PicoZoom-main\src\beta\oled.cpp:27:
D:\PicoZoom-main\PicoZoom-main\src\beta\oled.h:1:10: error: expected constructor, destructor, or type conversion before '(' token
1 | License (MIT)
| ^
D:\PicoZoom-main\PicoZoom-main\src\beta\oled.cpp: In member function 'void Oled::draw_tempo(int, const char*)':
D:\PicoZoom-main\PicoZoom-main\src\beta\oled.cpp:115:12: warning: unused variable 'w' [-Wunused-variable]
115 | uint16_t w, h;
| ^
D:\Hebert\PicoZoom-main\PicoZoom-main\src\beta\oled.cpp:115:15: warning: unused variable 'h' [-Wunused-variable]
115 | uint16_t w, h;
| ^
D:\Hebert\PicoZoom-main\PicoZoom-main\src\beta\oled.cpp:116:11: warning: unused variable 'x1' [-Wunused-variable]
116 | int16_t x1, y1;
| ^~
D:\Hebert\PicoZoom-main\PicoZoom-main\src\beta\oled.cpp:116:15: warning: unused variable 'y1' [-Wunused-variable]
116 | int16_t x1, y1;
| ^~
In file included from D:\Hebert\PicoZoom-main\PicoZoom-main\src\beta\beta.ino:49:
D:\Hebert\PicoZoom-main\PicoZoom-main\src\beta\oled.h:1:10: error: expected constructor, destructor, or type conversion before '(' token
1 | License (MIT)
| ^
In file included from c:\Users\heber\OneDrive\Documentos\Arduino\libraries\Adafruit_GFX_Library/Adafruit_GFX.h:10,
from D:\Hebert\PicoZoom-main\PicoZoom-main\src\beta\oled.h:30:
c:\Users\heber\OneDrive\Documentos\Arduino\libraries\Adafruit_GFX_Library/gfxfont.h:18:3: error: 'GFXglyph' does not name a type
18 | } GFXglyph;
| ^~~~~~~~
c:\Users\heber\OneDrive\Documentos\Arduino\libraries\Adafruit_GFX_Library/gfxfont.h:23:3: error: 'GFXglyph' does not name a type
23 | GFXglyph glyph; ///< Glyph array
| ^~~~~~~~
D:\Hebert\PicoZoom-main\PicoZoom-main\src\beta\beta.ino: In function 'void parse_patch()':
D:\Hebert\PicoZoom-main\PicoZoom-main\src\beta\beta.ino:248:9: warning: unused variable 'edtb_end' [-Wunused-variable]
248 | int edtb_end = find_section_index("PPRM");
| ^~~~~~~~
D:\PicoZoom-main\PicoZoom-main\src\beta\beta.ino: In function 'void parse_sysex()':
D:\PicoZoom-main\PicoZoom-main\src\beta\beta.ino:343:15: warning: unused variable 'tempo' [-Wunused-variable]
343 | int tempo = high ? 128 + low : low;
| ^~~~~
D:\PicoZoom-main\PicoZoom-main\src\beta\beta.ino: In function 'void isr()':
D:\PicoZoom-main\PicoZoom-main\src\beta\beta.ino:365:17: warning: unused variable 'aux_time' [-Wunused-variable]
365 | unsigned long aux_time = millis();
| ^~~~~~~~
D:\Hebert\PicoZoom-main\PicoZoom-main\src\beta\beta.ino: In function 'void handle_footswitch_states_and_tasks()':
D:\Hebert\PicoZoom-main\PicoZoom-main\src\beta\beta.ino:432:37: warning: suggest parentheses around '&&' within '||' [-Wparentheses]
432 | if (temp_state == TEMPO && strcmp(pname, "Time") == 0 || strcmp(pname, "TimeA") == 0) {
| ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
D:\PicoZoom-main\PicoZoom-main\src\beta\beta.ino:478:21: warning: unused variable 'tempo' [-Wunused-variable]
478 | unsigned long tempo = footswitch[i].get_tempo();
| ^~~~~
D:\PicoZoom-main\PicoZoom-main\src\beta\beta.ino: In function 'void tuh_midi_mount_cb(uint8_t, uint8_t, uint8_t, uint8_t, uint16_t)':
D:\PicoZoom-main\PicoZoom-main\src\beta\beta.ino:803:47: warning: unused parameter 'in_ep' [-Wunused-parameter]
803 | void tuh_midi_mount_cb(uint8_t daddr, uint8_t in_ep, uint8_t out_ep, uint8_t num_cables_rx, uint16_t num_cables_tx) {
| ~~~~~~~~^~~~~
D:\PicoZoom-main\PicoZoom-main\src\beta\beta.ino:803:62: warning: unused parameter 'out_ep' [-Wunused-parameter]
803 | void tuh_midi_mount_cb(uint8_t daddr, uint8_t in_ep, uint8_t out_ep, uint8_t num_cables_rx, uint16_t num_cables_tx) {
| ~~~~~~~~^~~~~~
D:\Hebert\PicoZoom-main\PicoZoom-main\src\beta\beta.ino:803:78: warning: unused parameter 'num_cables_rx' [-Wunused-parameter]
803 | void tuh_midi_mount_cb(uint8_t daddr, uint8_t in_ep, uint8_t out_ep, uint8_t num_cables_rx, uint16_t num_cables_tx) {
| ~~~~~~~~^~~~~~~~~~~~~
D:\PicoZoom-main\PicoZoom-main\src\beta\beta.ino:803:102: warning: unused parameter 'num_cables_tx' [-Wunused-parameter]
803 | void tuh_midi_mount_cb(uint8_t daddr, uint8_t in_ep, uint8_t out_ep, uint8_t num_cables_rx, uint16_t num_cables_tx) {
| ~~~~~~~~~^~~~~~~~~~~~~
D:\Hebert\PicoZoom-main\PicoZoom-main\src\beta\beta.ino: In function 'void tuh_umount_cb(uint8_t)':
D:\Hebert\PicoZoom-main\PicoZoom-main\src\beta\beta.ino:809:28: warning: unused parameter 'daddr' [-Wunused-parameter]
809 | void tuh_umount_cb(uint8_t daddr) {
| ~~~~~~~~^~~~~
D:\PicoZoom-main\PicoZoom-main\src\beta\beta.ino: In function 'void send_sysex(uint8_t, int)':
D:\PicoZoom-main\PicoZoom-main\src\beta\beta.ino:856:23: warning: statement has no effect [-Wunused-value]
856 | packet[0] == 0x05;
| ~~~~~~~~~~^~~~~~~
D:\PicoZoom-main\PicoZoom-main\src\beta\beta.ino:859:23: warning: statement has no effect [-Wunused-value]
859 | packet[0] == 0x06;
| ~~~~~~~~~~^~~~~~~
D:\PicoZoom-main\PicoZoom-main\src\beta\beta.ino: In function 'void tuh_midi_rx_cb(uint8_t, uint32_t)':
D:\PicoZoom-main\PicoZoom-main\src\beta\beta.ino:927:9: warning: unused variable 'i' [-Wunused-variable]
927 | int i = 1;
| ^
D:\PicoZoom-main\PicoZoom-main\src\beta\beta.ino: In function 'void clone_descriptors(tuh_xfer_t*)':
D:\PicoZoom-main\PicoZoom-main\src\beta\beta.ino:957:17: warning: unused variable 'daddr' [-Wunused-variable]
957 | uint8_t const daddr = xfer->daddr;
| ^~~~~
Multiple libraries were found for "Adafruit_TinyUSB.h"
Used: C:\Users\OneDrive\Documentos\Arduino\libraries\Adafruit_TinyUSB_Library
Not used: C:\Users\AppData\Local\Arduino15\packages\rp2040\hardware\rp2040\3.7.2\libraries\Adafruit_TinyUSB_Arduino
Using library MIDI Library at version 5.0.2 in folder: C:\Users\OneDrive\Documentos\Arduino\libraries\MIDI_Library
Using library Pico PIO USB at version 0.5.3 in folder: C:\Users\OneDrive\Documentos\Arduino\libraries\Pico_PIO_USB
Using library Adafruit TinyUSB Library at version 1.14.3 in folder: C:\Users\heber\OneDrive\Documentos\Arduino\libraries\Adafruit_TinyUSB_Library
Using library Adafruit GFX Library at version 1.11.9 in folder: C:\Users\heber\OneDrive\Documentos\Arduino\libraries\Adafruit_GFX_Library
Using library Adafruit BusIO at version 1.15.0 in folder: C:\Users\heber\OneDrive\Documentos\Arduino\libraries\Adafruit_BusIO
Using library Wire at version 1.0 in folder: C:\Users\heber\AppData\Local\Arduino15\packages\rp2040\hardware\rp2040\3.7.2\libraries\Wire
Using library SPI at version 1.0 in folder: C:\Users\heber\AppData\Local\Arduino15\packages\rp2040\hardware\rp2040\3.7.2\libraries\SPI
Using library Adafruit SSD1306 at version 2.5.9 in folder: C:\Users\OneDrive\Documentos\Arduino\libraries\Adafruit_SSD1306
exit status 1
Compilation error: expected constructor, destructor, or type conversion before '(' token
Hello, amazing work. Do you think it's possible to use it with zoom multi stomp MS-60B
THANK YOU <3
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.