Announcement

Collapse
No announcement yet.

Hexaphonic Pickup Project

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Hexaphonic Pickup Project

    I designed and built the carbon-fiber-bamboo guitar. Currently, I use DiMarzio Injector pickups. On my next iteration of the prototype, I would like to experiment on hexaphonic pickups for hex processing.

    Click image for larger version

Name:	Isometric-view-300x251.jpg
Views:	1
Size:	13.6 KB
ID:	867264The Cycfi Six Pack Project is an ongoing Open Source Hardware project for the development of an active hexaphonic pickup system designed for hex processing. The pickup has six low impedance coils. The hex pickup is active with six differential low-noise, low-power pre-amplifiers —one for each coil. It has the same footprint as the ubiquitous Strat single coil, with a very low profile: 8mm (0.3 inch).

    Eventually, the goal is to have hexaphonic sustain drivers as well. That, and with extensive processing for each string, will give us musicians full control over the dynamics of the guitar. I know hexaphonic sustain has been done in the past with the Moog guitar, but that was a very expensive gear. I want something more affordable. And I want a system that can be adapted to just about any guitar. This IMO is the holy grail and I know this is very difficult to do right, but every journey starts with the first step.

    As an Open Source Hardware project, all the designs (schematics, PCB layout, software, bill of materials, CAD drawings and source code) will be freely shared, 100% free.

    I would very much love to hear your thoughts and gather ideas while the project evolves!
    Joel de Guzman
    Cycfi Research

  • #2
    I commented on your blog there that EMG pickups do have the coils connected to the op amp in a differential manner for noise cancelation. So they have a balanced input.

    I see little reason to have a balanced output from your guitar. Microphones have a fairly low output, and are connected to very long runs of cable, in your typical snake. That's way more cable than any guitarist has between his guitar and amp.

    Plus if you use a balanced output, that precludes using effects. As long as you are doing a hex pickup, try a hex fuzz. It's a very cool sound.. fuzzy, yet the individual notes in chords are very clear because of the lack of intermodulation artifacts.

    Cool project however.
    It would be possible to describe everything scientifically, but it would make no sense; it would be without meaning, as if you described a Beethoven symphony as a variation of wave pressure. — Albert Einstein


    http://coneyislandguitars.com
    www.soundcloud.com/davidravenmoon

    Comment


    • #3
      Originally posted by David Schwab View Post
      I commented on your blog there that EMG pickups do have the coils connected to the op amp in a differential manner for noise cancelation. So they have a balanced input.

      I see little reason to have a balanced output from your guitar. Microphones have a fairly low output, and are connected to very long runs of cable, in your typical snake. That's way more cable than any guitarist has between his guitar and amp.

      Plus if you use a balanced output, that precludes using effects. As long as you are doing a hex pickup, try a hex fuzz. It's a very cool sound.. fuzzy, yet the individual notes in chords are very clear because of the lack of intermodulation artifacts.

      Cool project however.
      Hi David! Thanks. Yes, I too see little reason for balanced out. My current inclination for analog signal path is to use multiplexed audio outs (as hinted to here) for the six channels through a stereo cable and a breakout box using pseudo differential inputs. That said, I have a heavier inclination to go straight to digital through USB since I intend to do heavy DSP anyway. Anyway, both analog and digital options should be possible.
      Last edited by cycfi; 04-12-2013, 04:28 AM.
      Joel de Guzman
      Cycfi Research

      Comment


      • #4
        That's a beautiful guitar! It reminds me of an IPhone 3GS. Exactly the sort of axe I'd expect a programmer to build, but as a programmer myself I can appreciate it.

        If it were me, I'd use an ADAT transmitter inside the guitar and a fibre optic output. You could just plug into any audio interface with an ADAT input. I need a setup like that for my Tesla guitar stuff.
        "Enzo, I see that you replied parasitic oscillations. Is that a hypothesis? Or is that your amazing metal band I should check out?"

        Comment


        • #5
          Thank you, Steve! Hey that is a splendid idea! I'll keep that in mind. Optical is a very enticing. USB recently has gotten to be more popular though, in general and esp. with home and semi-professional studios and USB is evolving and becoming more powerful. It might be possible to have both though. The ADAT protocol is quite simple.
          Joel de Guzman
          Cycfi Research

          Comment


          • #6
            If you use USB, the guitar will appear to your OS as a soundcard. That means you either have to implement an audio output on the guitar, or use a second soundcard for the audio output.

            If you go down the two soundcards route, you'll find that most pro audio software will refuse to drive multiple soundcards at once, because of the difficulty of getting sample-accurate sync between them. Mac OS's CoreAudio will let you create an "aggregate device", but I don't know if it works with soundcards of different makes. I don't know what the situation is with Linux.

            I suspect this will make your life a misery when it comes time to do the DSP. (If you like misery, maybe you could write your own program using PortAudio that opened both soundcards separately and did some sample rate conversion to accommodate the slippage.) So, I would go for either ADAT or six analog outs that could be plugged into an existing soundcard.

            If you want to make your own custom USB audio interface, you may be interested in the open source SDR-widget and audio-widget projects. I use a USB DAC based on the audio-widget firmware in my hi-fi.
            Last edited by Steve Conner; 04-12-2013, 03:21 PM.
            "Enzo, I see that you replied parasitic oscillations. Is that a hypothesis? Or is that your amazing metal band I should check out?"

            Comment


            • #7
              Originally posted by Steve Conner View Post
              If you use USB, the guitar will appear to your OS as a soundcard. That means you either have to implement an audio output on the guitar, or use a second soundcard for the audio output.

              If you go down the two soundcards route, you'll find that most pro audio software will refuse to drive multiple soundcards at once, because of the difficulty of getting sample-accurate sync between them. Mac OS's CoreAudio will let you create an "aggregate device", but I don't know if it works with soundcards of different makes. I don't know what the situation is with Linux.

              I suspect this will make your life a misery when it comes time to do the DSP. (If you like misery, maybe you could write your own program using PortAudio that opened both soundcards separately and did some sample rate conversion to accommodate the slippage.) So, I would go for either ADAT or six analog outs that could be plugged into an existing soundcard.

              If you want to make your own custom USB audio interface, you may be interested in the open source SDR-widget and audio-widget projects. I use a USB DAC based on the audio-widget firmware in my hi-fi.
              You have very good points! OK, just brain storming here...

              Well, you are assuming that the end-point is a Mac/Windows/Linux computer that does all the DSP. While that is a very plausible scenario, and indeed could be one of the available options, another plausible scenario is to have a separate single-board-computer box (e.g. running linux) doing the DSP and either mixes the result to analog stereo, or sends out the individual processed outputs. SBCs have become very powerful now. Add dedicated DSP cores; which have also recently become quite cheap, and such a system will rock. Even a lowly Raspberry Pi with its 700MHZ core can do quite amazing feats. Or how about the BeagleBoard with an ARM Cortex-A8 core and a TMS320C64x+ DSP? The popularity of these boards is indicative that we'll be seeing more variations of them with even more powerful options (dual, even quad cores, or more in the future).
              Joel de Guzman
              Cycfi Research

              Comment


              • #8
                I just finished developing a scientific instrument based on an ARM application processor hooked up to a TMS320C6713 DSP and a FPGA.

                If I were building a guitar like this, I would want to have the option of hooking it up to that platform since I have it around and know how to program it. I think an ADAT receiver chip would connect directly to the DSP, or if not directly, certainly through the FPGA. But USB would be impossible because the DSP has no USB hardware and no protocol stack.

                We used two separate chips, but the same considerations would apply to dual-core processors like the one on the BeagleBoard: for low latency you might want to bypass the OS and USB stack, and dump the data straight into the DSP core's memory. (FWIW, we rejected the OMAP-whatever for our project because the DSP wasn't floating point.)

                The Raspberry Pi has hardware floating point and is quite capable. I've seen it used with a USB soundcard for guitar effects, and I use one myself as a hard disk-based music player. However, the USB controller hardware is buggy and the Linux OS doesn't have the greatest real-time performance. I experimented with the popular Raspbian Wheezy distro, and it can just about decode FLAC at 24/96 and play it back through a USB soundcard. At 24/192 it starts to glitch.
                "Enzo, I see that you replied parasitic oscillations. Is that a hypothesis? Or is that your amazing metal band I should check out?"

                Comment


                • #9
                  Again, very wonderful suggestions, Steve! I fully agree on bypassing the OS. To be honest, I have this inclination to use RTOS instead of linux. As for interfacing, I think I am liking your idea to use ADAT optical more and more. It is simple and requires less processing and hardware support. If the idea is to have a box to connect the guitar to anyway, the ubuquity of USB does not matter much anyway since you have control over both end points. And optical is superior! More importantly, simpler is better. I appreciate your insights on that one!

                  As for floating point vs. fixed point. I bet for your application (scientific), that matters a lot. For audio, however, I think there's still life for fixed point, depending on how extensive the processing stages go.

                  BTW, have you tried the XMOS multiocore processors? I've heard that a lot of audio manufacturers are gravitating towards it and they have very good support for audio DSP (Audio | XMOS).
                  Joel de Guzman
                  Cycfi Research

                  Comment


                  • #10
                    Originally posted by Steve Conner View Post
                    the Linux OS doesn't have the greatest real-time performance.
                    I use Linux (Gentoo and the Pro-Audio overlay) for DAW stuff and it's actually a great platform for audio. I can run my old RME Multiface at 2.67ms latency, for example. Realtime performance shouldn't be a problem if the kernel is correctly configured but linux audio hardware support is limited. Maybe try asking on the Ardour forums for advice on a usb audio interface which works well with linux.

                    Comment


                    • #11
                      Here are some (mp3) wave samples of the initial prototype of the pickup along with some FFT graphs of the harmonic spectrum taken from the uncompressed, raw (aiff) samples. Stratocaster and Les Paul samples are also provided for comparison.

                      Click image for larger version

