Important Notice: This is a private repository. While project information and statistics are shared publicly, the source code is maintained privately for security and intellectual property reasons.
The Smart Pill Reminder System is a sophisticated Android application that bridges the gap between digital reminders and physical medication management. This innovative system combines a modern mobile interface with IoT capabilities through ESP8266 integration, ensuring reliable medication adherence and enhanced healthcare outcomes.
-
Intuitive Medication Management
- Create and manage multiple medication reminders
- Customizable time schedules and descriptions
- Toggle reminders active/inactive
- 24-hour format support
- Real-time updates and synchronization
-
Smart Device Connectivity
- Seamless WiFi-based device pairing
- Robust UDP protocol implementation
- Real-time data synchronization
- Intelligent connection state management
- Automatic reconnection handling
-
Modern User Interface
- Material Design implementation
- Fluid animations and transitions
- Pull-to-refresh functionality
- Intuitive empty state handling
- Clear connection status indicators
class PillReminderHomeActivity : AppCompatActivity {
// Handles:
// - UI initialization
// - Reminder list management
// - Network connectivity
// - User interactions
}
data class PillReminderDataModel(
val time: String?,
val timeIn24Hour: String?,
val description: String?,
var isSwitchChecked: Boolean
)
class PillReminderDBHandler(context: Context) : SQLiteOpenHelper {
// Manages:
// - SQLite operations
// - CRUD functionality
// - Data persistence
}
TIME_DATA:time1,time2,time3...
PING
: Connection establishmentPONG
: Connection acknowledgmentDISCONNECT
: Connection terminationTIME_DATA
: Schedule synchronization
-
Database Operations
- SQLite implementation for local storage
- Custom DBHandler for CRUD operations
- Transaction management
- Data integrity checks
-
UI Components
- RecyclerView with custom adapter
- Custom dialog fragments
- Data Binding implementation
- SwipeRefreshLayout integration
-
UDP Socket Implementation
- Default port: 8266
- ESP8266 AP Mode (192.168.4.1)
- Connection state validation
- Error handling mechanisms
-
Data Synchronization
- Real-time schedule updates
- Batch timing transmission
- Connection maintenance
- Automatic retry logic
- Material Design Components
- Custom dialogs and fragments
- Interactive status indicators
- Progress animations
- Error state handling
- Android 5.0 (API Level 21) or higher
- WiFi-enabled device
- Compatible ESP8266 hardware unit
- Internet connectivity for updates
-
Initial Setup
- Install the application
- Enable WiFi connectivity
- Connect to ESP8266 network
- Initialize device pairing
-
Reminder Management
- Create new reminders via "+" button
- Set time and description
- Toggle reminder status
- Edit/delete as needed
-
Device Synchronization
- Ensure WiFi connection
- Select desired reminders
- Initiate synchronization
- Verify successful transmission
This project maintains a balanced approach to open-source collaboration while protecting intellectual property:
-
Public Components:
- This README documentation
- Project statistics and activity
- Issue tracking
- Feature announcements
-
Private Components:
- Source code
- Implementation details
- Configuration files
- Development history
-
Planned Features
- Cloud backup integration
- Multi-device support
- Advanced scheduling patterns
- Medication tracking analytics
- User profiles system
-
Technical Roadmap
- MVVM architecture migration
- Kotlin Coroutines integration
- Jetpack Compose UI
- Comprehensive testing
- CI/CD implementation
- Developer: Deepak Nishad
- GitHub: github.com/ideepaknishadd
- Contact: +916351387915
- Email: [email protected]
While the source code is private, we welcome:
- Feature suggestions
- Bug reports
- Documentation improvements
- General feedback
- Android Development Community
- ESP8266 Development Team
- Material Design Guidelines
- Open-source contributors
Engineered with ❤️ by Deepak Nishad