Giter VIP home page Giter VIP logo

daisyseedprojects's Introduction

Daisy Seed Projects

This is a demo of a pedal board I put together using 3 of my custom Daisy Seed based guitar pedals. I designed and built the hardware and programmed the software. Everything shown here is open source and all the code, pcb files, and basic instructions on how to build the pedals, can be found on these pages.

Demo Video

Software Projects:

The software that can run on any of the custom Guitar Pedal hardware projects listed below as well at the PedalPCB Terrarium hardware. This software is a flexible platform that abstracts the underlying Guitar Pedal hardware and allows a collection of Effects Modules to run on any of those hardware platforms.

Hardware Projects:

I provide everything you need to build any of pedals you see below along with pretty detailed documentation. However, recently I started to get a lot of requests to buy kits or finished pedals based on my designs. This is not something I typically do, but sometimes I do have extra PCBs, parts, and enclosures lying around and I'm willing to pass them along to you, basically at cost. I've included some ordering details along with each design below.

A feature rich and flexible platform for making DSP based guitar FX pedals. Stereo Audio, Midi in/out, OLED Display, Rotary Encoder for Menu Navigation, 6 Knobs, 2 LEDs, 2 Foot Switches, Relay based "True Bypass" switching, all based on the Daisy Seed microcontroller.

Ordering Information

FinalProduct125b CircuitBoard125b

A robust and tiny platform for making DSP based guitar FX pedals. Stereo Audio, Midi in/out, 4 Knobs, 2 LEDs, 1 or 2 Foot Switches, Relay based "True Bypass" switching, all based on the Daisy Seed microcontroller. Using SMD parts for easy manufacturing by a fab such as JLCPCB.

Ordering Information

FinalProduct1590b-SMD CircuitBoard1590b-SMD

Same form factor and features as the SMD version of the 1590b pedal, minus the Relay based "True Bypass" switching. Using all Through-Hole parts for easy assembly at home with limited soldering skills.

Ordering Information

FinalProduct1590b CircuitBoard1590b

More Information about the Daisy Seed can be found at:

http://electro-smith.com

daisyseedprojects's People

Contributors

bkshepherd avatar keyth72 avatar guitarml avatar jaching avatar knighthill avatar

Stargazers

 avatar Jerry M. Lineberry avatar  avatar  avatar  avatar Mai avatar  avatar Lei Huang avatar Objeto Imposible avatar Loupsalio avatar Shant Donabedian avatar Jonatan avatar  avatar Mart Coppelmans avatar  avatar Stéphane Busso avatar Darwin Do avatar Jakub Smolik avatar Brian Zier avatar Omid Shahbazi avatar Bohan Zhang avatar  avatar Jeremiah Peschka avatar Michail Electronshik avatar  avatar GT avatar overtinkering avatar ltfll avatar xaralis avatar BlueXav avatar  avatar  avatar  avatar Antoine RAYNARD avatar Stinni Ragneyjarson avatar fro avatar  avatar Cat Azazel avatar Simon Durbridge avatar bidu avatar Wynter Woods avatar  avatar  avatar Sean Canned Bean avatar Salim B avatar tarxvf avatar Corey Donicz avatar  avatar Agus Setiawan avatar  avatar  avatar Todd Berlin avatar  avatar Thorbiörn Fritzon avatar  avatar  avatar Jon Yoo avatar Roger Pettett avatar  avatar Mike Mitchell avatar kan kan mikan avatar doodlewhale avatar  avatar Autodafe avatar Nathaniel Bonini avatar Chris Sprance avatar Bill OConnor avatar Carl Welch avatar  avatar Agnis Aldiņš "NeZvērs" avatar Roberto Grijalva avatar  avatar  avatar Robin Willig avatar Maciek Odrowaz avatar John Mamish avatar Martin Lopez avatar Chaz Davis avatar Neil Brewitt avatar Justin McElhaney avatar  avatar Lucas avatar  avatar  avatar Bryan Chow avatar Maciek Radwan avatar Tobias Schaab avatar Tobias Wahyudi avatar  avatar E. John Feig avatar Tailzer avatar  avatar  avatar jdickman avatar Marcus avatar Kelsea avatar Terje A. Antonsen avatar Cristian Franceschet avatar jeremy avatar Gustavo Lazzari avatar

Watchers

xaralis avatar  avatar  avatar Kenneth Jackson avatar  avatar  avatar Allen Turner avatar Hartland PC avatar  avatar  avatar  avatar Stinni Ragneyjarson avatar  avatar  avatar Mike J. Newton avatar  avatar  avatar  avatar thawney avatar  avatar

daisyseedprojects's Issues

Where is the UiSystemDemo.cpp file?

In guitar_pedal_ui.cpp it is written:

// These will be called from the UI system. @see InitUi() in UiSystemDemo.cpp
void FlushCanvas(const UiCanvasDescriptor& canvasDescriptor)
{
    ...
}

I can't seem to find the file in the repo.

Rev7 Seed Noise

There is an issue causing noise in the signal when there is one of my pedals using a Rev7 Daisy Seed has another one of my pedals connected to the output of the first pedal. It doesn't matter which rev Daisy Seed is in the second pedal, the noise will occur.

This issue does not occur when using multiple of my pedals with Rev 5 Daisy Seeds in each of them back to back.
This issue does not occur when there is only a single one of my pedals in the signal chain.

