I went out there again this morning to find and fix the problem. A description of the house: walk in through the front door and you're in a wide foyer/hall area, two bedrooms off to the left with a bathroom in between them (bathroom doors open into the bedrooms), a laundry room to the right, and the door to the garage at the other end of the laundry room, and at the end of the hallway it opens out into a large open living room open to attached kitchen area and dinette on the left, door to the master suite on the opposite side (right side as you walk in from the front hall). Five smoke detectors total, one in each bedroom, one in the living room near the master bedroom (opposite side from the kitchen area) and one in the entry hall.
Yesterday evening, I kept going back and forth from the second bedroom, which was straight across from the laundry entrance, to the front part of the foyer, standing under each smoke detector, and each minute when the five beeps came, it sounded like it was coming from the other one. And a couple of times I went into the front bedroom, but no matter where I was, I heard the beeps from somewhere else. At the entry to the second bedroom, there's a little cubby with the air return in the ceiling, going to the furnace in the attic. I went up in the attic twice, verified the beeping wasn't from up there, and followed some of the smoke detector wires while I was up there. There was no evidence of a sixth smoke detector hooked into the system, and yet the beeping continued, every minute, five beeps. I even looked in the air return a couple of times, but nothing, just flex duct heading off to the furnace.
This morning I got there with my plan being to remove smoke detectors and set them outside the house until I found which one was beeping. Also verify the date codes were good. So, I went ahead and did it, removed all three of the detectors in the front area of the house, and then even the one in the living room because one time it sounded like the beeping was coming from there. In the middle of putting the new smoke detectors outside the front of the house, I also set all five of the old ones outside (in back instead of in front so they wouldn't get mixed up with the new ones). They no longer had batteries, but the homeowner said maybe they could still beep. Better be safe and just set all of them outside, to eliminate the possibility the beeps were coming from them.
And, after setting four of the new detectors and all five of the old detectors outside, there was still the beep inside the house, every minute. On the wall next to the air return was a closet door. I opened it up, and the beeping was a lot louder in there. So, it had to be an old detector still in the box, maybe, in the closet. We looked for a good 10 or 15 minutes, even after deciding it had to be in the closet. Emptied everything out of the closet, looked through all the boxes, and finally after the wife left and just the husband was still there, I got out a clear plastic bowl full of junk, that she had already gone through, and as I pulled it out, the beeping was loud enough to hurt my ears, from the plastic bowl. At the very bottom of the bowl, underneath all the other junk, was an old carbon monoxide detector, smaller than the smoke detectors and rectangular rather than round, and it looked like it had never even been installed, it still had a plastic covering over the screen permanently marked with some LCD-looking numbers for display, with the fake LCD numbers showing "68," but the real LCD underneath showing "End."
And that was it, that was most likely the whole problem from the start. The new smoke detectors were labeled "2021 NOVEMBER 18" and the old ones said some date in 2014, so they weren't at end of life yet.
I charged the homeowners for two hours of labor and the new detectors. I think I was actually on site for over three hours total. But, they were happy with my work, and so everything was OK in the end. And now I know what to look for, next time this happens. Just a little while ago, I got another call from someone with a very similar problem, and I described to him what to look for, and said I could work on it on Monday if he can't figure it out by then.