Electrocardiogram (ECG) signals offer rich information for analyzing and understanding the cardiac activity of a person. The continuous monitoring of ECG can help diagnose cardiac disorders, such as arrhythmia, effectively. While many wearable healthcare platforms offer continuous ECG monitoring, these devices are cumbersome in the fact that they need to be continuously attached to the human body, which causes uncomfortableness, and limits their usage when monitoring a person's ECG throughout the night as they sleep. In this work, we propose a fully non-intrusive sensing system for monitoring the ECG of a person while in bed. Specifically, we present Heartquake, a geophone-based sensing system for extracting ECG patterns using heartbeat vibrations that penetrate through the mattress. The cardiac activity-originated vibration patterns are captured on the geophone and sent to a server, where the data is filtered to remove external noise and passed on to a bidirectional long short term memory (Bi-LSTM) deep learning model for ECG waveform extraction. Our experimental results with 21study participants suggest that Heartquake can detect all five ECG peaks (e.g., P, Q, R, S, T) with an average error of as low as 16 msec when participants are stationary on the bed. With additional noise factors, this error shows an increase, but can be mitigated from model personalization to still be sufficient enough as a screening tool to detect urgent situations.