A man carrying two knives jumped into a school bus in Campo Friday and was wrestled to the ground by the driver, a passerby, and a student’s grandmother.

Hours later, the suspect’s father told NBC 7 his son had reached out to law enforcement authorities twice in two days with concerns that the cartel was going to harm his children.

The bus was picking up Campo Elementary School students at an apartment complex near the intersection of Jeb Stuart and Sheridan roads at about 8:45 a.m., the San Diego County Sheriff’s Department said.

The bus closed the bus door and began to pull away when a man started running towards the bus.

"Believing the man was a father trying to stop the bus for a child running late, the bus driver stopped the bus and opened the door," the sheriff's department said.

Matthew D. Barker, 37, of Campo, entered the doorway of the bus but was stopped by the driver before he could make his way further. The students were huddled near the rear of the bus, shepherded there by one of the older students, deputies said.

Mountain Empire Unified School District officials said the school bus driver immediately jumped into action to keep students safe.

As the bus driver held back the man, a woman who was accompanying her grandchild to school jumped in to help.

The bus driver yelled that the man had a knife to his head, deputies said.

That's when a third person hopped onto the bus, pried the knife away from the man and forced him off the bus, sheriff's officials said.

Deputies arrived at the scene and placed Barker in handcuffs.

Barker’s son and daughter were on the school bus, their grandfather said.

Doug Barker said his son started acting strangely two nights ago and the behavior led to him attempting to keep his children home from school because he feared for their safety.

Two nights ago, Matthew Barker called 911 telling them someone was trying to hurt his kids, his father said. Deputies responded to the home, the elder Barker said.

On Thursday, his son walked to the nearby U.S. Border Patrol station to reach out for help, according to the suspect’s father.

Then, last night, Doug Barker found his son in his car with his grandchildren. He ushered the three of them into the home and he said his son slept some but in the morning, didn’t want his children to go to school.

Matthew Barker faces felony assault charges. He was believed to be on drugs at the time of the incident, deputies said.

An investigation is underway. No other information was available.

Counselors would be at Campo Elementary School for students who need extra support, district officials said.

The SDSO confirmed that there were two 911 calls made regarding Barker on Thursday.

According to the department, the first call was made by Barker himself at around 10 a.m. Deputies said Barker did not make sense and units responded for a welfare check.

SDSO Lt. Greg Rylaarsdam said Barker was detained but released because he didn't meet the criteria for involuntary transport to the County Mental health Center.

The responding deputy reported that Barker didn't show signs of being under the influence and said there was no reason to take him into custody. Barker's family told deputies that they didn't think he was a threat, but did think he could be developing schizophrenia and needed help.

The deputies were called to Barker's about an hour and a half later. A third party called 911 and reported Barker was wandering his complex saying that gunshots had been fired.

By the time deputies got there, Barker was asleep in his home. His family told deputies they would arrange a private transport to the hospital if his behavior got worse.

Barker was taken to county jail.

Please refresh this page for updates on this developing story. Details may change as information is released.