GlacierCam is an open source timelapse camera system, powered by Raspberry Pi. This repository is currently under active development and will be updated soon.
- Standardized CSI camera connector
- 12 MP autofocus camera
- Big selection regarding resolution, lens and filters
- Specialty cameras (e.g. thermal, infrared, global shutter, etc.) available
- Possible: Ability to add up to 4 cameras on one system
- 4G, WiFi, Bluetooth and Ethernet (with adapter)
- Offline time synchronization with built-in GPS
- Offline operation/fallback possible
- Possibility to have multiple internet sources for redundancy
- Full data ownership with your own server (e.g. FTP)
- Can easily be modified/upgraded in the future (e.g. 5G, Satellite internet, directional antennas)
- Low power consumption (ca. 0.05 Wh / wake cycle)
- Dedicated power management hardware
- Input: 5 V DC (USB-C) or 6 - 30 DC
- Programmable schedule (e.g. every 30 minutes from 8:00 to 20:00)
- Monitoring of battery level, internal temperature and voltage
- External 12V battery and solar panel possible (e.g. 2 W solar panel)
- Automatic schedule dependent on battery level and sunrise/sunset
- Possible to trigger recording externally (e.g. with radar)
- Has extensively been tested in harsh enviroment conditions (snow, rain, cold temperatures etc.)
- Fits in small IP67 case
- 3D-printed case insert available
- Can accomodate a wide variety of additional sensors
- I2C, UART, SPI, USB, Bluetooth etc. available for additional sensors
- GPS and Temperature sensor built in
- Image processing on device possible, supports edge TPUs for ML inference
- Supports different Raspberry Pi models, depending on compute and I/O requirements
- Timestamp with internal RTC (±2s/year), time synchronization via GPS or internet
- Data visualization
- Local or in the cloud
- Planned: Image processing on server
- Planned: Change setting on the webserver -> Modular for expansion and/or future upgrades
Component | Price |
---|---|
Raspberry Pi Zero 2 W | CHF 19.90 |
Witty Pi 4 | CHF 32.90 |
Waveshare SIM7600G-H 4G HAT (B) | CHF 82.90 |
SandDisk max endurance 64GB | CHF 20.10 |
Dörr 39mm UV Filter | CHF 8.70 |
Pi Zero Kamerakabel 150mm | CHF 9.90 |
Kunststoffgehäuse | CHF 20.61 |
Druckausgleichsmembran | CHF 11.20 |
Dörr 2W Solarpanel | CHF 68.00 |
Raspberry Pi Kamera V2 | CHF 22.90 |
Raspberry Pi HQ Kamera | CHF 60.90 |
Raspberry Pi 6mm Lens | CHF 29.90 |
= CHF 297.11 bzw. 365.01
- Kleinteile (Kabel, Schrauben, Kondensator, Filament für 3D-Druck, etc.) - ca. CHF 50.-
wget -O - https://raw.githubusercontent.com/Eagleshot/GlacierCam/main/script.sh | sudo sh
wget -O - https://raw.githubusercontent.com/Eagleshot/GlacierCam/main/updateScript.sh | sudo sh
-
Update settings validation
-
Move data to seperate class and add tests
-
Add the version to data -> TODO documentation
-
Finish 3D-printed case
-
Configure Esp32 as backup
-
Implement software update possibility
-
Add log level setting
-
Limit log filesize
-
Update Witty Pi 4 firmware -> See: https://www.uugear.com/forums/technial-support-discussion/witty-pi-4-not-starting/
-
Check whole code
-
Maybe: Advanced scheduling (start and end date)
- Improved time drift detection (maybe with GPS)
- Enable watchdog
- Add hooks for data processing (e.g.
image_processing()
) that are called by the program at a specific time in the program and can be modified by the user - Modify firmware to be able to easily add new sensors (including CSV/webserver adaption)
- Work with read only filesystem and USB drive
- Manage max. number of images on USB drive and add an upload limit
- Get startup reason from witty pi
- https://www.youtube.com/watch?v=pxuXaaT1u3k
- https://stackoverflow.com/questions/24505145/how-to-limit-log-file-size-in-python
- Simpler WiFi setup
- Check long range data transmission options (LoRa/Satellite/directional antenna)
- Add settings page (after login)
- Add settings validation
- Error notifications
- Implement logging on webserver
- Implement image processing
- Add image comparison of different timestamps
- Generate timelapse from images
- Customization (e.g. logo, colors, etc.)
- Package webserver as a executable (electron?) - or PWA?
- Active camera monitoring -> E-Mail message (camera didnt start, battery low, other error message, etc.)
- Finish documentation + improve installation script
- Add instruction: camera needs to be set to UTC time -> Should be done by installation script
- Add instruction: Only works with raspberry pi os bullseye
- Update project website
- Media articles
- Open source the project