Después de darle muchas vueltas, que ayer cuando hice la pregunta la verdad estaba cansado, he hecho algunos cambios y ya guarda sin problemas.
La captura de los datos por POST la hago, en la funcion insertar_desc en el controlador antes de cargar el modelo.
En el modelo, lo guardo en la BBDD de la siguiente manera;
Código PHP:
$this->db->set('idDesc', $data['idDesc']);
$this->db->set('descripcion', $data['descripcion']);
$this->db->insert('descripcion');
y por último, la funcion insertar que antes no recibía ningún parametro de entrada, ahora lógicamente le paso un array con los datos, $data (por ejemplo).
Espero que sea de ayuda para alguien. Gracias. Seguro que volveré con mas dudas :D