Thank you for your reply Nigel.
When I try "param=max_position_x=320, param=max_position_y=240" in the config file I get the following.
So this gives us more clues, in that the range for X and Y are reported as 4096. The same is reported when I revert back to my original config file.
So question is, where does kivy get the 4096 values from?
[INFO ] [HIDInput ] Read event from </dev/input/event0>
[INFO ] [MTD ] Read event from </dev/input/touchscreen>
[ERROR ] [MTD ] Bad parameter ['param', 'max_position_x', '320']: Not in key=value format
[ERROR ] [MTD ] Bad parameter ['param', 'max_position_y', '240']: Not in key=value format
[INFO ] [MTD ] Set custom invert_y to 0
[INFO ] [MTD ] Set custom invert_x to 0
[INFO ] [MTD ] Set custom rotation to 0
[INFO ] [Base ] Start application main loop
[INFO ] [HIDMotionEvent] using <b'stmpe-ts\x00 '>
[INFO ] [HIDMotionEvent] <b'stmpe-ts\x00 '> range ABS X position is 0 - 4095
[INFO ] [MTD ] </dev/input/touchscreen> range position X is 0 - 4095
[INFO ] [HIDMotionEvent] <b'stmpe-ts\x00 '> range ABS Y position is 0 - 4095
[INFO ] [MTD ] </dev/input/touchscreen> range position Y is 0 - 4095
[INFO ] [HIDMotionEvent] <b'stmpe-ts\x00 '> range ABS pressure is 0 - 255
[INFO ] [MTD ] </dev/input/touchscreen> range touch major is 0 - 0
[INFO ] [MTD ] </dev/input/touchscreen> range touch minor is 0 - 0
[INFO ] [MTD ] </dev/input/touchscreen> range pressure is 0 - 255
[INFO ] [MTD ] </dev/input/touchscreen> axes invertion: X is 0, Y is 0
[INFO ] [MTD ] </dev/input/touchscreen> rotation set to 0