Working with Electro-Smith to identify and resolve the issue. No further information at this time.

It can be difficult to remove the PCB from the 125b enclosure

This issue affects the GuitarPedal125b design. The TRS 1/8" Midi jacks on the PCB can cause the PCB to be quite difficult to be removed from the 125b enclosure. This is because the end of the midi jack must protrude part way through the enclosure to allow the plug to make proper contact with the jack on the PCB.

Pots 4-6 in the GuitarPedal125b hardware non-ideally rotated 180 degrees

The second row of pots (4-6) on the GuitarPedal125b hardware are non-ideally rotated 180 degrees. The primary issue with this is exacerbated by the fact that the pots are D-shaft which makes it so that any D-shaft knobs used don't have their indicators line up properly. The work around is to use smooth shaft knobs, but these are hard to secure properly and hard to level properly when used on the d-shaft.

The rotation was unfortunately necessary to be able to fit all the elements onto the PCB. It's not a simple matter of rotating the elements on the PCB 180 degrees. The elements will no longer fit anymore if that is done. I've explored a number of possible alternative layouts to make it work, but it doesn't seem possible with the current set of features.

The use of D-shaft pots was also unfortunately necessary due to the fact that the Bournes PRS11R family of Pots is only available in D-shaft. This family of pots was selected because it was the only pot slim enough to pair well and match the height of the Bounes PEC11R family of encoders.

There are through-hole pins located under some of the pots which can cause electrical shorts

This issue affects the GuitarPedal125b hardware design. There are a number of through-hole components that are directly under the PCB mounted PRS11R pots. If these protruding pins touch the underside of the pots they can cause electrical shorts causing the hardware to malfunction or not behave as expected. This is specifically an issue with Pot1, Pot3, and Pots 4-6.

This issue is mentioned in the hardware build instructions and the recommend work around is to isolate the pots from the pcb using doublesided foam tape as described here. This is less than ideal, but it works.

Potential future workarounds include redesigning the PCB to use surface mount parts instead of the through-hole parts that are protruding, but would require a fairly large re-layout of the entire PCB.

Flash utilization

Flash utilization is 97.16% after the latest changes. It is unlikely more than one or two new effects can be added. I am wondering if there is a cheap way to decrease that.

dfu-util: Last page at 0x90061c6f is not writeable

Hi, I just built a GuitarPedal1590b-SMD and I'm trying to flash the Daisy Seed. I followed the instructions to set up the build environment and compile the code, which all worked correctly, but when I try to run make program-dfu I get:

dfu-util -a 0 -s 0x90040000:leave -D build/guitarpedal.bin -d ,0483:df11
dfu-util 0.11

Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
Copyright 2010-2021 Tormod Volden and Stefan Schmidt
This program is Free Software and has ABSOLUTELY NO WARRANTY
Please report bugs to http://sourceforge.net/p/dfu-util/tickets/

dfu-util: Warning: Invalid DFU suffix signature
dfu-util: A valid DFU suffix will be required in a future dfu-util release
Deducing device DFU version from functional descriptor length
Deducing device DFU version from functional descriptor length
Opening DFU capable USB device...
Device ID 0483:df11
Device DFU version 011a
Claiming USB DFU Interface...
Setting Alternate Interface #0 ...
Determining device status...
DFU state(2) = dfuIDLE, status(0) = No error condition is present
DFU mode device DFU version 011a
Device returned transfer size 1024
DfuSe interface name: "Internal Flash "
Downloading element to address = 0x90040000, size = 138352
dfu-util: Last page at 0x90061c6f is not writeable
make: *** [libDaisy/core/Makefile:330: program-dfu] Error 64

I'm able to flash the Blink program from DaisyExamples just fine - any idea what's going on?

Guitar Pedal Settings Storage is currently limited to 8 active effects with 16 parameters each

The current software implemented of local storage on QSPI for the storage of effect parameters settings is quite simplistic and limited.

The current implementation in guitar_pedal_storage.h & .cpp is hard coded to treat each effect parameter as a u_int8 type and to simply allocated a block of memory in the QSPI region that is SETTINGS_MAX_EFFECT_COUNT * SETTINGS_MAX_PARAM_COUNT * sizeof(u_int8) bytes. Using this approach, it's quite easy to look up the stored value for a parameter by simply using an offset into this block of memory. Unfortunately, this is quite limited and not very flexible for future use. In the current code base SETTINGS_MAX_EFFECT_COUNT is set to 8 and SETTINGS_MAX_PARAM_COUNT is set to 16. Which effectively limits the device to a max of 8 active effects with up to 16 parameters each. This is not a hardware memory limit. Those numbers were chosen quite arbitrarily. If you need more parameters feel free to adjust those defines for your own purposes.

This presents a great opportunity for someone wanting to contribute to the project to get started with something that wouldn't be too hard to improve. Some ideas that would make this a lot more flexible:

  • Allow an arbitrary number of presets
  • Allow an arbitrary number of effect parameters per preset
  • Only allocate the actual amount of storage needed to save a preset for a particular effect module
  • Support additional stored data types beyond u_int8. In would be nice to store some parameters as floats for instance.
  • Bonus points if presets stored in the old format can easily be updated to the new format.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.