Thanks srnet, lots of things to think about there.
I know the mcp1700 data sheet recommends 1uF caps on input and output. During my prototyping experiments, I found that removing the input cap did not seem to affect the performance much. Perhaps because I am using batteries connected by a short cable? However, I found the output cap to be very important. Without that, the quiescent current rose up dramatically from the specified 1.8uA to over 1mA! But I also found that 0.1uF worked well. In the PCB layout, I have the atmega's bypass cap close to the Vcc & ground pins of the 28 pin dip and also right next to the regulator, so it acts as the output cap and the bypass cap. Do you think this will be sufficient?
Good point about the reverse polarity protection diode. That's a mistake a beginner is likely to make. But as you point out, adding one will reduce battery life. Not sure what that is likely to be yet with 3xAAA, I am conducting tests with the prototype, but unfortunately the prototype does not have the regulator.
4-pin i2c headers could be added by the user on the breadboard area if required. i2c pull-ups could also be added there if required, but for one or two i2c sensors soldered directly onto the breadboard area, the atmega's internal pull-ups seem to do a good enough job. Many i2c sensor modules include pull-ups as well.
The 220uF cap could be useful for some applications. Again, it could be added on the breadboard area.
The edge connector for the sma antenna is a great idea, I will try to fit one. On the other hand, the signal from my prototype with a wire antenna has been picked up by a TTN base station 11Km away!
The power tracks are 10mil at the moment. (The other tracks are 8mil.) I will try to thicken them further, and also find out the current capacity for typical copper thickness.
The PCB layout picture is not great. I used the "export" function in easyEDA. It does not show everything you can see on screen in the app, for example it does not show the ground planes.
Power and reset switches: I imagined the user would just pop out one of the AAA cells from the holder. If I made the reset pin available on the breadboard area, a reset button could be added there if required.
Mounting holes: I will think about that. Could get away with two in opposite corners. I could sacrifice some of the breadboard area for one of them.