I think the answer to your question can best be summed up by one word: "Kinda".
The best reasoning is the NodeMCU Lua documentation which states:
Time keeping on the ESP8266 is technically quite challenging. Despite being named RTC, the RTC is not really a Real Time Clock in the normal sense of the word. While it does keep a counter ticking while ...
You can use a branded 5 V charger made for cars. You can directly connect this to 5 V pin of the Arduino.
By doing this:
you are protecting the Arduino from the noise as well as high voltage spikes coming from the car 12 V supply
protecting yourself and others coming in contact with the Arduino or the sensors connected to the Arduino.
You can also
I would do as follows:
Arduino is in sleep mode
every x seconds (x depending on your needs), wake up then switch on and read one sensor after the other and transmit the results or whatever you want to do.
then go back to sleep
as you have 4 sensors, you can connect their outputs to the arduino analog inputs (or digital...)
you will ...
The TP4056 is a battery charger, not a voltage regulator. It cannot be used to supply power to a device like an Arduino. It is designed for charging the Lithium Ion battery from a 5V (e.g., USB) source.
By trying to use it as a power supply you're asking for trouble. It thinks it's trying to charge a battery (from a 3.7V nominal source) and will be doing ...
Please have a look at the schematics:
The USB connector uses a resistor (1500 Ohms) against the 5V net and a 3.6 Volt Z-Diode on it's (D-)-Pin. In addition to the current that is drawn by the microcontroller, this part of the circuit draws some extra ...
Actually, you can just run 1 Arduino and use it for
All needed measurements
Control power supply to sensors (power off when unneeded)
Additional: use low-power modes of MCU installed in Arduino
Upd: About 2nd option:
You can use electric relay or transistor to control power supply to sensor. Often sensors have several connections: ground (-), Vin(+) and ...
As stated in previous answers, at least on the AVR version of the
Arduino core, delay() is a busy wait that keeps the CPU running. In
his answer, Duncan C correctly states that “CMOS logic circuits do use
more power when switching states than when idle”. It is then expected
that instructions that switch a large number of gates or flip-flops
consume more ...
I suspect the answer depends on the kind of Arduino you're using.
The ESP8266 is ARM based, and I believe ARM chips include power management circuits, where subsystems are automatically put in low power state when they are not being used. An ARM-based Arduino will likely use a lot less power while executing a delay than while doing other things.
I don't ...
The answers above are wrong, at least for NodeMCU 0.9 (ESP-12 board) ESP8266 and I also tested with Firebeetle ESP8266 board. Since I have a USB tester I can check that if the loop method is empty, the boards consume about 70mA-80mA but during delay(ms) they consume about 20mA-30mA.
This is the delay function for the boards commented:
void __delay(unsigned ...
I don't see any problem. You used the Vin for 9V, and shared grounds.
I suggest using a bypass capacitor (typically 0.1 uF) for the L293D VCC, but I don't have experience with using a L293D.
Also, you need to check if the battery can deliver enough current for both motors and the Arduino.
You can use https://www.regaldreamtech.com/micro-ups/ for the backup 5V power supply to Arduino in absence of main power. It has 5000mAh battery and 5V 2A output. It will handle the switching on its on between main and battery power.
Disclosure: We manufacture this product.