Many replies to questions where someone's project isnt working and they are using a common 9v battery for power include the comment "those batteries are intended for smoke alarms..." and go on to recommend either larger batteries or a power supply. Whilst that's often useful guidance it's misleading and doesn't help learning.
Common 9v PP3 batteries were originally designed for early transistor radios which could generate a few hundred milliwatts of audio power. They improved a lot when alkaline chemistry was introduced. Modern alkaline ones have a capacity of around 550mAh to around 6.5 to 7v. Standard industry tests typically involve discharge through a 620 ohm resistor. For many applications they are very useful unless high peak current is needed. Internal resistance when new is 1 or 2 ohms. Performance drops off rapidly at low temperature and they wont work well below freezing point.
Smoke alarms otoh draw 20 microamps or so and one of these batteries should last at least 3 years.
Bottom line is that the manufacturers wouldn't sell many of these just for replacements in smoke alarms, they are very useful for medium current intermittent applications but not so good for heavy current loads like motors.
Common PP3 9V batteries cannot supply enough current to run an Arduino board for very long and users often power motors or servos from them as well which reduces their useful life even further
Added to that, I suspect that many of the batteries are not new in the first place thus reducing their life even further
Maybe @jhaine 's post should be a sticky. It shows that a PP3 powered common Arduino starting BWD at breakfast might last until bed time. Much more informative and not misleading at all.
The post has too much detail. If a user with problems caused by using a PP3 knows enough to understand the details of the post then they do not need the advice in the first place.
All users need to know is that a PP3 battery cannot supply enough current to run an Arduino for very long and that an alternative supply such as 6 AA batteries should be used instead
Because they aren't designed for smoke alarms! They are a general purpose battery useful in many products where the designer understands the limitations. Why would they be made in millions and sold for a buck or two otherwise?
That's' not true either. They're a general purpose battery. When alkaline 9V batteries became available, there was even a camera strobe released that was powered by 9V batteries. (It was something of a failure, because it turned out that not all 9V alkalines were created equal, and only SOME of them gave acceptable life.)
Part of the problem is that the people wanting to run their projects from a 9V battery frequently have other relatively high-power things that they're expecting to power as well - typically some smart LEDs or a servo motor, and it quickly pushes the current into "just don't" areas.
For a given battery chemistry, overall energy content is pretty much proportional to mass.
2 AA batteries have more energy than a 9V PP3 (2.5Ah @ 3V = 7.5Wh, vs 0.5Ah @9V = 4.5Wh, AND the AAs have less capacity loss at higher currents.) (There was an advertisement/appNote back in the early days of boost-mode switching power supplies, pointing out that a 5V circuit would last longer and use cheaper batteries using a boost regulator and 2AAs, than using a 9V battery and a traditional linear regulator. very memorable!)
--> if your project has intermitent use; most of the time its low consumption sensors (HC-SR04, DHT-11, small OLED, PIR, photoresistor, etc... not all in the same project) are turned off / Arduino is a sleeping beauty; and you don´t expect it to work for a whole month, you´re fine to go with the PP3 9V battery;
--> if your project has DC motors, servos, steppers, wi-fi comms, lights and buzzers enough to make a Christmas tree look like a gig, better choose AA, 18650 or LiPo battery pack; or even use a phone charger if the thingy is stationary.