Other people are going to suggest online banks, which are excellent, but you can't deposit/withdraw cash easily to those, which is the main purpose poorer people have for a bank account.
Instead, try local credit unions. As an example where I'm at, Indiana Members Credit Union has a checking account with all the normal perks of a checking account and no fees. And credit unions work together with the major banks to give their members access at most ATMs.