Yeah was thinking about doing averaging suppose that's worth a shot.
Never considered the offset, guess a good start is to see what the reading is when it's shorted to ground, I would assume 0, but guess it may not necessarily be 0, so I need to account for that offset.
This thing is all hard wired so kinda a pain to even reprogram it with any code changes, but I'll work on figuring that out so I can do that. I might be able to do it from the automation server, think Arduino released some command line tools a while back so might be able to set that up.
I eventually want to totally redo this system so it's more modular and easier to maintain/change.
Also would I be better off using the AREF pin and supplying it with a smooth 5v? Right now it's not connected to anything. I wonder if the USB is maybe fluctuating slightly. I believe I need to change the code to switch to that mode as well, I'll need to check that further.
For good measure I also put an electrolytic cap between the ground and +5v pin, though not sure if that will do much, as the Arduino probably already has filtering caps in it at the actual input. The 5v pin is more of an output, though the way it's connected it can kinda act as input.