Name:	hex-strat.jpg
Views:	1
Size:	61.2 KB
ID:	828707
                      Joel de Guzman
                      Cycfi Research

                      Comment


                      • #12
                        I specifically meant the version of Linux used on the Raspberry Pi, not Linux in general. The Pi hardware has some weird stuff going on with interrupts and DMA that makes real-time performance somewhat hit and miss. Early versions were unusable for USB audio, but it has got a lot better.

                        On the original topic, I have a vested interest, I would love to have a hex pickup with ADAT optical output for my own evil purposes. Cycfi mentioned that this is an open-source project, and I'm willing to collaborate.

                        Originally posted by mcgruff View Post
                        I use Linux (Gentoo and the Pro-Audio overlay) for DAW stuff and it's actually a great platform for audio. I can run my old RME Multiface at 2.67ms latency, for example. Realtime performance shouldn't be a problem.
                        "Enzo, I see that you replied parasitic oscillations. Is that a hypothesis? Or is that your amazing metal band I should check out?"

                        Comment


                        • #13
                          Ah OK. That's a shame. As well as audio, real-time capability might have made the pi useful as a control device. Maybe the makers would like to hear your feedback?

                          Don't think I've got any skills to collaborate I'm afraid Looks like some really interesting experimental stuff your doing though. On behalf of musicians everywhere.... https://www.youtube.com/watch?v=TylvUGJIi_w

                          Comment


                          • #14
                            "As an Open Source Hardware project, all the designs (schematics, PCB layout, software, bill of materials, CAD drawings and source code) will be freely shared, 100% free.

                            I would very much love to hear your thoughts and gather ideas while the project evolves!"

                            The biggest hurdle being crosstalk between the strings and the coils...which has been the biggest hurdle for a while...
                            The crosstalk tending to produce errors in triggering and incremental output. You can't put it on just "any" guitar.
                            The strings need to be more isolated in vibration, from each other. The sensitivity pattern of the individual magnetic pole-piece needs to have much less overlap...
                            with the adjoining pole-pieces. The pickup output needs to be more discreet, you have to redesign the pickup first.
                            The second thing is the bridge. There needs to be more acoustic isolation between the saddles... again there is too much crosstalk.
                            and the nut...
                            Once you get the bleeding between the strings and the 6 channels straightened out, then you might have something...

                            Comment


                            • #15
                              Originally posted by soundguruman View Post
                              "As an Open Source Hardware project, all the designs (schematics, PCB layout, software, bill of materials, CAD drawings and source code) will be freely shared, 100% free.

                              I would very much love to hear your thoughts and gather ideas while the project evolves!"

                              The biggest hurdle being crosstalk between the strings and the coils...which has been the biggest hurdle for a while...
                              The crosstalk tending to produce errors in triggering and incremental output. You can't put it on just "any" guitar.
                              The strings need to be more isolated in vibration, from each other. The sensitivity pattern of the individual magnetic pole-piece needs to have much less overlap...
                              with the adjoining pole-pieces. The pickup output needs to be more discreet, you have to redesign the pickup first.
                              The second thing is the bridge. There needs to be more acoustic isolation between the saddles... again there is too much crosstalk.
                              and the nut...
                              Once you get the bleeding between the strings and the 6 channels straightened out, then you might have something...
                              String separation is indeed tricky, no doubt about it. I'm thinking about doing it in software with some form of phase cancellation using digital signal processing. If by "triggering" you mean note detection and MIDI, well, I do not intend to go that route. This pickup is not intended for a MIDI synthesizer, but rather, for polyphonic string processing. I don't understand what you mean by "incremental output" though, so it's very possible that I am misunderstanding you.
                              Joel de Guzman
                              Cycfi Research

                              Comment

                              Working...
                              X