How to Power Arduino Nano + Sensor +Serial Data for One Week

I am having a hard time finding an answer to this question on older threads. I have a large project involving 12 stations that are each equipped with an Arduino Nano and an MPU-9250 sensor. All stations are also connected to one Arduino Mega, constantly sending serial data containing magnetometer readings from each sensor.

I need to be able to power each Nano for one week of continuous use. I have been told that 9V and AAx6 battery options would not last one week. Is this true? I am going to test one of the stations next week, but wanted to get this community's feedback first.

If those battery options don't work, I may just get a power bank for each station (something like this). Would this work? How many mAh would this require?

Thanks in advance for your expertise!

I would recommend using a multimeter and measure the current of your station. Then calculate how long the battery in question will hold. This will give you an idea of the scale of your issue.

Next you need to figure out what is using the energy and how you can reduce it.

Which Arduino Nano do you have?

Microcontrollers use more energy when they are running at a higher speed. Slow down the clock if possible. See if you can get the controller into sleep mode and remove all unnecessary code.
Check the data sheet and search for "unused". Some data sheets have recommendation for unused I/O pins. This is different for each technology and will reduce leakage current.
Check the data sheet of the MPU-9250. Maybe there is an option to have it use less power between measurements.

Before you buy 12 of these power banks, make sure they can run for a week. First they might switch off after a maximum time. Second with a lower current inefficiencies play a bigger role. You might have to derate the battery and calculate for halve of the energy.

The Arduino Nano is the wrong module for such applications. You can cause the microcontroller to sleep, but you are wasting current powering the USB interface chip. The proper module for this is the Pro Mini. (I am presuming the use of clones of course in any case.)

Powering from 9 V is wrong. The electronics operates from 5 V, not 9 V. While for such a low-current draw application, the on-board regulator could actually supply the current, you are deliberately wasting 4 V out of the 9! Hardly sensible. Using "Vin" to power the device is most inappropriate!

How are you sending this serial data to the Mega? More to the point, what is powering the Mega? If it is a mains supply, then the obvious thing is to power the Nanos from the cables which afford the serial communication. For a mains supply, you would supply 9 V to the "Vin" pins and use the regulators to stabilise it to 5 V at the end of the cable.

How are you connecting 12 serial interfaces to a mega?

Paul__B:
How are you connecting 12 serial interfaces to a mega?

I have not actually set this up yet, but am following the tutorial for "Software Serial" communication. Do you think this will work for the serial communication or is it not feasible for so much data going to one Arduino mega? https://www.arduino.cc/en/tutorial/SoftwareSerialExample

EDIT: Might just send HIGH/LOW values from each station to the digital pins of the Mega. I think I can handle the data at each station without needing all that info to go to the Mega.

Asynchronous protocols are not easy to manage in software if you have many of them. If the timing is off, you get bit errors.

With synchronous protocols bits can have different length, because the clock signal specifies when the data is valid.

For systems with many nodes, busses with media access control reduce the number of interfaces the software needs to handle. But you need to use some extra bits to identify who send the message.

It's all a tradeoff.