auto3000 / pedalpii

pedalpi: an affordable but complete computer-based pedalboard for guitar/bass
GNU General Public License v3.0
7 stars 1 forks source link

Pedalpi HW setup? #1

Closed zavorra closed 6 years ago

zavorra commented 6 years ago

Hi,

could you provide somewhere a description of your pedal HW setup?

Thanks in advance

G

auto3000 commented 6 years ago

Hello zavorra,

I put a list of components in the README.md. pedalpii sw only requires to access to some GPIOs to connect to a knob and a LCD screen, but the whole pedalpi system also require a sound card etc, you can find more info on pedalpi-dev-platform project.

But you are right, I did not put easy-to-follow procedure with steps to build the pedal. I did some photos of the pedal mount and photos for each each part nine months ago, but I did not find space and time to produce a document.

Feel free to ask for specific question.

Regards.

zavorra commented 6 years ago

Ok, thanks. I see.

By the way, how is pedalPII performing? I see that tou are not using a realtime/lowlatency kernel.

auto3000 commented 6 years ago

Pedalpi latency definition: physically, a "sound" that arrives into a jack input will be transformed/filtered and set to physical jack output.

Pedapi latency is 5ms on the Nanopi Neo Air. Check this commit: https://github.com/auto3000/pedalpi-dev-platform/commit/8a0cb8e7873cd5ae739bd6ffaad8019aa402b2ba

For comparison, 5ms is the time for sound to propagate through 3 meters in air.

But the performance is per platform-basis. We have tuned Linux config and Linux drivers to reach desired pedalpi latency. You can find platform-based optimization in pedalpi-dev-platform. I did not measure latency on raspberry pi recently, but I think it would be something like 30ms.

The "realtime/lowlatency" kernel is not needed since CPU load is low and audio does not need minimal latency (5ms is eternity) ; Linux has been configured at a minimum to reach latency goals.

We managed and we allocated critical tasks (audio filtering processes and interrupts) to avoid perturbation at runtime by non-critical and service tasks (logging or web/UI interfaces). The audio software is based on JACK, which is a decent audio framework for this kind of task.

auto3000 commented 6 years ago

Additional info, during the measurements of the 5ms, I observed near 4ms are contributed by the DAC/ADC hw conversion. Audio software and Linux drivers impact on latency is consequently minor. Your are free to find or design better hardware :)

auto3000 commented 6 years ago

I'm closing this ticket. Don't hesitate to give your feedback and create a new ticket.