Is there any way to add to a shape attribute table "position and additional attributes" provided while tracking with GPS? I mean, it could be useful to add automatically in the table, for each feature collected attributes like 'altitude', 'speed', 'direction', 'quality' and so on.
Doing a quick web search, have you seen the nmea2qgis2 plugin? I'm not sure if this allows you to write info to shp dbf/fields.
One option that should work is by making a custom pyqgis plugin listener. The plugin should listen whenever a new feature is added (featureAdded()) to the gps layer, it then pulls in the gps nmea stream info referencing the _nmeaINFO class, creates the necessary gps info fields (web search for"pyqgis create field"), and finally populates the attributes (web search for "pyqgis add attributes or edit attributes").