I wouldn't recommend piezo pickups. On my old Antoria (pre Ibanez) 6 string I used 6 small inductive sensors (lots of coils of wire around a magnet aka 6 individual guitar picks) and they worked fine in the bridge pickup position - I didn't get any interference between one string and the next - you will using acoustic pick-ups and I bet you get cross talk and this will likely annoy you - it would me. I built mine back in 1982 and fed each string signal through a simple op-amp distortion circuit then mixed the signals. It sounded like an organ and I ought to dig it out one day but anyway, if you are converting to midi you probably really want a sq wave signal rather than trying to do the zero crossing in software based on the numbers thrown out by the ADC. Just a recommendation from someone who built something that totally makes Jeri's look like a piece of crap. I heard her say it didn't work that well too!!!
Latest recommendations
I play bass guitar pretty good and I'm very familiar with the waveforms they produce and how most bass tracks are recorded. The 99% rule is that only one note is ever played at once i.e. the bass guitar is nearly always played a single note at a time (even though it has four strings). There is a very good reason why bass guitarists don't play multiple notes - at such a low frequency, multiple notes will nearly always sound like a mess. This is unlike a 6 string guitar - this is tuned at least one octave higher (comparing the fat E strings) and at this pitch chord notes sound naturally very good. So my 1st recommendation to you is: -
Stick with the in-built conventional electromagnetic pickup on your bass guitar and don't even think about modifying this until you have mastered the algorithms to convert the bass guitar waveform to midi. This gives you a perfectly good signal to try whatever DSP you want.
In fact, I'd go a stage further - make a few choice recordings of your bass guitar and use these recordings as inputs to your DSP system. This leaves you two hands free to tweak your code as much as you need to. So, my 2nd recommendation is: -
Record a few choice bass riffs into the sound card on your PC and put the bass down and forget about it until you have your algorithms sorted out. You can use your PC for outputting the riffs and if you use a wave editor you can copy and paste, step/repeat, merge or do virtually anything with the recorded bass sounds. Output these thru your soundcard and do the really difficult job first.
The really difficult job is converting the bass sounds outputted from your PC to midi format - any job that needs to be done in life or electronics - tackle the hard bit first and if you can't do the hard bit then abandon the idea.
If you get the hard bit done then try playing your bass guitar "live" into your DSP system and see if it still works without issue. It won't of course because little bumps and erroneuous string noise will cause your algorithm problems you haven't considered so my third recommendation is this: -
Try recording what gives the DSP a problem and use this new recording to fix-up your algorithm. Repeat/loop several times until your are happy with your code-based midi converter.
Then, and only then, should you start considering any modifications you might choose to make to your bass guitar. In my honest opinion I don't think modifications are needed because of the 99% rule.
As a free xmas gift, if you want some bass guitar samples, email me (see my profile) and I'll send you some.
Also, using the PC as the sound source for the bass guitar audio gives you the opportunity of perfecting the algorithm all on one platform.
If you have a multi-input ADC and can have it select among inputs that are amplified by different amounts, that's generally the cleanest approach. In some cases, one might also adjust gain by scaling down the reference voltage to an ADC.
The effectiveness of those approaches, versus simply scaling up the values read from the ADC, will vary significantly based upon the ADC design. Some kinds of ADC have a noise floor which is independent of the strength of the incoming signal, but some kinds of converters, especially delta-sigma ones, have a noise floor which varies with signal amplitude. An ideal 16-bit converter would have an SNR of about 96dB on a full-strength signal, but that would drop to 48dB on a -48dB signal. A cheaper 16-bit converter designed for audio, by contrast, might have only a 60dB SNR on a full-strength signal but still manage a 36dB SNR on a -48dB signal (reducing the signal by 48dB would only reduce the SNR by 24dB). On such a converter, feeding in a signal at -12dB and multiplying the readings by four would yield results that were not as good as feeding in a clean signal that was 12dB higher, but may degrade the SNR by a lot less than 12dB.
The cleanest way to scale signals is to use analog scaling before the ADC. Scaling digitally won't be as good, but the amount of degradation will depend upon the kind of converter used, and may or may not be objectionable.
Best Answer
Generally a guitar amp would have about 100k (or greater) input impedance - this is because the tone controls and volume controls are about that sort of range. Yours has 10k input impedance. I'd make R8 100kohm and R7 1Mohm
Your 2nd stage is not needed - it has unity gain for the relevant frequencies and your filter cap might just as easily be placed across R7 but obviously 100x lower in value because R7 is 100x bigger than R10. But having said R7 needs to be 1Mohm (above) the cap needs to be 1000x lower like 15pF.
I'd also use an input jack socket with an earth switch integral then you can disconnect the battery when not plugged in.