Self powered RS232 logger

I'm developing a simple circuit to log the data emitted by a photovoltaic inverter. The inverter emit a string of 50 ASCII characters @ 9600 baud every 10 seconds.
The circuit that I'm developing must be self-powered by the serial port itself. The serial port can only provide few milliamps (not sure how many, I estimate 10-20mA) so I put a big capacitor to buffer the current.
Since the signal on the serial port remains low (-6V) throughout the silence I decided to use pin 2 (TX) as ground and pin 5 (Gnd) as Vcc.

Everything works fine except that when I initialize the SD card (SdFat.init) the current drawn from the SD card (maybe almost 100mA) the voltage drops to 2-3v and arduino reset.

Do you have any suggestions on how to minimize the current drawn from the circuit/sd card?
Alternatively, just use a bigger capacitor will be a solution?

You Might try a 5V Super Cap... .1F might be a starting place But the average power total isn't really big enough to do what you want. You should keep the average current drain below 1 mA. There are several issues that are of importance and one is possible damage or shutdown of the RS-232 driver circuit internally. Many drivers have some sensing to detect shorted wiring and your current drain might very well look like a short circuit to the driver. Phantom power has to be phantom it cannot draw enough current to affect the current source driving it or it isn't phantom... Anymore.

Doc

Docedison:
You Might try a 5V Super Cap... .1F might be a starting place

The biggest capacitor I have found is 22'000uF. I changed the 1000uF with this one and now it works!
Of course it does not seem the best solution i.e. voltage on capacitor is near 4.6v - very stable - BUT lowest than the input voltage required from 5.0v voltage regulator (that becomes unnecessary) so arduino works underpowered.

That isn't a real good idea... AT ALL your task becomes undefinable when you aren't sure where your processor is. 22,000uF is .02F it is a little small... But good luck.

Doc

Docedison:
That isn't a real good idea... AT ALL your task becomes undefinable when you aren't sure where your processor is. 22,000uF is .02F it is a little small... But good luck.

I have ordered a 1F supercap on e-bay!
thanks for your time