Files
battery-monitor/package.json
denq 19ef7b88d3 Initial commit: Battery Monitor with 4G Power Management
This is a Next.js 16 web application for Raspberry Pi uConsole CM5 that:
- Monitors battery metrics in real-time from AXP20x power supply
- Visualizes battery data with charts (Recharts)
- Stores historical data in SQLite database
- Exports data to CSV
- Manages monitoring sessions

New Feature: 4G Power Manager
- Automatically detects 4G modem state changes
- Reduces CM5 CPU frequency when 4G is active to prevent hangs
- Uses udev rules + systemd service for reliable monitoring
- Solves battery power delivery limitation (18-20W max from AXP228)

Hardware: Raspberry Pi CM5 with AXP228 power management IC
Tech Stack: Next.js 16, React 19, TypeScript, Tailwind CSS 4, shadcn/ui
2025-11-03 21:55:56 +08:00

40 lines
973 B
JSON

{
"name": "battery-monitor",
"version": "0.1.0",
"private": true,
"scripts": {
"dev": "next dev",
"build": "next build",
"start": "next start",
"lint": "eslint"
},
"dependencies": {
"@radix-ui/react-progress": "^1.1.7",
"@radix-ui/react-slot": "^1.2.3",
"better-sqlite3": "^12.4.1",
"class-variance-authority": "^0.7.1",
"clsx": "^2.1.1",
"date-fns": "^4.1.0",
"lucide-react": "^0.552.0",
"next": "16.0.1",
"react": "19.2.0",
"react-day-picker": "^9.11.1",
"react-dom": "19.2.0",
"recharts": "^2.15.4",
"tailwind-merge": "^3.3.1"
},
"devDependencies": {
"@playwright/test": "^1.56.1",
"@tailwindcss/postcss": "^4",
"@types/better-sqlite3": "^7.6.13",
"@types/node": "^20",
"@types/react": "^19",
"@types/react-dom": "^19",
"eslint": "^9",
"eslint-config-next": "16.0.1",
"tailwindcss": "^4",
"tw-animate-css": "^1.4.0",
"typescript": "^5"
}
}