Your comment prompted me to double check my wiring. There was a bad connection in the breadboard. It's working now.
I have a couple of more questions!
1. Apart from the ratio, is there any advantage to using large or small resistor values in this circuit? E.g. 100K & 200K vs 100R & 200 R
Too lower resistor value will draw a lot of current from the source and even the op-amp's output.
The optimum values depend on the source impedance and the type of op-amp used.
Too higher value increases the noise and offset error due to the bias currents. All resistors above absolute zero, produce a thermal noise voltage, the higher the resistance, the higher the noise voltage. Op-amps leak a tiny current out of their inputs, which is known as the bias current. It's also noisy, thus establishing a noise voltage across the input resistors and its DC value introduces an error. The DC error can be minimised by ensuring the DC resistance seen by both inputs is equal, or fairly close, by connecting a resistor equal to value of the input and feedback resistors in parallel, in series with the non-inverting input. In the case of your original circuit, 1k||1k = 500R, so the nearest standard E24 value of 510R would do.
The type of op-amp used is important. The TL072 has J-FET inputs, so the bias current is tiny, along with any associated errors and noise, so you can get away with relatively high value resistors and ensuring the resistance seen at both inputs is less critical. An op-amp with BJT inputs, such as the NE5532 has a much higher bias current, as a considerable base current is required to bias the input transistors in the active region, so much lower value resistors are required.
For example, the TL072C has an input bias current of 100pA, worst case at 25
oC, which would develop 100nV across a 1k input resistor, much less than the input offset voltage specification of 3mV typical. The NE5532 has an input bias current of 800nA, worst case, at 25
oC, which would be 800µV, with a 1k input resistor, which is a bit higher than the offset voltage of 500µV. Note that in the circuit described in the original post, both the feedback and input resistors are 1k, giving 500R seen at the input, do the errors will be halved. Adding a 500R resistor to the non-inverting input will generate the same 400µV, in the case of the NE5532, at the non-inverting, as the inverting input and the op-amp only amplifiers the difference between its inputs, so it's no longer seen at the output.
Another thing to note is the input offset current, which is the difference between the bias currents out of each input. Even if the resistances seen on both inputs are equal, the error due to the offset current will still be there. For example if the input offset current is 100nA and the resistance seen by both inputs is 500R, the extra offset voltage generated will be 50µV.
https://www.ti.com/lit/ds/symlink/tl074h.pdfhttps://www.ti.com/lit/ds/symlink/ne5532a.pdf