When I need some cash, I just point my card at the nearest ATM fee and get it. Wells Fargo doesn't charge me fees for withdrawal and they cover the cost of surcharges that non-Wells Fargo banks assess on my withdrawals. But they do that because I have enough money in different Wells Fargo accounts to qualify for a high-end PMA Checking Package in which decent service is provided to valuable customers. If you're too poor to feasibly qualify for a deluxe account, then you're going to get hit by all kinds of fees.
This gets to be a huge problem when your employer decides that it'd be simpler to pay low-level hourly workers by handing them prepaid debit cards, rather than the (apparently more expensive for employers) traditional options.
There's a strong case, I think, for the creation of a "postal banking" system (though I wouldn't actually want the USPS to do it) in which every American would be given a government-run zero-interest no-fee bank account that came equipped with a debit card and in which employers were legally required to offer direct deposit as an option. People would still end up hit with fees when they wanted to withdraw cash from ATMs, but for bill paying and non-cash transactions they could use the debit card and you'd undercut both the traditional high-fee check-cashing industry and the newfangled high-fee prepaid debit card industry. In the long run we should be looking to get rid of paper money altogether, but that means we need to lay the groundwork for a utility-like electronic payments system. For-profit entities could and should build money-making services on top of a free bare-bones government-run utility bank, but it should be possible for low-income people to get paid and go buy groceries without getting held up by fees.