title: How to read arduino flash memory
body: <p>Imagine i'have lost my source code.
  Is there a way to dump an arduino flash memory ?
  What i want to do is to get an hex file on my PC that represent byte per byte the arduino flash memory (including bootloader)</p>
  
  <p>I have 3 arduino types:</p>
  
  <ul>
  <li>Arduino UNO (rev3)</li>
  <li>Arduino MEGA</li>
  <li>Leonardo Ethernet</li>
  </ul>
  
  <p>Thanks</p>