Shop OBEX P1 Docs P2 Docs Learn Events
PROJECT: OpenStomp(TM) Coyote-1 (Guitar Effects Pedal) — Parallax Forums

PROJECT: OpenStomp(TM) Coyote-1 (Guitar Effects Pedal)

epmoyerepmoyer Posts: 314
edited 2008-08-23 17:45 in Customer Projects
The website for my Propeller based guitar effects pedal has just gone online at www.openstomp.com.

The original discussion, along with some development photos, can be found in this in this thread: http://forums.parallax.com/showthread.php?p=690777.

purple_6T.jpg

▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
The World's First Open Source Guitar Pedal:··http://www.OpenStomp.com

Post Edited (epmoyer) : 6/30/2008 12:28:05 AM GMT
«134

Comments

  • mosquito56mosquito56 Posts: 387
    edited 2008-02-25 20:19
    Took a look at your page and am interested. Any idea of general cost, i.e. >$200, less than $100. Will you be putting demo's on your page to hear what "Special effects" you can do.

    · I am·new to guitar and·haven't purchased any pedals so timing looks perfect.

    I·have a spiderIII/30. Will the howler connect to the fbv pedal port?



    Add me to price list please.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    ·······

    ······· "What do you mean, it doesn't have any tubes?"
    ······· "No such thing as a dumb question" unless it's on the internet
    ········
  • epmoyerepmoyer Posts: 314
    edited 2008-02-25 20:41
    I haven't used one of the Spider series amps before, but from what I found on the web I think the FBV port is a Line6 proprietary interface. If the amp doesn't have a 1/4 inch effects loop in/out then you would just cable the pedal before the amp like any other 1/4 inch in/out effects pedal.

    There is a demo song up in the original thread listed above. I'll put some more demos up on the website as I go along. There are some neat things coming.

    I'm determined to keep the Howler under $300, but the final pricing is still waiting on the finalization of the chassis quote, and there are a lot of process steps to pull together there (raw steel, laser cutting, beding, mounting hardware installation, painting, silk screening).

    Post Edited (epmoyer) : 2/26/2008 4:03:14 PM GMT
  • mosquito56mosquito56 Posts: 387
    edited 2008-02-25 23:43
    Sorry, don't see the link to the demo.

    Nice pagework so far on the site. Simple, elegant and non cluttered.

    As a potential customer I might ask? Why would I spend over $200 for you product when there are alot of pedals out there?

    Since I know nothing about pedals at all I was thinking a page showing what you can do that others can't might be an idea. Just a suggestion.

    Proprietary on the fsb is not supprising but the amp was so cheap, what the heck. The pedal wll probably be more than the amp, lol.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    ·······

    ······· "What do you mean, it doesn't have any tubes?"
    ······· "No such thing as a dumb question" unless it's on the internet
    ········
  • Graham StablerGraham Stabler Posts: 2,510
    edited 2008-02-25 23:59
    Mos~56, 15th post
  • Bob Lawrence (VE1RLL)Bob Lawrence (VE1RLL) Posts: 1,720
    edited 2008-02-26 00:03
    Try this: (I moved it over from the other thread)

    epmoyer
    Music maker, dreamer of dreams



    Email Address Not AvailablePersonal Homepage Not AvailableSend a Private Message to epmoyerAIM Not AvailableICQ Not AvailableY! Not AvailableMSN Not Available
    Date Joined Apr 2007
    Total Posts : 248
    Posted 11/22/2007 9:16 PM (GMT -8) Quote This PostIgnore Posts From epmoyer.Alert An Admin About This Post.

    OK, here’s the first demo recording I did. The file’s only 80kbps, but that's the best I could do given the file size limitations on this forum. The background guitar uses the Chorus effect. The three main parts of the song have a second guitar with the tremolo, followed by the delay, followed by the distortion. All tracks were recorded using the same guitar with the exactly the same knob settings so that the operation of the effects was not masked by other changes (other than the distortion, for which I cranked up my guitar’s built in compressor so that I would get more sustain). I would normally have used some reverb but I haven’t written one yet and I didn’t want to add any effects that weren’t coming from the pedal.

    Distortion normally uses some filtering to affect which frequency ranges get distorted. This one doesn’t yet, so it’s a little rough. I also didn't have these effects written to use the knobs for parameter alteration at the time, so I had to dial in the delay time by iteratively changing my constants and recompiling; It’s not quite matched to the song tempo, but pretty close. Chorus usually uses some sample interpolation to avoid the noise of sliding the delay line tap point back and forth at discrete sample steps. The current version doesn't, but the noise is not very noticeable in this recording. If I play harder it becomes more evident.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Aka: CosmicBob

    Post Edited (Bob Lawrence (VE1RLL)) : 2/26/2008 12:13:44 AM GMT
  • epmoyerepmoyer Posts: 314
    edited 2008-02-26 00:08
    Good question! The strength of the Howler is that it is programmable. Its purpose is to facilitate a community of users who create and share new and interesting effects of their own design. In a lot of ways it is like the first Apple II, in that it is a platform on which cool things can be done, and they will come over time.

    At the outset, there are a number of cool things which it will do out of the box. One is a "KT Tunstall" type delay loop which one can layer multiple passes onto "live", and which has a very long loop length by guitar pedal standards (almost 8 seconds at 24 bit resolution, and around 12 if you go to 16 bit).

    As for the price point, its on the high side because it's a "boutique" pedal with a rather specific target audience and low production volume. If it was the kind of thing you could sell 4,000 a month of then the price point could be brought way down by paying for extrusion tooling and manufacturing it off-shore. The Hydra plays in the same market space in a way; it costs as much as a WII and doesn't compare from a performance standpoint, but It's worth the cost because it's so unique and fun (which is why I have one). That said, I also have a WII, and as guitar pedals go I also have a Line6 PodXT Live which I adore and wouldn't dare get rid of. If you're looking for the most guitar-effect performance and commercial versatility for your buck, you'd go get something like the PodXT (which is why I have one [noparse]:)[/noparse], but If you're lucky enough to be able to put some disposable income toward a unique tool with all the coolness the propeller has to offer, then the Howler is the ticket.

    In the end I'm really not looking to make a salary off this thing. I've just wanted someone else to make an open-source pedal for 5 years now and nobody has stepped up to the plate so I found I had to do it myself. Since I'm bothering to do it I'm going to do it right, and make it commercially available so that anyone who wants to come along for the ride is welcome to join me. I'm absolutely thrilled that Andre' did it with the Hydra; that's one less thing I have to make myself [noparse];)[/noparse]

    Post Edited (epmoyer) : 2/26/2008 4:03:24 PM GMT
  • mosquito56mosquito56 Posts: 387
    edited 2008-02-26 18:16
    Listened to your file AWSOME effects.

    ·I think you hit someting if you can make the interface easy enough for a non programmer to use.

    ·1.Add a drum accoup.

    ·2. Add a chorus?

    3. Add a second guitar that is an octave above or below?

    4. With the prop you could make guitar sound like anything like the keyboards do.

    4. Metronome

    ·I was thinking maybe you could sell it as a kit and cut labor costs and sales costs. Look forward to your progress.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    ·······

    ······· "What do you mean, it doesn't have any tubes?"
    ······· "No such thing as a dumb question" unless it's on the internet
    ········
  • epmoyerepmoyer Posts: 314
    edited 2008-02-26 18:30
    mosquito56,

    The kit idea is an interesting one; it actually hadn't occurred to me. Soldering surface mount components isn't for everyone, but I built up the first PCB by hand so it is certainly possible. I'll give it some serious thought.

    The interface is definitely designed so that a non-programmer can easily use the effects other people write, and "Patches" (combinations of "Effects" which come from dowloadable "Modules") can be easily created in the Howler Workbench with no programming required.

    There is chorus (from the Howler) in the sample audio on the background guitar. I purposefully kept the audio free of drums and such because it was an effects demo and I wanted the effects to be heard clearly. That's also why I didn't add any other effects (like reverb) which were not coming from the pedal. The recording is two separate tracks; one for rhythm guitar and one for lead, and both traccks are recorded without any effects other than the Howler direct output.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    The World's First Open Source Guitar Pedal:··http://www.OpenStomp.com

    Post Edited (epmoyer) : 6/30/2008 12:28:21 AM GMT
  • ClemensClemens Posts: 236
    edited 2008-02-26 18:59
    I sure wish, the OS of my Roland MC 909 Grovebox was open source like this one! The machine is cool hardware but the software has some unresolved bugs.
    I think your Pedal is a really cool idea. Sorry for the remark about the name, I definitely did not want to be the party pooper. smile.gif

    Wouldn't it be cool to put an acceleration/tilt sensor inside the guitar and connect the input to the pedal, so people can control effects like wah-wah just by waving the instrument around? That way all these poser-gestures like spinning the guitar around ones neck could lead to interesting sound effects... LOL, just a thought.
  • epmoyerepmoyer Posts: 314
    edited 2008-02-26 19:06
    Clemens said...

    Wouldn't it be cool to put an acceleration/tilt sensor inside the guitar and connect the input to the pedal, so people can control effects like wah-wah just by waving the instrument around? That way all these poser-gestures like spinning the guitar around ones neck could lead to interesting sound effects... LOL, just a thought.
    Now that's exactly what I'm talking about! You could certainly build such a sensor, wire it up to the Howler's expansion port, and program it to control whatever you wanted. That's preceisely the kind of idea space I want to be able play around in. Great idea!

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    The World's First Open Source Guitar Pedal:··http://www.OpenStomp.com

    Post Edited (epmoyer) : 6/30/2008 12:29:00 AM GMT
  • Bob Lawrence (VE1RLL)Bob Lawrence (VE1RLL) Posts: 1,720
    edited 2008-02-26 19:12
    epmoyer,

    The website is looking good. smile.gif
    epmoyer said...
    The kit idea is an interesting one; it actually hadn't occurred to me. Soldering surface mount components isn't for everyone

    One possible option, if you go the kit route is to pre-mount only the surface mount components and leave everything else uninstalled for the purchaser to install. Personally I want to mount a board underneath my Pedal steel guitar therefore, I would have to strip the unit down to board level and not use the case etc.

    Either way it will be fun to program it. cool.gif

    blush.gif

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Aka: CosmicBob
  • mikestefoymikestefoy Posts: 84
    edited 2008-02-27 08:04
    I would be perfectly happy with a kit, and solder the SMD parts etc.

    any idea of price yet ?

    Mike
  • epmoyerepmoyer Posts: 314
    edited 2008-02-28 06:48
    mikestefoy said...

    any idea of price yet ?

    I expect to come in under $300. I don't have all the process steps quoted for the chassis yet, and I don't have volume pricing quotes back yet.


    On the issue of self soldered kits, now that I've given it some thought it is unlikely that kitting will work out for several reasons:

    1) There is a surface mount PLD on the board which needs to be programmed in-circuit. Anyone who built the board from kit would also need a lattice device programmer to configure it.

    2) There are a number of SMT parts which come in trays or tubes and are difficuly to package for shipping in single piece quantities without damaging their pins.

    3) Partially assembing just SMT parts confuses my manufacturing process and means I have to second guess kit vs. not kit volumes. The main cost of getting the PCB's assembled is in setup and solder stencil charges; once the reels are on the pick and place machine the per-board cost is quite small, so if I'm running them at all I might as well have them run the whole lot. The labor cost to kit and bag parts for a self-assembly-kit would be more than to incremental cost to just add that board to the manufacturing run.

    4) If people are building from kits then they will run into problems, and because I won't know for sure whether they are solder defects, chip defects, or design defects I will end up giving those problems a lot of attention to help people solve them. That would unfortunately end up eating a lot of my time. If I'm shipping completed units then they'll be fully tested before they go out the door, whcih will significantly lessen my support load (a good thing, since I still need time to do my regular job [noparse]:)[/noparse]

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    The World's First Open Source Guitar Pedal:··http://www.OpenStomp.com

    Post Edited (epmoyer) : 6/30/2008 12:29:19 AM GMT
  • epmoyerepmoyer Posts: 314
    edited 2008-02-28 07:15
    DESIGN MILESTONE: Chassis on order

    The first lot of chassis is on order. It's taken a fair bit of modeling, measuring, and reviewing to get to the point where I was confident enough in the part drawings to pull the trigger on the real build. Here are some shots of last night's final paper prototype:

    paper_chassis1.jpgpaper_chassis2.jpgpaper_chassis3.jpgpaper_chassis4.jpg

    The paper version is somewhat less rugged than the steel, but it does score points for being biodegradable and amusing the cat.

    I found a source for rubber feet last night, so the pedal will have feet now. They are secured by the screws which hold the bottom plate on (rather than by adhesive), so they will be rugged.

    chassis_feet.jpg

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    The World's First Open Source Guitar Pedal:··http://www.OpenStomp.com

    Post Edited (epmoyer) : 6/30/2008 12:29:34 AM GMT
  • epmoyerepmoyer Posts: 314
    edited 2008-03-03 15:51
    Somebody asked me about the software tools I used for the chassis design, and the company I used for fabrication. I thought the answers might be of interest to other forum members so I'll post them here.

    I used SolidWorks for the 3D modeling, and I used a local company in Anaheim for the manufacturing (Executive Tool Inc).
    I've been designing electronics boxes of one kind or another in my "real job" for a long time, so my choice of tools, methods, and manufacturer had a lot to do with the resources already available to me. I'm going to assume you don't have any previous experience in chassis design and give you the best advice I can:

    1) SolidWorks is just fabulously awesome if you can get it, but it is very expensive. They don't even print the price on their website. If you call them and tell them who you are and what you're doing you can probably get a better rate than the corporate one. I also think they do some very low cost or free deals for "educational" use, so if you can get in under that umbrella that might work for you.
    2) There is a fair amount of stuff to understand about how sheet metal can be worked and what kind of fasteners are available for putting it all together. I learned all of that from working in an industry where the people working for me knew it, and I picked it up along the way. I'm sure if you troll the web you can find some good info so you'll have to educate yourself on that as best as possible.
    3) You should know about PEM fasteners and about McMasterCarr. PEM is the "big" name in sheet metal fasteners (though many companies make knock off products), and McMasterCarr is a great on-line distributor for screws, washers, nuts, rubber feet, studs, PEM fasteners, etc. I get all my hardware there.
    4) I only used Executive Tool because they are local and because I know the guys over there and speak to them regularly on projects for my "real job". There are metal houses all over the place so I would recommend finding one close to you if possible. I find I always end up needing to meet face to face a couple times on a project, usually at least once on the front end to go over drawings and at least once on the back end to put the first parts together. Add more meetings if things go wrong (but of course they never do [noparse]:)[/noparse] ).
    5) Creating 2D manufacturing drawings is something of an art form in itself. Again, you'll have to use the web to educate yourself on what they look like and how to dimension things for a manufacturer. Your metal shop may be helpful in working with you to get your drawings to the point where they are in a format which gives them everything they need to know. The reason I LOVE SolidWorks so much is that you can build a 2D drawing from a 3D drawing, and when you change a dimension on the 3D model the 2D drawing updates automatically.
    6) Manufacturing is expensive. If you design for cost you can get the per-piece price down quite low (the Howler chassis is down around $16 unpainted in 100 piece quantities), but you will always need to pay a "setup charge" when you run a batch. For this project I pay one to the laser cutter guys who make the blanks ($200) and another to the metal shop which bends the parts up and installs the press-in PEM fasteners (you need a hydraulic press to do that) ($200). Add to that the cost of your first couple prototypes and raw materials, and your in for about $500 to do your first prototype run; and that's "on the cheap" in my opinion.
    7) There is a company on the web called "emachineshop.com". I haven't used them myself but they have some kind of free 3D tool which can be used to design parts, and then you can order them directly through the tool. I don't know what their costs are but if you're designing something in small quantities and you don't have access to a tool like SolidWorks then they may be a good solution for you.
    8) The original chassis design for the Howler used a commercial aluminum enclosure from Hammond (purchased through DigiKey). It was about $16 and it would have cost me about $15 to get it drilled the way I wanted. I went down the custom sheet metal path because the per-unit price was better in moderate quantities (50 or more) than drilling out the Hammond boxes, but Hammond is a great way to go if your volumes are small or you can't afford the setup charges associated with developing a custom chassis.
    9) The most important lesson I have learned in my engineering career is how (and when) to mock things up. If you're working for yourself then your time is free, and manufacturing is not, so it's worth it to double-check your design in every way possible so that you pay once for manufacturing and get it right. Paper models are one tool down that path, which is why I made several paper models (printed from SolidWorks) to verify the Howler dimensions. Another tool is to model everything you can in as much detail as possible in your 3D tool. All the Howler cards, connectors, buttons, etc. are modelled in 3D so that I could get as much confidence as possible in the metal, then once I modeled them I printed them out to verify that the models matched the boards and connectors. Model, check, model, check, model, check, check, check, sleep on it, check, take a deep breath, pay.

    Best of luck to any chassis designers out there. Its a long hard road but there's just nothing quite like holding a (good) finished part in your hand.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    The World's First Open Source Guitar Pedal:··http://www.OpenStomp.com

    Post Edited (epmoyer) : 6/30/2008 12:29:47 AM GMT
  • yerpa58yerpa58 Posts: 25
    edited 2008-03-03 18:31
    epmoyer,

    Thanks for the interesting rundown on mechanical design. I use a version of IronCad that I got for nearly free when they were new, and I upgraded it for a fraction of the cost of a new seat. It also does associative dimensioning between the 3-D model and 2-d shop drawings. At my "real job" we design a lot of one-off products and I have learned to bend and punch simple boxes from 1/10" aluminum sheet. PEM makes some fasteners that can be pounded in with a simple hammer and anvil.

    Having built some guitar DSPs in the past, I am following your project with great interest. It looks like it will be very solidly built, like some old Mutron pedals, or the Fender Blender. Those things were built to take a beating.

    Do you have any approaches in mind to implement filters, such as wah or envelope modulated? I am still concerned by the propellor's lack of of a multiplier-accumulator.

    Keep us posted!
  • computer guycomputer guy Posts: 1,113
    edited 2008-03-03 20:51
    Thanks epmoyer,

    Your information should help a lot. smile.gif

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Check out my robot using the propeller RECONAUTOR
    If you like my avatar then check this out Propeller Domed Sticker
  • HarleyHarley Posts: 997
    edited 2008-03-03 23:35
    epmoyer

    Thank you for the very interesting (to me) rundown on your mechanical design. Even though I'm an EE, exposure to various 'other' areas in my life helped me to provide a client with not only pcb layouts, but also case designs. One had to be both a free-standing case, and with flanges added, a rack-mounted configuration.

    So, could appreciate your description of Howler's design. Thanks. Brought back good memories from about 2 decades ago challenges.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Harley Shanko
  • epmoyerepmoyer Posts: 314
    edited 2008-03-10 04:45
    yerpa58 said...

    Do you have any approaches in mind to implement filters, such as wah or envelope modulated? I am still concerned by the propellor's lack of of a multiplier-accumulator.
    There has been discussion on the subject of FFTs in the Propeller forums, and they were somewhat pessimistic, but there's no questions that something can be done; it's only a question of how much (i.e how many bits per sample, how many samples per FFT, how many cogs dedicated to that function etc.). I spent some time this weekend relearning some of my old FFT math and writing some of my own FFT algorithms from scratch to make sure I understood them and could duplicate them. Right now I've got a DFT and an FFT running in C# using floating point math. I'm going to rework the FFT algorithms to fixed point, optimize them for input signals with only real components, and then transfer them to the prop to see how much performance I can get.


    fft_sandbox.jpg



    Somehow I have the sign inverted in the imaginary part of my FFT (the bottom right panel); still working on tracking that bug down [noparse];)[/noparse]



    It appears that the first two chassis are going to be completed tomorrow (Monday). As long as my day doesn't get swamped I'll run over to the machine shop sometime tomorrow for a fit check. Hopefully I'll be able to build up the first (unpainted) unit and post some pictures

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    The World's First Open Source Guitar Pedal:··http://www.OpenStomp.com

    Post Edited (epmoyer) : 6/30/2008 12:29:58 AM GMT
  • epmoyerepmoyer Posts: 314
    edited 2008-03-10 06:05
    Ok, got my sign inversion bug fixed and got the inverse FFT working, so now I go from time domain to frequency domain and back.
    I'm going to get the fixed point math working in the C# app first (where its ease to debug) and then port to the prop for some speed testing.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    The World's First Open Source Guitar Pedal:··http://www.OpenStomp.com

    Post Edited (epmoyer) : 6/30/2008 12:30:06 AM GMT
  • epmoyerepmoyer Posts: 314
    edited 2008-03-10 06:49
    Time for bed, but my initial results are hopeful.


    This is the output from the C# app, with some code added to count multiplies (16x16 fixed point assumed), fetches (to prop RAM), puts (to prop RAM), and adds. There's certainly some "in between" code which runs in the middle of those actions, but since fetches and puts assume 8 cycles for cog sync those instructions can be done in the cracks if the code is written well.



    App started.
    Running FFT...
    Stats Dump:
      [noparse][[/noparse]samples] :1024
      multiplies:24572
      divides   :0
      fetches   :22464
      puts      :22464 
      adds      :32766
      CYCLES    :1178494
      time(secs):0.0147
      window interval(secs):0.02327
      percentage: 63.2%
     
    
    



    So, assuming a dedicated cog for FFT and another dedicated cog for inverse FFT I should be able to do a 1024 point FFT in fixed point math and keep up with a 44khz audio stream (that is, I think I can do a 1024 point FFT in about 14.7 msec, and at 44kHz it would have to be at least as fast as 23.3 msec to keep up) . The stats above were generated witht the FFT algorithm not yet optimized to elimiate the complex component of the input and output signals, so the utilization will actually get better. I kind of doubt that I'll get below 50%, but if I did then I could do the FFT and the inverse FFT in a single COG. If not, I'm hopeful that for frequency domain effects I can dedicate two cogs to the FFTs (one forward and one inverse), which leaves two cogs for processing effects (the Howler OS occupies 4 cogs).

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    The World's First Open Source Guitar Pedal:··http://www.OpenStomp.com

    Post Edited (epmoyer) : 6/30/2008 12:30:17 AM GMT
  • Mike HuseltonMike Huselton Posts: 746
    edited 2008-03-10 17:15
    I used to be a recording engineer and designer of Auditronics products in the 70s and early 80s.
    Twenty years later, after programming many computer systems, I discovered the Propeller.
    Life is fun again...

    The Howler looks like a winner!

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    JMH
  • Bob Lawrence (VE1RLL)Bob Lawrence (VE1RLL) Posts: 1,720
    edited 2008-03-10 19:41
    Your timing is great. I was wondering if you would try FFT for the guitar tuner pitch detection. I was looking at old post about prop FFT over the weekend. All the prop FFT post I could find are listed below.
    ===================================================================================================================================
    Here;s one: (From an old post: 2006)
    reimay said...
    I use the float32 library to perform a Fast Fourier Transform on Propeller.
    reimay said...
    e.g. one cog run the sin multiplication, another run the cos multiplication ... ( like a vector processor )

    http://forums.parallax.com/showthread.php?p=615024

    ==================================================================================================================================

    http://forums.parallax.com/showthread.php?p=572721

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Aka: CosmicBob
  • epmoyerepmoyer Posts: 314
    edited 2008-03-10 20:43
    Bob,

    I am going to try two different approaches to pitch detection. If you take the FFT approach then minor changes in pitch will cause two adjacent spectral components to alter in relative values. If you can pick the fundamental tone from the overtones by finding the strongest spectral "peak" and then determine the actual frequency with enough resolution by analyzing the relative heights of the two or three adjacent excited spectral components, then that should work. The downside is that it would take 1 or 2 cogs dedicated to FFT's so it's unlikely that you could run it while other effects are going (probably not a big downside anyway).

    A different approach is to compare the signal to itself with a significant separation in time (about 200msec if I recall from running the numbers a week ago), "slide" the first sampled window against the second a sample at a time to find the best correlation, and compute frequency from that.

    I'm not sure off the top of my head which will be less sensitive to the tone of the input signal, but I hate it when tuners are finicky about tone (or volume, but I'll fix that with a compression stage).

    The other nice thing about the second method, if it works, is that it has the potential to be a cheap and dirty pitch detection mechanism for other purposes (without eating cogs). One thing I thought might be fun is to store some short sampled instruments (like wood blocks or something percussive) in the second EEPROM, load them to RAM at boot, and play them back based on pitch detection from the guitar. That way you could assign a couple different percussive sounds to a couple open strings and be able to play them with the guitar as a "controller". It's not going to replace anybody's MIDI guitar, but I just think it would be a fun trick.

    The first release of the OS will leave the second EEPROM completely unmanaged, and users can do whatever they want with it. Later on I'll add O/S support for some kind of resource file system which will let chunks of data be saved/loaded from the second EEPROM easily by resource ID.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    The World's First Open Source Guitar Pedal:··http://www.OpenStomp.com

    Post Edited (epmoyer) : 6/30/2008 12:30:26 AM GMT
  • epmoyerepmoyer Posts: 314
    edited 2008-03-10 20:50
    Just talked to the metal shop and they didn't have all the right PEM fasteners in stock, so they've got parts ordered for delivery tomorrow. Should have the first chassis by Wednesday. Ah the suspense......

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    The World's First Open Source Guitar Pedal:··http://www.OpenStomp.com

    Post Edited (epmoyer) : 6/30/2008 12:30:38 AM GMT
  • LawsonLawson Posts: 870
    edited 2008-03-11 03:14
    On finding frequencies: The TV audio spectrum analyzer demo by Beau http://forums.parallax.com/showthread.php?p=663985

    This demo uses a 1-bit periodic sampling system and statistics to find the frequencies. (look at the post for explanation)

    Marty

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Lunch cures all problems! have you had lunch?
  • jazzedjazzed Posts: 11,803
    edited 2008-03-11 03:45
    Well, this looks like an award-winning propeller product if i ever saw one. I hope you make gobs of money with it.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    jazzed·... about·living in·http://en.wikipedia.org/wiki/Silicon_Valley

    Traffic is slow at times, but Parallax orders·always get here fast 8)
  • epmoyerepmoyer Posts: 314
    edited 2008-03-12 22:10
    DESIGN MILESTONE: Metal chassis complete


    I just got back from the metal shop, and the chassis turned out great! Next step: the paint shop...



    Thanks to everyone for their ongoing encouragement. It's so close now I can taste it. Now that I finally have this thing in a chassis it will make it a lot easier to cart around with me to do software development on, and to test some effects that you just have to work with your feet to control properly.





    metal_chassis1.jpgmetal_chassis2.jpgmetal_chassis3.jpgmetal_chassis4.jpgmetal_chassis5.jpg

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    The World's First Open Source Guitar Pedal:··http://www.OpenStomp.com

    Post Edited (epmoyer) : 6/30/2008 12:30:51 AM GMT
  • Bob Lawrence (VE1RLL)Bob Lawrence (VE1RLL) Posts: 1,720
    edited 2008-03-12 22:59
    Wow!!! looks great. Built like a tank. yeah.gif

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Aka: CosmicBob
  • computer guycomputer guy Posts: 1,113
    edited 2008-03-13 04:45
    epmoyer,

    That looks nice. Just a pity the Solid Works program is so expensive. [noparse]:([/noparse]

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Check out my robot using the propeller RECONAUTOR
    If you like my avatar then check this out Propeller Domed Stickers for sale
Sign In or Register to comment.