Reporting back on the issue above. First and foremost, thanks everyone for such helpful guidance:
1. I put in a new battery and that seemed to clear things up considerably, no "machine gun" sound (of course), and she started right up.
2. DaveW: Like you, I purchased an inexpensive ELM 327 bluetooth code reader (image below, if I've figured out the image posting correctly), and like you I wasn't able to get it to connect, so ended up purchasing a Motopower unit, which seemed to work fine.
![[Linked Image]](https://tm-img.com/images/2025/07/13/IMG_2124.jpeg)
3. The car was throwing a "pending" code/freeze-frame for very low engine coolant temperature, which ChatGTP indicates may be the residue of failed startup attempts on weak battery or potentially a busted coolant temperature sensor, and suggested clearing that and seeing if it returns, which I have done. No other codes.
4. Per the suggestion of John and Sewin I pulleg the #1 plug. Looked at it. And then realized I had absolutely no idea what I was looking for! I didn't see any rust, and the pointy little bit didn't seem to be worn out or anything. It was however fairly greasy on the threads, don't know if that means anything. A picture below -- if anyone has any diagnostic observations based on this picture they would of course be gratefully received!
![[Linked Image]](https://tm-img.com/images/2025/07/13/IMG_2110.jpeg)
5. I have been following Allen's protocol of holding the RPM up for a bit on cold start and that really does seem to be helping. If I do nothing on cold start the RPM drops quite low (<800) and the shaking returns, so now I just hold it up with the throttle pedal and after a couple of minutes it smooths out.
Thank you again to everyone who chimed in on this!
Adam.