I’d like to comment out some of the ideas posted by Traugott and to add some more:
This is a low range Oscilloscope, but input stage could be improved like traugott said. The sampling rate can also be enhanced by using both integrated ADCs to do interlaced sampling, so theoretical sampling rate tops at 2Msps. Battery measurements are marginal, as they only need to be measured once per second or less.
Full realtime USB interface is unattainable as far as the USB is 1.1. In numbers: 1Msps * 12bit = 12Msps (top limit for USB 1.1). Maybe with lower sampling rates (say 100K) and less precision (8 bit)… . MicroSD can be used to store longer captured signals…
Battery charger: lithium, charger & diode are never in the same sentence. It works for a couple maybe three times as long as the user don’t try to charge batteries longer than three hours, otherwise battery is usually harmed. If you want to have a good product and keep the price low, you could use a low cost alternative of LTC4054 (like pin compatible Microchip MCP73811 - 0.5$) and get rid of the diode. I have the Nano for more than four months and the battery works more or less like the first day. But after buying it, the first thing i did was to remove the diode (even before trying to charge it).
Power management: what happens if a user forgets on/off switch ON -> battery is completely depleted. Display ilumination is regulated by a XC6206… replace it by a cheap (2N7002, BS270) transistor and use a PWM pin to toggle it (light intensity control/off). Using Sp3232 to generate ±5V is a neat trick, but it can’t be disconected. Another transistor… and voila. By the way, SP3232 is very cheap but it needs a “lot” of space. If the opamp used is rail to rail, it can be replaced by a tiny and also cheap LM828 (SOT23-5) inverter for the negative rail.
And suggestions doesn’t end here…