A 25-year-old man from Ontario is facing multiple charges after a woman was sexually assaulted and brutally tortured inside a Strathcona home on Thursday.

According to court documents, Caleb Heaton allegedly used a rock and a knife in the violent attack, which took place at around noon.

Police said the suspect entered through an unlocked door, tied the woman up and sexually assaulted her before choking her with clothing and completely severing one of her fingers.

Hearing her screams, a Good Samaritan who lives in the neighbourhood ran inside the home and interrupted the attack.

“It was automatic, I just ran in there, I wasn’t really thinking about what I was getting in to,” said the man, who cannot be identified due to a court publication ban on witness names.

He said he confronted the suspect and punched him multiple times before the struggle spilled out on to the street.

Other witnesses came running and helped hold the suspect down until police arrived.

The selfless act helped the woman escape the home, police said.

On Friday, Heaton was charged with seven counts including break and enter, robbery, sexual assault and unlawful confinement.

CTV News has obtained documents that show he had a criminal record in Ontario before heading to Vancouver, where he’s believed to have resided for the last few months.

In 2012, he was sentenced to nine months in jail after he robbed an electronics store with a knife.

The judge in that case banned Heaton from owning weapons for 10 years.

He was also ordered to be assessed for substance abuse, as well as psychiatric and anger issues.

His grandmother who lives in Waterloo, Ont., said Heaton has a troubled past and a history of mental health issues.

“Well, he’s got severe schizophrenia and if he’s not on his meds, he’s got a problem,” said Joan Heaton. “He went into quite a depression when his father died when he was 16, so it’s kind of a downward spiral.”

Police said the 39-year-old victim is still in hospital, where she’s recovering from knife wounds, an injured head and emotional trauma.

Residents of the neighbourhood where the attack took place planned held a solidarity walk Friday night beginning at the Strathcona Community Centre.

A crowdfunding page set up to provide financial support for the unnamed victim had raised more than $7,000 as of Friday evening.

With reports from CTV Vancouver’s Scott Hurst and Lisa Rossington