Designing a cable for bidirectional communication between 2 iphones via TRRS (headphone jack)
Thanks to a certain theBear on IRC's freenode (#electronics),  I learned that devices generally test for the presence of a microphone by checking the resistance across the bottom two pins.

There doesn't seem to be a consistent convention for pinout,  but generally mic and ground occupy the two rings closest to the sleeve

so the device tends to check for the resistance between these bottom two rings to determine whether a microphone is present.

for a standard stereo plug (L+R+G), The resistance should be practically zero as there is just one single ring  that will be connecting the G and M

so the host says ' if the resistance is &lt; X,  then we assume no microphone. '

clearly 100 ohm is too small a value for X

doubling up to 200 did the trick

I still didn't get it working on an android phone even trying 300. So I don't know what the deal there is.

in case anyone wishes to pursue this further, the advice I got was to try putting a potentiometer between the microphone and ground and turning it until the host registers that a microphone is connected

if you launch the sound recorder on your android device and sing while you are twiddling, at some point the spectrograph will just cut out -- this means that the device now believes a microphone is connected externally

the last suggestion was to string a capacitor in series with this small resistor. however I don't have any idea how to calculate what value to use

As a final note, the ratio of R1:R2 determines the ratio of V_in:V_out