I made a circuit to read from a dust sensor that operates with a 5V rail. The microcontroller I am using is supplied with a 3.3V rail, and it shares the same ground as the dust sensor.

As the output of the dust sensor is an op-amp with low source impedance, I thought I could shift the level of the sensor output to interface with the microcontroller with simply a 2:1 voltage divider, but this does not work well. I did not realise when I designed the board that the sensor has a 10k resistor to ground on the output of its op-amp (shown as "0-5V signal"):

![schematic](https://i.stack.imgur.com/um8Oo.png)

[simulate this circuit](/plugins/schematics?image=http%3a%2f%2fi.stack.imgur.com%2fum8Oo.png) – Schematic created using [CircuitLab](https://www.circuitlab.com/)

The dust sensor's signal should smoothly vary between 5V and 0V depending on the air quality. With the above setup, the signal either jumps between around 1.7V and 0.3V with almost no transition in between.

Is there a way to compensate my voltage divider values in the presence of this resistor, such that the 0-5V signal is still translated to within the 0-3.3V range?

The dust sensor is a Shinyei PPD42NS. The circuit diagram can be found [here](http://takingspace.org/wp-content/uploads/ShinyeiPPD42NS_Deconstruction_TracyAllen.pdf).