Pistorius told the family in a shaky voice he could not imagine their pain and he was "trying to protect" Steenkamp.
"I wake up every morning and you're the first people I think of, the first people I pray for. I can't imagine the pain and the sorrow and the emptiness that I've caused you and your family," said Pistorius. "I was simply trying to protect Reeva. I can promise that when she went to bed that night she felt loved."
The 27-year-old athlete claimed he still had nightmares, and would wake up to the smell of Steenkamp's blood.
"I've tried to put my words on paper many, many times to write to you. But no words will ever suffice," he said as Steenkamp's mother, June Steenkamp, sat watching him with a stony gaze.
He also added that he never wanted to touch a gun again.
The rest of his testimony consisted of Pistorius describing growing up without his legs, and a crime he had witnessed when he was younger.
Defense lawyer Barry Roux says he will call 14 to 17 witnesses to prove that the killing of Steenkamp was, indeed, accidental.