IANAL, but my understanding is:
- Any LGPL code you modify you need to make available as source.
- Using LGPL code in your project doesn't constitute modification of that code unless you actually modify that code (See above).
- Any code you write that is not contained within LGPL code (see above) is yours to license as you wish. That means your libraries are your libraries. Your sketch is your sketch.
So in short, things that must be released as LGPL:
- Modifications to the core code.
- Modifications to other people's libraries
Things that are yours to license as you wish:
- Your libraries
- Your sketches
Things you should (if you're nice) provide attribution for:
- Arduino API
- Third party libraries
As far as hardware goes:
These files are licensed under a Creative Commons Attribution Share-Alike license, which allows for both personal and commercial derivative works, as long as they credit Arduino and release their designs under the same license. The Arduino software is also open-source.
Which means if you use their designs within your own design you should attribute it and make it open source under the CC-BY license. Otherwise, if you just use their hardware verbatim there's nothing to attribute - you haven't used their designs, but a commercial product as a component.