.",
+"description" : "The lens you're using on your camera, for example: Arecont 1.55.",
"label" : "Lens",
"type" : "text",
"display" : 1,
@@ -1112,6 +1181,7 @@
"display" : 1,
"checkchanges" : 1,
"optional" : 1,
+"generic" : 1,
"advanced" : 0
},
{
@@ -1124,12 +1194,13 @@
{
"name" : "cameraType",
"default" : "",
-"description" : "The type of camera you are using. RPi includes the HQ and compatible cameras.",
+"description" : "The type of camera you are using. Refresh re-sets the Camera Model and is useful if you change cameras of the same Camera Type.",
"label" : "Camera Type",
"type" : "select",
"options" : [
{"value" : "RPi", "label" : "RPi"},
- {"value" : "ZWO", "label" : "ZWO"}
+ {"value" : "ZWO", "label" : "ZWO"},
+ {"value" : "Refresh", "label" : "Refresh"}
],
"display" : 1,
"checkchanges" : 1,
@@ -1151,8 +1222,8 @@
"default" : 0,
"description" : "If multiple cameras are connected to the Pi, this is the camera number (starts at 0).",
"label" : "Camera Number",
-"type" : "number",
-"display" : "cameraNumber_display",
+"type" : "integer",
+"display" : "_display",
"display" : 0,
"checkchanges" : 1,
"advanced" : 1
diff --git a/config_repo/requirements-buster.txt b/config_repo/requirements-buster.txt
index 8830128ef..8cbe2bb47 100644
--- a/config_repo/requirements-buster.txt
+++ b/config_repo/requirements-buster.txt
@@ -1,15 +1,15 @@
-opencv_python>=4.5.3.56
+numpy==1.21.4
+opencv-python<=4.6.0.66
Pillow
pyephem
skyfield
astral
pytz
-scipy
-scikit-image
+scipy<=1.8.1
+scikit-image<=0.19.3
paho-mqtt
-numpy>=1.21
photutils
-astropy
+astropy==4.3.1
suncalc
Adafruit-Blinka
vcgencmd
diff --git a/config_repo/requirements.txt b/config_repo/requirements.txt
index 42d50526d..0344b54ca 100644
--- a/config_repo/requirements.txt
+++ b/config_repo/requirements.txt
@@ -1,13 +1,13 @@
-opencv_python>=4.5.3.56
+numpy<=1.24.2
+opencv-python<=4.6.0.66
Pillow
pyephem
skyfield
astral
pytz
-scipy
-scikit-image
+scipy<=1.8.1
+scikit-image<=0.19.3
paho-mqtt
-numpy>=1.23.3
photutils
astropy
suncalc
diff --git a/html/documentation/basics/Pi.html b/html/documentation/basics/Pi.html
index 72470536c..a1b813525 100644
--- a/html/documentation/basics/Pi.html
+++ b/html/documentation/basics/Pi.html
@@ -37,34 +37,43 @@ Operating Systems
The Linux operating system controls the Pi's hardware and lets you run software
such as Allsky.
-The two most common versions of the Linux operating system for the Pi are
-Buster which was released several years ago, and
-Bullseye which was released late 2021.
-Allsky runs on both operating systems.
-Most people are running the 32-bit version of the operating systems,
-although some people have the 64-bit version of Bullseye.
+The two most common versions of Linux for the Pi are Buster,
+which was released several years ago,
+and Bullseye which was released late 2021.
+Allsky runs on both operating systems but use Bullseye if possible,
+especially if you have an RPi camera.
+Allsky works on both the 32-bit and 64-bit versions of Bullseye;
+there was no official 64-bit version of Buster and Allsky is not supported on it.
-There are also different distributions of Linux (called "distros") from various companies.
+There are different distributions of Linux (called "distros") from various companies.
While they are basically the same Linux,
there can be subtle differences and the administrative commands can vary.
-The recommended Linux distro is Debian.
+
+The recommended Linux distro is Debian.
+We can't guarantee Allsky will run on other distros.
+
Raspberry Pi Models
-There are several models of the Pi including 1, 2, 3, 4, Zero, and others.
+There are several models of the Pi including Zero, Zero 2, 1, 2, 3, 4, and others.
The Pi 3 and 4 are the most common being used for Allsky,
-but some people have the Pi Zero because of its low cost.
+but some people have the Pi Zero or Zero 2 because of their low cost.
The various models have different processing power;
-the Pi 4 is the most powerful, followed by the 3, then 2, then 1.
-The Zero is somewhere around the Pi 3 in terms of processing power.
-The Pi 4 is available with up to 8 GB memory whereas the Pi Zero is limited to 0.5 GB memory.
-Although Allsky can run on the Zero, several GB of swap space are needed,
+the Pi 4 is the most powerful, followed by the 3, then 2, then 1, then Zero.
+The Zero 2 is near the Pi 3 in terms of processing power but has less memory.
+The Pi 4 is available with up to 8 GB memory whereas the
+Pi Zero and Zero 2 are limited to 0.5 GB memory.
+Although Allsky can run on the Zero 2, several GB of swap space are needed,
and even then, Allsky just barely runs.
-The ideal unit is a Pi 4 with 4 GB memory.
+The processing power of the Pi Zero is very limited so you likely won't
+be able to create timelapse videos - stay away from it if possible.
+
+
+The ideal unit is a Pi 4 with 4 GB memory.
Allsky runs nicely on that and the USB 3.0 ports are nice for cameras that support it.
@@ -73,7 +82,7 @@ Hardware Overview
Newer devices come with USB 2 ports and the Pi 4 has a couple USB 3 ports.
-They also have a special port to plug the RPi High Definition (HD) camera into.
+They also have a special port to plug RPi and compatible cameras into.
diff --git a/html/documentation/changeLog.html b/html/documentation/changeLog.html
index 5e192268e..ec9fdb237 100644
--- a/html/documentation/changeLog.html
+++ b/html/documentation/changeLog.html
@@ -1,5 +1,6 @@
+
@@ -19,497 +20,718 @@
Allsky Version Change Log
+
-
-
-
-
-
-
-This page lists the changes to all the major Allsky releases.
-You can also see the Known Issues and Limitations
-of the current release.
-
-
-
-Wonder what all the colors below mean?
-Check out this page.
-
-
-
v2023.05.01 - Current Release
-
-
-Core Allsky
-
- - New camera support:
-
- - All ZWO cameras as of May 1, 2023.
-
- RPi HQ and Module 3 cameras.
-
- ArduCam 16 and 64 MP cameras.
-
- The RPi "Global Shutter Camera" is NOT supported - high speed shutters aren't useful for allsky images.
-
- - "Mini" timelapse videos can be created that contain a user-configurable
- number of the most recent images.
- This allows you to continually see the recent sky conditions.
-
- Installation improvements:
-
- - If there is not enough swap space configured you are prompted to add more.
- Doing this decreases the chance of timelapse creation problems.
-
- If allsky/tmp is not a memory-resident
- filesystem you are prompted to make it one.
- This SIGNIFICANTLY decreases the number of writes to the SD card, prolonging its life.
-
- If a ~/allsky-OLD directory is found it's
- assumed to be a prior release of Allsky and you are prompted to have its images,
- darks, and other items moved to the new release.
- See the Installing / Upgrading -> Allsky
- page for instructions for installing this release.
-
- scripts/check_allsky.sh
was added to perform basic sanity
- checking of your Allsky installation.
- Run it after you're done configuring Allsky to see if you have any issues.
- - latitude and longitude
- can now be specified as either a decimal number
- (e.g.,
-105.21
) or with N, S, E, W (e.g., 105.21W
).
- - Removed several settings from config.sh:
-
- - CAMERA: To update the camera type, use the new
- Camera Type setting in the WebUI.
- This is an advanced setting so you need to click the "Show Advanced Options" button to view it.
-
- POST_END_OF_NIGHT_DATA is no longer needed since
- Allsky automatically determines if you have a local Allsky Website, a remote one, or both.
-
- - New ftp-settings.sh variables:
-
- - REMOTE_PORT specifies a non-default FTP port.
-
- SSH_KEY_FILE is the path to an SSH private key.
- When scp is used for uploads,
- this identify file will be used to establish the secure connection.
-
- The Secure CP (scp) and Google Cloud Service
- (gcs) protocols are now supported for file uploads.
-
- - The Wiki now points to files in the GitHub documentation directory.
- A copy of that directory is also on the Pi and accessible via the Documentation link in the WebUI.
-
- The Allsky Documentation has been significantly enhanced and expanded.
- Its goal is to be a single source for everything you need to know about Allsky.
- If you don't know how to do something, look it up.
- If it's not in the documentation, let us know.
-
- AUTO_STRETCH now works, and is documented with sample images.
-
- Images can now be uploaded using the full image-YYYYMMDDHHMMSS.jpg
- name instead of the shorter image.jpg name.
- See the IMG_UPLOAD_ORIGINAL_NAME Allsky setting in the documentation.
-
- Many minor enhancements and bug fixes were made.
-
-
-
-WebUI
-
- - The WebUI is now installed as part of the Allsky installation and must be
- used to make all settings changes.
-
- The allsky-portal
- repository will be removed as it is no longer needed.
-
- - New links on the left side of the WebUI:
-
- - Overlay Editor allows you to drag and drop the text
- and images you want overlayed on the images.
- This is a significant improvement over the old mechanism and lets you
- vary the font size, color, rotation, etc. for everything you add.
- You can use variables in the text which get replaced at run-time, e.g., the time the image was taken.
-
- Module Manager allows you to specify what actions should
- take place after an image has been saved.
- For example you can add an overlay or count the number of stars or periodically control a dew heater.
- Users can develop (and hopefully share) their own modules.
- Full notes on how to develop modules
- is included in the documentation.
-
- The Allsky Documentation
- link accesses the documentation on your Pi.
-
- - Minimum, maximum, and default values are now correct for all camera models.
-
- Required fields with missing data are shown in red with a message saying the data is missing.
- For example, Latitude is a required field.
-
- New settings on the Allsky Settings page:
-
- - Camera Type is either ZWO or RPi.
- This replaces the CAMERA variable in the
- config.sh
- file and also allows you to switch between cameras connected to the Pi.
- For example, if you have both an RPi and ZWO camera attached, you can switch between them using this setting.
-
- Max Auto-Exposure for day and night.
- When using auto-exposure, exposure times will not exceed this value.
-
- Max Auto-Gain for day and night.
- When using auto-gain, gain values will not exceed this value.
-
- Auto White Balance, Red Balance,
- and Blue Balance are now available for day and night.
-
- Frames to Skip for day and night determine how many initial
- auto-exposure frames to ignore when starting Allsky, while the auto-exposure
- algorithm homes in on the correct exposure.
- These frames are often over or under exposed so not worth saving anyhow.
-
- Consistent Delays determines whether or not the time between the start of
- exposures will be consistent (current behavior) or not.
- When enabled, the time between images is the maximum exposure time plus the delay you set.
-
- Overlay Method determines if the text overlay (exposure, time, etc.)
- should be done by the legacy program or by the new "module" system (see above).
-
The default method will change to the module method in the next release of Allsky,
- and after that the legacy overlay method will be removed.
-
- - Require WebUI Login specifies whether
- or not the WebUI should require you to login.
- Only set this to No
- if your Pi is on a local network and you trust everyone on the network.
- Do NOT disable it if your Pi is accessible via the Internet!
-
- Cooling and Target Temp.
- (ZWO only) now have separate settings for day and night.
-
- Aggression (ZWO only)
- determines how much of a calculated exposure change should be applied.
- This helps smooth out brightness changes, for example, when a car's headlights appear in one frame.
-
- Gamma (ZWO only) changes the contrast of an image.
- It is only supported by a few cameras; for those that don't,
- the AUTO_STRETCH setting can produce a similar effect.
-
- Offset (ZWO only)
- adds about 1/10th the specified amount to each pixel's brightness,
- thereby brightening the whole image.
- etting this too high causes the image to turn gray.
-
- Contrast and
- Sharpness(RPi only).
-
- Extra Parameters (RPi only) replaces the
- CAPTURE_EXTRA_PARAMETERS
- variable in the config.sh file,
- and allows you to pass parameters to the
libcamera-still
- image capture program that Allsky doesn't natively support, such as auto-focus options.
- - Mean Target (RPi only) for day and night.
- This specifies the mean target brightness (0.0 (pure black) to
- 1.0 (pure white)) when in auto-exposure mode.
-
- Mean Threshold (RPi only).
- This specifies how close the actual mean brightness must be to the
- Mean Target.
- For example, if Mean Target is 0.5 and
- Mean Threshold is 0.1,
- the actual mean can vary between 0.4 and 0.6 (0.5 +/- 0.1).
-
- The Focus Metric setting is now available for ZWO cameras.
- Higher numbers indicate better focus.
- Use only when sky conditions are NOT changing.
-
- - NOTE: the following settings moved from
- config.sh to the WebUI,
- and are "advanced" options so you'll need to click the "Show Advanced Options" button to see them:
-
- - DAYTIME_CAPTURE is now
- Take Daytime Images in the WebUI.
-
- DAYTIME_SAVE is
- Save Daytime Images.
-
- DARK_CAPTURE is
- Take Dark Frames.
-
- DARK_FRAME_SUBTRACTION is
- Use Dark Frames.
-
- - Debug Level is more consistent:
-
- - 0: errors only.
-
- 1: level 0 plus warnings and messages about taking and saving pictures. This is the default.
-
- 2: level 1 plus details on images captured, sleep messages and the like.
-
- 3: level 2 plus time to save image, details on exposure settings and capture retries, and module execution.
-
- 4: lots of gory details for developers only.
-
- - System messages appear at the top of the WebUI whenever you need to take an action.
-
- Many minor enhancements were made.
-
-
-
-Allsky Website
-
- - The Allsky Website is now installed in ~/allsky/html/allsky.
-
- If an older version of the Website is found during Website installation you'll be prompted
- to have its images and settings moved to the new location.
-
- The home page can be customized:
-
- - You can specify the order, contents, look, and style of the icons on the left side.
- You can also hide an icon or display a new one.
-
- You can specify the order, contents, and style of the popout that appears on the right side.
- For example, you can add a link to pictures of your allsky camera.
-
- You can set a background image.
-
- You can easily change the maximum width of the image.
-
- You can add a link to a personal website.
- This link appears at the top of the page.
-
- You can add a border around the image to have it stand out on the page.
-
- You can hide the "Make Your Own" link on the bottom right of the page.
-
- You can change the icon that appears on the browser's tab.
-
- See the Allsky Website documentation for other customizations you can make.
-
- - Left sidebar:
-
- - The constellation overlay icon (Casseopeia icon) is hidden by default and should only be displayed
- after you've set the overlay to match your stars.
-
- If you are creating mini-timelapse videos, when you install the Website an icon for the current video will appear on the left side.
- You can also manually show/hide the icon.
-
- There's a new icon to display the image full-size.
-
- The startrails and information icons were updated.
-
- - Popout on right side:
-
- - A link to your Image Settings can optionally be displayed via the
- Display Settings option in the WebUI.
-
- The version of Allsky and the Allsky Website are displayed.
-
- - Timelapse video thumbnails are now created by default on the Pi and uploaded to a remote server.
- This resolves issues with remote servers that don't support creating thumbnails.
- See the TIMELAPSE_UPLOAD_THUMBNAIL setting.
-
- Configuration file changes:
-
- - The two prior configuration files (config.js and
- virtualsky.json) are replaced by configuration.json.
-
- There are several new settings, including the ability to specify the opacity of the overlay.
-
- The overlaySize setting,
- which defined both the width and the height of the constellation overlay, was split into
- overlayWidth and overlayHeight.
- Having separate values can be helpful when trying to get the overlay to line up with the actual stars.
-
- The WebUI Editor page must be used to edit the Allsky Website's
- configuration file since it performs various checks before updating the configuration.
-
- The Editor page should also be used to edit a REMOTE Allsky Website's configuration file for the same reason.s
- A master copy of the remote server's configuration.json
- is kept on the Pi and automatically re-uploaded to the server after every change.
- After you do this, the drop-down list on the Editor page will now have
- configuration.json (remote Allsky Website) to distinguish it from a local Website's file.
- See the Allsky Website Installation documentation for details.
-
-
-
-
-
-
-
v2022.03.01
-
-
- - Switched to date-based release names.
-
- Added ability to have your allsky camera added to the
- Allsky Map by configuring
- these settings.
- Added Allsky Map Setup section to the WebUI to configure the map settings.
- The Lens field now shows in the popout on the Allsky Website (if installed).
-
- Significantly enhanced Wiki - more pages and more information on existing pages.
- All known issues are described there as well as fixes / workarounds.
-
- Added an option to keograms to make them full width, even if few images were used in creating the keogram.
- In config.sh, set KEOGRAM_EXTRA_PARAMETERS="--image-expand".
-
- Added/changed/deleted settings (in config.sh unless otherwise noted):
-
- - Added WEBUI_DATA_FILES - contains the name of one or more files that contain information to
- be added to the WebUI's System page.
- See this Wiki page for more information.
-
- Renamed NIGHTS_TO_KEEP to DAYS_TO_KEEP since it determines
- how many days of data to keep, not just nighttime data.
- If blank (
""
), ALL days' data are kept.
- - Deleted AUTO_DELETE - its functionality is now in DAYS_TO_KEEP.
- DAYS_TO_KEEP="" is similar to the old AUTO_DELETE=false.
-
- Added WEB_DAYS_TO_KEEP - specifies how many days of Allsky Website images and
- videos to keep, if the website is installed on your Pi.
-
- Added WEB_IMAGE_DIR in ftp-settings.sh to allow the
- images to be copied to a location on your Pi (usually the Allsky Website) as well as being copied to a remote machine.
- This functionality already existed with timelapse, startrails, and keogram files.
-
- - The RPi camera now supports all the text overlay features as the ZWO camera,
- including the Extra Text file.
-
- Removed the harmless "deprecated pixel format used" message from the timelapse log file.
- That message only confused people.
-
- Improved the auto-exposure for RPi cameras.
-
- Made numerous changes to the ZWO and RPi camera's code that will make it easier to maintain and add new features in the future.
-
- If Allsky is stopped or restarted while a file is being uploaded to a remote server,
- the upload continues, eliminating cases where a temporary file would be left on the server.
-
- Decreased other cases where temporary files would be left on remote servers during uploads.
- Also, uploads now perform additional error checking to help in debugging.
-
- Only one upload can now be done at a time.
- Any additional uploads display a message in the log file and then exit.
- This should eliminate (or signifiantly decrease) cases where a file is overwritten or not found,
- resulting in an error message or a temporary file left on the server.
-
- Added a
--debug
option to allsky/scripts/upload.sh
to aid in debugging uploads.
- - Upload log files are only created if there was an error; this saves writes to SD cards.
-
- The
removeBadImages.sh
script also only creates a log file if there was an error,
- which saves one write to the SD card for every image.
- - Allsky now stops with an error message on unrecoverable errors (e.g., no camera found).
- It used to keep restarting and failing forever.
-
- More meaningful messages are displayed as images.
- For example, in most cases "ERROR. See /var/log/allsky.log" messages have been replaced
- with messages containing additional information, for example,
- "*** ERROR *** Allsky Stopped! ZWO camera not found!".
-
- If Allsky is restarted, a new "Allsky software is restarting" message is displayed,
- instead of a "stopping" followed by "starting" message.
-
- The timelapse debug output no longer includes one line for each of several thousand images proced.
- This make it easier to see any actual errors.
-
- The Camera Settings page of the WebUI now displays the minimum, maximum,
- and default values in a popup for numerical fields.
-
- Startrails and Keogram creation no longer crash if invalid files are found.
-
- Removed the allsky/scripts/filename.sh file.
-
- The RPi Gamma value in the WebUI was renamed to Saturation,
- which is what it always adjusted; Gamma was incorrect.
-
- Known issues:
-
- - The startrails and keogram programs don't work well if you bin differently during the day and night.
- If you don't save daytime images this won't be a problem.
-
- The minimum, maximum, and default values in the Camera Settings page of the WebUI,
- especially for the RPi camera, aren't always correct.
- This is especially try if running on the Bullseye operating system, where many of the settings changed.
-
-
-
-
-
-
0.8.3
-
-
- - Works on Bullseye operating system.
-
- RPi version:
-
- - Has an improved auto-exposure algorithm.
- To use it, set CAPTURE_EXTRA_PARAMETERS="-daymean 0.5 -nightmean 0.2"
- in config.sh.
-
- Has many new settings including support for most of the text overlay features that are supported by the ZWO version.
-
- - New and changed config.sh variables,
- see the Software Settings Wiki page for more information:
-
- - IMG_UPLOAD_FREQUENCY specifies how often the image should be uploaded to a website.
- Useful with slow uplinks or metered Internet connections.
-
- IMG_CREATE_THUMBNAILS specifies whether or not thumbnails should be created for each image.
-
- REMOVE_BAD_IMAGES now defaults to "true" since bad-image detection is now done after a
- picture is saved rather than once for all pictures at the end of the night.
- This helps decrease problems when creating startrails, keograms, and timelapse videos.
-
- IMG_PREFIX: no longer used - the name of the image used by the websites is now
- whatever you specify in the WebUI (default: image.jpg).
-
When upgrading to 0.8.3 you MUST follow the steps listed
- here.
-
-
- - Replaced
saveImageDay.sh
and saveImageNight.sh
with
- saveImage.sh
that has improved functionality,
- including passing the sensor temperature to the dark subtraction commands,
- thereby eliminating the need for the temperature.txt file.
- - The image used by the websites (default: image.jpg)
- as well as all temporary files are now written to allsky/tmp.
-
If you are using the Allsky Website you will need to change the
- imageName variable in
- /var/www/html/allsky/config.js to
- "/current/tmp/image.jpg".
- - You can significanly reduce wear on your SD card by making allsky/tmp
- a memory-based filesystem.
-
-
-
-
-
0.8.1
-
-
- - Rearranged the directory structure.
-
- Created a Wiki with additional documentation and troubleshooting tips.
-
- Renamed several variables in config.sh and ftp-settings.sh.
-
- CAMERA type of "auto" is no longer supported - you must specify "ZWO" or "RPi".
-
- Startrails and keograms are now created using all CPUs on the Pi, drastically speeding up creation time.
-
- Installing the WebUI now preserves any website files (keograms, startrails, etc.) you have.
- This allows for non-destructive updates of the WebUI.
-
- New script called
upload.sh
centralizes all the upload code from other scripts,
- and can be used to debug uploading issues.
- See this Wiki page for more information.
- - The RPi camera does much better auto-exposure if you set the
-mode-mean
and -autoexposure
options.
- - The WebUI will now show the Pi's throttle and low-voltage states, which is useful for debugging.
-
- Darks work better.
-
- Many bug fixes, error checks, and warnings added.
-
-
-
-
-
0.8
-
-
- - Workaround for ZWO daytime autoexposure bug.
-
- Improved exposure transitions between day and night so there's not such a huge change in brightness.
-
- Decrease in ZWO sensor temperature.
-
- Lots of new settings, including splitting some settings into day and night versions.
-
- Error checking and associated log messages added in many places to aid in debugging.
-
- Ability to have "notification" images displayed, such as "Allsky is starting up" and "Taking dark frames".
-
- Ability to resize uploaded images.
-
- Ability to set thumbnail size.
-
- Ability to delete bad images (corrupt and too light/dark).
-
- Ability to set an image file name prefix.
-
- Ability to reset USB bus if ZWO camera isn't found (requires
uhubctl
command to be installed).
- - Ability to specify the format of the time displayed on images.
-
- Ability to have the temperature displayed in Celcius, Fahrenheit, or both.
-
- Ability to set bitrate on timelapse video.
-
-
-
-
-
0.7
-
-
- - Added Raspberry Pi camera HQ support based on Rob Musquetier's fork.
-
- Added support for x86 architecture (Ubuntu, etc.).
-
- Temperature dependant dark frame library.
-
- Added browser-based script editor.
-
- Added configuration variables to crop black area around image.
-
- Added timelapse frame rate setting.
-
- Changed font size default value.
-
-
-
-
-
0.6
-
-
- - Added daytime exposure and auto-exposure capability.
-
- Added
-maxexposure
, -autoexposure
, -maxgain
, -autogain
options.
- Note that using autoexposure and autogain at the same time may produce unexpected results (black frames).
- - Autostart is now based on systemd and should work on all raspbian based systems, including headless distributions.
- Remote controlling will not start multiple instances of the software.
-
- Replaced
nodisplay
option with preview
argument.
- No preview in autostart mode.
- - When using the WebUI, camera options can be saved without rebooting the RPi.
-
- Added a publicly accessible preview to the WebUI: public.php.
-
- Changed exposure unit to milliseconds instead of microseconds.
-
-
-
-
-
0.5
-
-
- - Added Startrails (image stacking) with brightness control.
-
- Keograms and Startrails generation is now much faster thanks to a rewrite by Jarno Paananen..
-
-
-
-
-
0.4
-
-
- - Added Keograms (summary of the night in one image).
-
-
-
-
-
0.3
-
-
- - Added dark frame subtraction.
-
-
-
-
-
0.2
-
-
- - Separated camera settings from code logic.
-
-
-
-
-
0.1
-
-
-
-
-
-
-
+
+
+
+
+
+ This page lists the changes to all Allsky releases.
+ You can also see the Known Issues and
+ Limitations
+ of the current release.
+
+
+
+ Wonder what all the colors below mean?
+ Check out this page.
+
+
+
v2023.05.01_01 - Point Release # 1
+
+
+ Enhancements
+
+ - If multiple consecutive "bad" images are found,
+ a warning image is now displayed saying how many "bad" images were found.
+ A system warning in the WebUI is also displayed with instructions on what to check.
+
+ When Allsky starts it displays an "Allsky is Starting" image until the first
+ good image is saved.
+ Depending on your settings and the sky brightness,
+ it may take many images before it gets a good one to save.
+ The new warning image makes it obvious Allsky hasn't hung.
+
+ - In the WebUI's Editor page,
+ the buttons (e.g., "Save changes") are now at the top of the page
+ and stay there as you scroll down.
+ A new "Top" button appears at the bottom of the page after you scroll
+ to make it quick to get back to the top.
+
+ - Selecting
Refresh
from the
+ Camera Type drop-down
+ can be used to change cameras of the same
+ Camera Type.
+ For example, replacing a ZWO ASI120 with an ASI290.
+
+ - Greatly sped up the installation process when packages are not
+ already installed by using prebuilt binaries where possible.
+
+ - Changing to a camera that Allsky hasn't seen before will use the
+ prior camera's settings that typically are the same for all cameras,
+ for example,
+ Latitude,
+ Angle,
+ and
+ Owner.
+ You'll still need to verify other settings like exposure times
+ are appropriate for the new camera.
+
+ Changing to a camera that Allsky HAS seen before will
+ use all that camera's prior settings.
+
+ - The installation only prompts for a new hostname if the current one
+ is still the default "raspberrypi".
+ The suggested new name is still "allsky".
+ If the current hostname is anything other than the default the user
+ already changed the Pi's name, so don't prompt to change again.
+
+ - Check at startup if the settings file is properly linked to a
+ camera-specific file.
+ When it isn't, changes to the settings won't be propogated during
+ updates to Allsky or when switching cameras.
+
+ - ZWO only:
+
+ - ZWO Experimental Exposure
+ is a new setting that will use the Allsky auto-exposure algorithm
+ at night (assuming nighttime auto-exposure is enabled).
+ Initial testing indicates this improves the exposure of nightime images.
+
+ If you enable this setting, please let us know if it helps or not
+ by entering a Discussion item in GitHub.
+ We need the feedback.
+
+ - Target Mean can now be specified
+ for daytime and nighttime.
+ This is the same as for RPi cameras - values range from
+
0.0
(pure black) to 1.0
(pure white).
+ 1.0
is equivalent to 255
in the ${MEAN}
+ variable in the Overlay Editor.
+
+ - Mean Threshold can now be specified.
+ This is the same as for RPi cameras and determines how close the
+ mean brightness needs to be to the
+ Target Mean.
+
+
+
+ - If there are multiple Wi-Fi interfaces, information on each one will be displayed.
+
+ - The WebUI now validates numbers.
+ For example, entering X300
+ for an exposure will produce an error.
+ Hovering your mouse over a number's value will tell you if it
+ must be a whole number or it accepts fractions.
+
+
+
+ Bug Fixes
+
+ - REMOVE_BAD_IMAGES would often flag dark,
+ but "good" images as "bad" and not save them using the default
+ REMOVE_BAD_IMAGES_THRESHOLD_LOW
+ value of
1
(which is still a good default).
+
+ If after installing this point release you are still getting a lot of "bad" images,
+ do NOT disable REMOVE_BAD_IMAGES - instead,
+ modify the REMOVE_BAD_IMAGES_THRESHOLD_* values as needed.
+
+
+ - The
s3
upload protocol now sets the destination file name to
+ image.jpg instead of
+ image-YYYYMMDDHHMMSS.jpg.
+
+ - The
scp
upload protocol now uses the
+ REMOTE_USER setting.
+
+ - Set the upper limits on the x and y spinner controls in the overlay property editors to the size
+ of the image, previously these were hard coded to 2048.
+ - When adding a new variable to the overlay variable list it can now be selected without
+ refreshing the page.
+ - When an image is moved out of bounds using the x and y spinner controls a red rectangle will be
+ drawn around the image, the same as if it were dragged out of bounds.
+ - Fixed a bug when compiling on i386 platforms, due to a recent Pi OS change.
+
+
+
+
+
+
+
v2023.05.01 - Current Major Release
+
+
+
+ Core Allsky
+
+ - New camera support:
+
+ - All ZWO cameras as of May 1, 2023.
+
- RPi HQ and Module 3 cameras.
+
- ArduCam 16 and 64 MP cameras.
+
- The RPi "Global Shutter Camera" is NOT supported - high speed shutters aren't useful for
+ allsky images.
+
+ - "Mini" timelapse videos can be created that contain a user-configurable
+ number of the most recent images.
+ This allows you to continually see the recent sky conditions.
+
- Installation improvements:
+
+ - If there is not enough swap space configured you are prompted to add more.
+ Doing this decreases the chance of timelapse creation problems.
+
- If allsky/tmp is not a memory-resident
+ filesystem you are prompted to make it one.
+ This SIGNIFICANTLY decreases the number of writes to the SD card, prolonging its life.
+
- If a ~/allsky-OLD directory is found it's
+ assumed to be a prior release of Allsky and you are prompted to have its images,
+ darks, and other items moved to the new release.
+ See the Installing /
+ Upgrading -> Allsky
+ page for instructions for installing this release.
+
+ scripts/check_allsky.sh
was added to perform basic sanity
+ checking of your Allsky installation.
+ Run it after you're done configuring Allsky to see if you have any issues.
+ - latitude and longitude
+ can now be specified as either a decimal number
+ (e.g.,
-105.21
) or with N, S, E, W (e.g., 105.21W
).
+ - Removed several settings from config.sh:
+
+ - CAMERA: To update the camera type, use the new
+ Camera Type setting in the WebUI.
+ This is an advanced setting so you need to click the "Show Advanced Options" button to
+ view it.
+
- POST_END_OF_NIGHT_DATA is no longer needed since
+ Allsky automatically determines if you have a local Allsky Website, a remote one, or
+ both.
+
+ - New ftp-settings.sh variables:
+
+ - REMOTE_PORT specifies a non-default FTP port.
+
- SSH_KEY_FILE is the path to an SSH private key.
+ When scp is used for uploads,
+ this identify file will be used to establish the secure connection.
+
- The Secure CP (scp) and Google Cloud Service
+ (gcs) protocols are now supported for file uploads.
+
+ - The Wiki now points to files in the GitHub documentation
+ directory.
+ A copy of that directory is also on the Pi and accessible via the Documentation link in the
+ WebUI.
+
- The Allsky Documentation has been significantly enhanced and expanded.
+ Its goal is to be a single source for everything you need to know about Allsky.
+ If you don't know how to do something, look it up.
+ If it's not in the documentation, let us know.
+
- AUTO_STRETCH now works, and is documented with sample images.
+
- Images can now be uploaded using the full image-YYYYMMDDHHMMSS.jpg
+ name instead of the shorter image.jpg name.
+ See the IMG_UPLOAD_ORIGINAL_NAME Allsky setting in the
+ documentation.
+
- Many minor enhancements and bug fixes were made.
+
+
+
+ WebUI
+
+ - The WebUI is now installed as part of the Allsky installation and must be
+ used to make all settings changes.
+
+ The allsky-portal
+ repository will be removed as it is no longer needed.
+
+ - New links on the left side of the WebUI:
+
+ - Overlay Editor allows you to drag and drop the text
+ and images you want overlayed on the images.
+ This is a significant improvement over the old mechanism and lets you
+ vary the font size, color, rotation, etc. for everything you add.
+ You can use variables in the text which get replaced at run-time, e.g., the time the
+ image was taken.
+
- Module Manager allows you to specify what actions should
+ take place after an image has been saved.
+ For example you can add an overlay or count the number of stars or periodically control
+ a dew heater.
+ Users can develop (and hopefully share) their own modules.
+ Full notes on how to develop modules
+ is included in the documentation.
+
- The Allsky Documentation
+ link accesses the documentation on your Pi.
+
+ - Minimum, maximum, and default values are now correct for all camera models.
+
- Required fields with missing data are shown in red with a message saying the data is missing.
+ For example, Latitude is a required field.
+
- New settings on the Allsky Settings page:
+
+ - Camera Type is either ZWO or RPi.
+ This replaces the CAMERA variable in the
+ config.sh
+ file and also allows you to switch between cameras connected to the Pi.
+ For example, if you have both an RPi and ZWO camera attached, you can switch between
+ them using this setting.
+
- Max Auto-Exposure for day and night.
+ When using auto-exposure, exposure times will not exceed this value.
+
- Max Auto-Gain for day and night.
+ When using auto-gain, gain values will not exceed this value.
+
- Auto White Balance, Red
+ Balance,
+ and Blue Balance are now available for day and night.
+
- Frames to Skip for day and night determine how many
+ initial
+ auto-exposure frames to ignore when starting Allsky, while the auto-exposure
+ algorithm homes in on the correct exposure.
+ These frames are often over or under exposed so not worth saving anyhow.
+
- Consistent Delays determines whether or not the time
+ between the start of
+ exposures will be consistent (current behavior) or not.
+ When enabled, the time between images is the maximum exposure time plus the delay you
+ set.
+
- Overlay Method determines if the text overlay
+ (exposure, time, etc.)
+ should be done by the legacy program or by the new "module" system (see above).
+
The default method will change to the module method in the next release of
+ Allsky,
+ and after that the legacy overlay method will be removed.
+
+ - Require WebUI Login specifies whether
+ or not the WebUI should require you to login.
+ Only set this to No
+ if your Pi is on a local network and you trust everyone on the network.
+ Do NOT disable it if your Pi is accessible via the Internet!
+
- Cooling and Target
+ Temp.
+ (ZWO only) now have separate settings for day and night.
+
- Aggression (ZWO only)
+ determines how much of a calculated exposure change should be applied.
+ This helps smooth out brightness changes, for example, when a car's headlights appear in
+ one frame.
+
- Gamma (ZWO only) changes the contrast of an image.
+ It is only supported by a few cameras; for those that don't,
+ the AUTO_STRETCH setting can produce a similar effect.
+
- Offset (ZWO only)
+ adds about 1/10th the specified amount to each pixel's brightness,
+ thereby brightening the whole image.
+ etting this too high causes the image to turn gray.
+
- Contrast and
+ Sharpness(RPi only).
+
- Extra Parameters (RPi only) replaces the
+ CAPTURE_EXTRA_PARAMETERS
+ variable in the config.sh file,
+ and allows you to pass parameters to the
libcamera-still
+ image capture program that Allsky doesn't natively support, such as auto-focus options.
+ - Mean Target (RPi only) for day and night.
+ This specifies the mean target brightness (0.0 (pure black) to
+ 1.0 (pure white)) when in auto-exposure mode.
+
- Mean Threshold (RPi only).
+ This specifies how close the actual mean brightness must be to the
+ Mean Target.
+ For example, if Mean Target is 0.5 and
+ Mean Threshold is 0.1,
+ the actual mean can vary between 0.4 and 0.6 (0.5 +/- 0.1).
+
- The Focus Metric setting is now available for ZWO
+ cameras.
+ Higher numbers indicate better focus.
+ Use only when sky conditions are NOT changing.
+
+ - NOTE: the following settings moved from
+ config.sh to the WebUI,
+ and are "advanced" options so you'll need to click the "Show Advanced Options" button to see
+ them:
+
+ - DAYTIME_CAPTURE is now
+ Take Daytime Images in the WebUI.
+
- DAYTIME_SAVE is
+ Save Daytime Images.
+
- DARK_CAPTURE is
+ Take Dark Frames.
+
- DARK_FRAME_SUBTRACTION is
+ Use Dark Frames.
+
+ - Debug Level is more consistent:
+
+ - 0: errors only.
+
- 1: level 0 plus warnings and messages about taking and saving pictures. This is the
+ default.
+
- 2: level 1 plus details on images captured, sleep messages and the like.
+
- 3: level 2 plus time to save image, details on exposure settings and capture retries,
+ and module execution.
+
- 4: lots of gory details for developers only.
+
+ - System messages appear at the top of the WebUI whenever you need to take an action.
+
- Many minor enhancements were made.
+
+
+
+ Allsky Website
+
+ - The Allsky Website is now installed in ~/allsky/html/allsky.
+
- If an older version of the Website is found during Website installation you'll be prompted
+ to have its images and settings moved to the new location.
+
- The home page can be customized:
+
+ - You can specify the order, contents, look, and style of the icons on the left side.
+ You can also hide an icon or display a new one.
+
- You can specify the order, contents, and style of the popout that appears on the right
+ side.
+ For example, you can add a link to pictures of your allsky camera.
+
- You can set a background image.
+
- You can easily change the maximum width of the image.
+
- You can add a link to a personal website.
+ This link appears at the top of the page.
+
- You can add a border around the image to have it stand out on the page.
+
- You can hide the "Make Your Own" link on the bottom right of the page.
+
- You can change the icon that appears on the browser's tab.
+
- See the Allsky Website documentation for other customizations you can make.
+
+ - Left sidebar:
+
+ - The constellation overlay icon (Casseopeia icon) is hidden by default and should only
+ be displayed
+ after you've set the overlay to match your stars.
+
- If you are creating mini-timelapse videos, when you install the Website an icon for the
+ current video will appear on the left side.
+ You can also manually show/hide the icon.
+
- There's a new icon to display the image full-size.
+
- The startrails and information icons were updated.
+
+ - Popout on right side:
+
+ - A link to your Image Settings can optionally be displayed via the
+ Display Settings option in the WebUI.
+
- The version of Allsky and the Allsky Website are displayed.
+
+ - Timelapse video thumbnails are now created by default on the Pi and uploaded to a remote
+ server.
+ This resolves issues with remote servers that don't support creating thumbnails.
+ See the TIMELAPSE_UPLOAD_THUMBNAIL setting.
+
- Configuration file changes:
+
+ - The two prior configuration files (config.js and
+ virtualsky.json) are replaced by configuration.json.
+
- There are several new settings, including the ability to specify the opacity of the
+ overlay.
+
- The overlaySize setting,
+ which defined both the width and the height of the constellation overlay, was split into
+ overlayWidth and overlayHeight.
+ Having separate values can be helpful when trying to get the overlay to line up with the
+ actual stars.
+
- The WebUI Editor page must be used to edit the Allsky
+ Website's
+ configuration file since it performs various checks before updating the configuration.
+
- The Editor page should also be used to edit a REMOTE
+ Allsky Website's configuration file for the same reason.s
+ A master copy of the remote server's configuration.json
+ is kept on the Pi and automatically re-uploaded to the server after every change.
+ After you do this, the drop-down list on the Editor page
+ will now have
+ configuration.json (remote Allsky Website) to distinguish
+ it from a local Website's file.
+ See the Allsky Website Installation documentation for details.
+
+
+
+
+
+
+
v2022.03.01
+
+
+
+ - Switched to date-based release names.
+
- Added ability to have your allsky camera added to the
+ Allsky Map by configuring
+ these
+ settings.
+ Added Allsky Map Setup section to the WebUI to configure the map settings.
+ The Lens field now shows in the popout on the Allsky Website
+ (if installed).
+
- Significantly enhanced Wiki - more pages and more information on existing pages.
+ All known issues are described there as well as fixes / workarounds.
+
- Added an option to keograms to make them full width, even if few images were used in creating
+ the keogram.
+ In config.sh, set KEOGRAM_EXTRA_PARAMETERS="--image-expand".
+
- Added/changed/deleted settings (in config.sh unless otherwise
+ noted):
+
+ - Added WEBUI_DATA_FILES - contains the name of one or more
+ files that contain information to
+ be added to the WebUI's System page.
+ See this Wiki
+ page for more information.
+
- Renamed NIGHTS_TO_KEEP to DAYS_TO_KEEP since it determines
+ how many days of data to keep, not just nighttime data.
+ If blank (
""
), ALL days' data are kept.
+ - Deleted AUTO_DELETE - its functionality is now in DAYS_TO_KEEP.
+ DAYS_TO_KEEP="" is similar to the old AUTO_DELETE=false.
+
- Added WEB_DAYS_TO_KEEP - specifies how many days of
+ Allsky Website images and
+ videos to keep, if the website is installed on your Pi.
+
- Added WEB_IMAGE_DIR in ftp-settings.sh to allow the
+ images to be copied to a location on your Pi (usually the Allsky Website) as well as
+ being copied to a remote machine.
+ This functionality already existed with timelapse, startrails, and keogram files.
+
+ - The RPi camera now supports all the text overlay features as the ZWO camera,
+ including the Extra Text file.
+
- Removed the harmless "deprecated pixel format used" message from the timelapse log file.
+ That message only confused people.
+
- Improved the auto-exposure for RPi cameras.
+
- Made numerous changes to the ZWO and RPi camera's code that will make it easier to maintain and
+ add new features in the future.
+
- If Allsky is stopped or restarted while a file is being uploaded to a remote server,
+ the upload continues, eliminating cases where a temporary file would be left on the server.
+
- Decreased other cases where temporary files would be left on remote servers during uploads.
+ Also, uploads now perform additional error checking to help in debugging.
+
- Only one upload can now be done at a time.
+ Any additional uploads display a message in the log file and then exit.
+ This should eliminate (or signifiantly decrease) cases where a file is overwritten or not found,
+ resulting in an error message or a temporary file left on the server.
+
- Added a
--debug
option to allsky/scripts/upload.sh
to aid in debugging
+ uploads.
+ - Upload log files are only created if there was an error; this saves writes to SD cards.
+
- The
removeBadImages.sh
script also only creates a log file if there was an error,
+ which saves one write to the SD card for every image.
+ - Allsky now stops with an error message on unrecoverable errors (e.g., no camera found).
+ It used to keep restarting and failing forever.
+
- More meaningful messages are displayed as images.
+ For example, in most cases "ERROR. See /var/log/allsky.log" messages have been
+ replaced
+ with messages containing additional information, for example,
+ "*** ERROR *** Allsky Stopped! ZWO camera not found!".
+
- If Allsky is restarted, a new "Allsky software is restarting" message is displayed,
+ instead of a "stopping" followed by "starting" message.
+
- The timelapse debug output no longer includes one line for each of several thousand images
+ proced.
+ This make it easier to see any actual errors.
+
- The Camera Settings page of the WebUI now displays the minimum,
+ maximum,
+ and default values in a popup for numerical fields.
+
- Startrails and Keogram creation no longer crash if invalid files are found.
+
- Removed the allsky/scripts/filename.sh file.
+
- The RPi Gamma value in the WebUI was renamed to Saturation,
+ which is what it always adjusted; Gamma was incorrect.
+
- Known issues:
+
+ - The startrails and keogram programs don't work well if you bin differently during the
+ day and night.
+ If you don't save daytime images this won't be a problem.
+
- The minimum, maximum, and default values in the Camera
+ Settings page of the WebUI,
+ especially for the RPi camera, aren't always correct.
+ This is especially try if running on the Bullseye operating system, where many of the
+ settings changed.
+
+
+
+
+
+
0.8.3
+
+
+
+ - Works on Bullseye operating system.
+
- RPi version:
+
+ - Has an improved auto-exposure algorithm.
+ To use it, set CAPTURE_EXTRA_PARAMETERS="-daymean 0.5 -nightmean 0.2"
+ in config.sh.
+
- Has many new settings including support for most of the text overlay features that are
+ supported by the ZWO version.
+
+ - New and changed config.sh variables,
+ see the Software Settings
+ Wiki page for more information:
+
+ - IMG_UPLOAD_FREQUENCY specifies how often the image should
+ be uploaded to a website.
+ Useful with slow uplinks or metered Internet connections.
+
- IMG_CREATE_THUMBNAILS specifies whether or not thumbnails
+ should be created for each image.
+
- REMOVE_BAD_IMAGES now defaults to "true" since bad-image
+ detection is now done after a
+ picture is saved rather than once for all pictures at the end of the night.
+ This helps decrease problems when creating startrails, keograms, and timelapse videos.
+
- IMG_PREFIX: no longer used - the name of the image used
+ by the websites is now
+ whatever you specify in the WebUI (default: image.jpg).
+
-
+
When upgrading to 0.8.3 you MUST follow the steps listed
+ here.
+
+
+ - Replaced
saveImageDay.sh
and saveImageNight.sh
with
+ saveImage.sh
that has improved functionality,
+ including passing the sensor temperature to the dark subtraction commands,
+ thereby eliminating the need for the temperature.txt file.
+ - The image used by the websites (default: image.jpg)
+ as well as all temporary files are now written to allsky/tmp.
+
If you are using the Allsky Website you will need to change the
+ imageName variable in
+ /var/www/html/allsky/config.js to
+ "/current/tmp/image.jpg".
+
+ - You can significanly reduce wear on your SD card by making allsky/tmp
+ a memory-based
+ filesystem.
+
+
+
+
+
0.8.1
+
+
+
+ - Rearranged the directory structure.
+
- Created a Wiki with additional documentation and troubleshooting tips.
+
- Renamed several variables in config.sh and ftp-settings.sh.
+
- CAMERA type of "auto" is no longer supported - you must specify
+ "ZWO" or "RPi".
+
- Startrails and keograms are now created using all CPUs on the Pi, drastically speeding up
+ creation time.
+
- Installing the WebUI now preserves any website files (keograms, startrails, etc.) you have.
+ This allows for non-destructive updates of the WebUI.
+
- New script called
upload.sh
centralizes all the upload code from other scripts,
+ and can be used to debug uploading issues.
+ See this Wiki
+ page for more information.
+ - The RPi camera does much better auto-exposure if you set the
-mode-mean
and
+ -autoexposure
options.
+ - The WebUI will now show the Pi's throttle and low-voltage states, which is useful for debugging.
+
- Darks work better.
+
- Many bug fixes, error checks, and warnings added.
+
+
+
+
+
0.8
+
+
+
+ - Workaround for ZWO daytime autoexposure bug.
+
- Improved exposure transitions between day and night so there's not such a huge change in
+ brightness.
+
- Decrease in ZWO sensor temperature.
+
- Lots of new settings, including splitting some settings into day and night versions.
+
- Error checking and associated log messages added in many places to aid in debugging.
+
- Ability to have "notification" images displayed, such as "Allsky is starting up" and "Taking
+ dark frames".
+
- Ability to resize uploaded images.
+
- Ability to set thumbnail size.
+
- Ability to delete bad images (corrupt and too light/dark).
+
- Ability to set an image file name prefix.
+
- Ability to reset USB bus if ZWO camera isn't found (requires
uhubctl
command to be
+ installed).
+ - Ability to specify the format of the time displayed on images.
+
- Ability to have the temperature displayed in Celcius, Fahrenheit, or both.
+
- Ability to set bitrate on timelapse video.
+
+
+
+
+
0.7
+
+
+
+ - Added Raspberry Pi camera HQ support based on Rob Musquetier's fork.
+
- Added support for x86 architecture (Ubuntu, etc.).
+
- Temperature dependant dark frame library.
+
- Added browser-based script editor.
+
- Added configuration variables to crop black area around image.
+
- Added timelapse frame rate setting.
+
- Changed font size default value.
+
+
+
+
+
0.6
+
+
+
+ - Added daytime exposure and auto-exposure capability.
+
- Added
-maxexposure
, -autoexposure
, -maxgain
,
+ -autogain
options.
+ Note that using autoexposure and autogain at the same time may produce unexpected results (black
+ frames).
+ - Autostart is now based on systemd and should work on all raspbian based systems, including
+ headless distributions.
+ Remote controlling will not start multiple instances of the software.
+
- Replaced
nodisplay
option with preview
argument.
+ No preview in autostart mode.
+ - When using the WebUI, camera options can be saved without rebooting the RPi.
+
- Added a publicly accessible preview to the WebUI: public.php.
+
- Changed exposure unit to milliseconds instead of microseconds.
+
+
+
+
+
0.5
+
+
+
+ - Added Startrails (image stacking) with brightness control.
+
- Keograms and Startrails generation is now much faster thanks to a rewrite by Jarno Paananen..
+
+
+
+
+
0.4
+
+
+
+ - Added Keograms (summary of the night in one image).
+
+
+
+
+
0.3
+
+
+
+ - Added dark frame subtraction.
+
+
+
+
+
0.2
+
+
+
+ - Separated camera settings from code logic.
+
+
+
+
+
0.1
+
+
+
+
+
+
+
+
+
diff --git a/html/documentation/css/custom.css b/html/documentation/css/custom.css
index 7720004eb..3ab00974e 100644
--- a/html/documentation/css/custom.css
+++ b/html/documentation/css/custom.css
@@ -1,3 +1,12 @@
+:root {
+ --navbar-background-color: #f8f8f8;
+ --navbar-border-color: #e7e7e7;
+ --navbar-background-color-dark: #272727;
+ --navbar-border-color-dark: #333333;
+ --WebUI-setting-color: #00009b;
+ --WebUI-setting-color-dark: #68a0ff;
+}
+
.page-header {
margin: 20px 0 20px;
}
@@ -14,12 +23,12 @@
height: 100%;
}
.navbar-header .navbar-brand {
- padding-left: 5px;
+ padding-left: 5px;
}
.navbar-brand img {
- height: 50px;
- display:inline-block;
- margin-right: 15px;
+ height: 50px;
+ display:inline-block;
+ margin-right: 15px;
}
.version-title {
margin-left: 40px;
@@ -51,7 +60,7 @@
}
.right-panel .panel:first-of-type {
- margin: 20px 0;
+ margin: 20px 0;
}
.panel-primary {
@@ -60,7 +69,7 @@
.panel-primary>.panel-heading {
border-color: #6b6b6b;
- background-color: #6b6b6b;
+ background-color: #6b6b6b;
}
.panel-footer {
@@ -78,119 +87,118 @@
}
.switch-title {
- margin-bottom: 6px;
+ margin-bottom: 6px;
}
.switch-field {
- font-family: "Lucida Grande", Tahoma, Verdana, sans-serif;
- margin: 3px 2px -15px 0;
- display: inline-block;
- overflow: hidden;
+ font-family: "Lucida Grande", Tahoma, Verdana, sans-serif;
+ margin: 3px 2px -15px 0;
+ display: inline-block;
+ overflow: hidden;
}
.switch-field input {
- position: absolute !important;
- clip: rect(0, 0, 0, 0);
- height: 1px;
- width: 1px;
- border: 0;
- overflow: hidden;
+ position: absolute !important;
+ clip: rect(0, 0, 0, 0);
+ height: 1px;
+ width: 1px;
+ border: 0;
+ overflow: hidden;
}
.switch-field label {
- float: left;
- display: inline-block;
- width: 60px;
- background-color: #e4e4e4;
- color: rgba(0, 0, 0, 0.6);
- font-size: 14px;
- font-weight: normal;
- text-align: center;
- text-shadow: none;
- padding: 6px 14px;
- border: 1px solid rgba(0, 0, 0, 0.2);
- -webkit-box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.3), 0 1px rgba(255, 255, 255, 0.1);
- box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.3), 0 1px rgba(255, 255, 255, 0.1);
+ float: left;
+ display: inline-block;
+ width: 60px;
+ background-color: #e4e4e4;
+ color: rgba(0, 0, 0, 0.6);
+ font-size: 14px;
+ font-weight: normal;
+ text-align: center;
+ text-shadow: none;
+ padding: 6px 14px;
+ border: 1px solid rgba(0, 0, 0, 0.2);
+ -webkit-box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.3), 0 1px rgba(255, 255, 255, 0.1);
+ box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.3), 0 1px rgba(255, 255, 255, 0.1);
}
.switch-field label:hover {
- cursor: pointer;
+ cursor: pointer;
}
.switch-field input:checked + label {
- background-color: #3a9e55;
- color: white;
- font-weight: bold;
- -webkit-box-shadow: none;
- box-shadow: none;
+ background-color: #3a9e55;
+ color: white;
+ font-weight: bold;
+ -webkit-box-shadow: none;
+ box-shadow: none;
}
.switch-field label:first-of-type {
- border-radius: 4px 0 0 4px;
+ border-radius: 4px 0 0 4px;
}
.switch-field label:last-of-type {
- border-radius: 0 4px 4px 0;
+ border-radius: 0 4px 4px 0;
}
h2 {
- margin-top:0;
+ margin-top:0;
}
.nav>li>span {
- position: relative;
- display: block;
- padding: 10px 15px;
- color: #4b4a4b;
- cursor: pointer;
+ position: relative;
+ display: block;
+ padding: 10px 15px;
+ color: #4b4a4b;
+ cursor: pointer;
}
body.dark {
- background-color: #222222;
- color: #888888;
+ background-color: #222222;
+ color: #888888;
}
.dark #page-wrapper {
- background-color: #171717;
- border-left: #333333;
+ background-color: #171717;
+ border-left: #333333;
}
.dark .navbar-default {
- background-color: #272727;
- border-color: #333333;
+ background-color: var(--navbar-background-color-dark);
+ border: 1px solid var(--navbar-border-color-dark);
}
.dark .sidebar ul li {
- border-bottom: 1px solid #333333;
+ border-bottom: 1px solid #333333;
}
.dark .sidebar ul li a,
.dark .sidebar ul li span {
- color: #888888;
+ color: #888888;
}
.dark .sidebar ul li a.active {
- background-color: #171717;
+ background-color: #171717;
}
.dark .nav>li>a:hover {
- background-color: #1D1D1D;
+ background-color: #1D1D1D;
}
.dark .panel {
- background-color: #272727;
+ background-color: #272727;
}
-.dark .panel-default,
-.dark .panel-primary {
- border-color: #333333;
+.dark .panel-default {
+ border-color: #333333;
}
.dark .panel-heading,
.dark .panel-footer {
- color: #888888;
- border-color: #333333;
- background-color: #171717;
+ color: #888888;
+ border-color: #333333;
+ background-color: #171717;
}
.alert {
@@ -225,51 +233,55 @@ table .alert-dismissable {
.dark .alert-message, .dark .alert-info {
color: #23485a;
border-color: #99ccdd;
- background-color: #8b989f;
+ background-color: #8b989f;
}
.dark .alert-success {
color: #95bb85;
border-color: #8f9d84;
- background-color: #044a05;
+ background-color: #044a05;
}
.dark .alert-warning {
color: #c0bba0;
border-color: #c0bba0;
- background-color: #8a6b3b;
+ background-color: #8a6b3b;
}
.dark .alert-danger {
color: #f1b1b1;
border-color: #f1b1b1;
- background-color: #a94442;
+ background-color: #a94442;
+}
+.alert-danger {
+ border-top-width: 10px;
+ border-bottom-width: 10px;
}
.dark .form-control,
.dark input[type="text"],
.dark input[type="number"],
.dark select {
- background-color: #171717;
- color: #888888;
- border-color: #555555;
+ background-color: #171717;
+ color: #888888;
+ border-color: #555555;
}
.dark .progress {
- background-color: #171717;
+ background-color: #171717;
}
.dark .progress-bar {
- color: #ccc;
+ color: #ccc;
}
.dark .progress-bar-success {
- background-color: #276b27;
+ background-color: #276b27;
}
.dark .progress-bar-info {
- background-color: #2a5f6f;
+ background-color: #2a5f6f;
}
.dark .progress-bar-warning {
- background-color: #a7742d;
+ background-color: #a7742d;
}
.dark .table-striped>tbody>tr:nth-of-type(odd) {
- background-color: #171717;
+ background-color: #171717;
}
.dark .table>tbody>tr>td,
@@ -278,21 +290,21 @@ table .alert-dismissable {
.dark .table>tfoot>tr>th,
.dark .table>thead>tr>td,
.dark .table>thead>tr>th {
- border-color: transparent;
+ border-color: transparent;
}
.dark .navbar-default .navbar-collapse {
- border-color: transparent;
+ border-color: transparent;
}
.dark .switch-field label {
- background-color: #171717;
- color: #888888;
+ background-color: #171717;
+ color: #888888;
}
.dark .switch-field input:checked + label {
- background-color: #1d5f2f;
- color: #171717;
+ background-color: #1d5f2f;
+ color: #171717;
}
/* Buttons */
@@ -305,12 +317,12 @@ table .alert-dismissable {
}
.dark .btn-primary {
color: #bfbfbf;
- border-color: #1475a7;
- background-color: #1d5a79;
+ border-color: #1475a7;
+ background-color: #1d5a79;
}
.btn-success {
- border: 2px solid #3e743e;
+ border: 2px solid #3e743e;
}
.btn-success:hover {
color: black;
@@ -318,53 +330,56 @@ table .alert-dismissable {
}
.dark .btn-success {
color: #bfbfbf;
- border-color: #5ea853;
+ border-color: #5ea853;
background-color: #338833;
}
.btn-warning {
- border: 2px solid #ac5b09;
- background-color: #e48d12;
+ border: 2px solid #ac5b09;
+ background-color: #e48d12;
}
.btn-warning:hover {
color: black;
- background-color: #ffa019;
+ background-color: #ffa019;
}
.dark .btn-warning {
color: #bfbfbf;
- background-color: #c46d0d;
- border-color: #e48d2d;
+ background-color: #c46d0d;
+ border-color: #e48d2d;
}
.btn-danger {
color: white;
- border: 2px solid #bf0b06;
+ border: 2px solid #bf0b06;
background-color: #f13636;
}
-.btn-danger:hover {
+.btn-danger:hover {
color: black;
background-color: #f96f6f;
}
.dark .btn-danger {
color: #bfbfbf;
- background-color: #8d3431;
- border-color: #ad5451;
+ background-color: #8d3431;
+ border-color: #ad5451;
}
.btn-advanced {
- border: 2px solid #c9c46a;
+ border: 2px solid #c9c46a;
}
.btn-advanced:hover {
color: black;
- background-color: #e3e3a3;
+ background-color: #e3e3a3;
}
.advanced, .btn-advanced { /* "advanced" options are highlighted in same color as button */
- background-color: #fffcc0;
+ background-color: #fffcc0;
}
.dark .advanced, .dark .btn-advanced {
color: #bfbfbf;
border-color: #bdb173;
- background-color: #837a2f;
+ background-color: #837a2f;
+}
+.advanced-nocolor {
+ background-color: inherit;
}
.dark .btn-primary:hover,
@@ -379,38 +394,38 @@ table .alert-dismissable {
@media screen and (max-width: 795px) { /* was 767 */
- .dark .table-responsive {
- border-color: transparent;
- }
-
- .navbar {
- height: 52px;
- }
-
- .navbar-brand img {
- height: 29px;
- }
-
- .switch-field {
- display: block;
- /* height: 40px; /* was 50 */
- }
+ .dark .table-responsive {
+ border-color: transparent;
+ }
+
+ .navbar {
+ height: 52px;
+ }
+
+ .navbar-brand img {
+ height: 29px;
+ }
+
+ .switch-field {
+ display: block;
+ /* height: 40px; /* was 50 */
+ }
- form thead {
- display: none;
- }
+ form thead {
+ display: none;
+ }
}
-/* Headers in camera options */
+/* Headers in Allsky settings */
.settingsHeader {
- background-color: #aaa;
- text-align: center;
- font-weight: bold;
- font-size: 125%;
- padding: 3px 0 3px 0;
+ background-color: #aaa;
+ text-align: center;
+ font-weight: bold;
+ font-size: 1.25em;
+ padding: 3px 0 3px 0;
}
.dark .settingsHeader {
- background-color: #555;
+ background-color: #555;
}
.boxShadow {
@@ -527,11 +542,11 @@ select {
}
.WebUISetting { /* Matches what's in the WebUI */
font-family: "Helvetica Neue",Helvetica,Arial,sans-serif;
- color:#00009b;
+ color: var(--WebUI-setting-color);
font-weight: bold;
}
.dark .WebUISetting {
- color: #68a0ff;
+ color: var(--WebUI-setting-color-dark);
}
.WebUIValue {
padding: 0 3px 0 3px;
@@ -561,9 +576,42 @@ select {
}
.cursorPointer {
- cursor: pointer;
+ cursor: pointer;
}
.live_container {
background-color: black;
margin-bottom: 15px;
}
+
+div.sticky {
+ position: -webkit-sticky;
+ position: sticky;
+ top: 0;
+ margin-top: 10px;
+ padding: 10px;
+ background-color: var(--navbar-background-color);
+ border: 2px solid var(--WebUI-setting-color);
+}
+.dark div.sticky {
+ background-color: var(--navbar-background-color-dark);
+ border-color: var(--WebUI-setting-color-dark);
+}
+#backToTopBtn {
+ display: none; /* Hidden by default */
+ position: fixed; /* Fixed/sticky position */
+ bottom: 20px; /* Place the button at the bottom of the page */
+ right: 30px; /* Place the button 30px from the right */
+ z-index: 99; /* Make sure it does not overlap */
+ border: none; /* Remove borders */
+ outline: none; /* Remove outline */
+ background-color: #555; /* Set a background color */
+ color: white; /* Text color */
+ cursor: pointer; /* Add a mouse pointer on hover */
+ padding: 15px; /* Some padding */
+ border-radius: 10px; /* Rounded corners */
+ font-size: 18px; /* Increase font size */
+}
+
+#backToTopBtn:hover {
+ background-color: #888; /* Add a lighter-grey background on hover */
+}
diff --git a/html/documentation/css/documentation.css b/html/documentation/css/documentation.css
index a4f8c50c6..b2a4d8f59 100644
--- a/html/documentation/css/documentation.css
+++ b/html/documentation/css/documentation.css
@@ -898,6 +898,16 @@ b, strong {
padding: 3px 6px;
font-size: 12px;
}
+.btn-not-real {
+ cursor: auto;
+ pointer-events: none;
+}
+.btn-advanced {
+ border: 2px solid #c9c46a;
+}
+.advanced, .btn-advanced { /* "advanced" options are highlighted in same color as button */
+ background-color: #fffcc0;
+}
.markdown-body .systemPageAdditionsLineType {
font-weight: bold;
diff --git a/html/documentation/explanations/SSL.html b/html/documentation/explanations/SSL.html
index bc64bb5f1..d793d8c7d 100644
--- a/html/documentation/explanations/SSL.html
+++ b/html/documentation/explanations/SSL.html
@@ -30,33 +30,193 @@
This is desirable (really, mandatory) when accessing the Pi from the Internet.
If your Pi is only available on a local network, SSL isn't needed.
+
+Requirements
+
+ - You must have Allsky working on your Pi prior to installing SSL.
+
- You must already have an Internet domain name for your Pi.
+ The instructions below use myallsky.com but
+ replace that with your domain name.
+
+
+
+
+Installing SSL requires that your Pi be accessible via the Internet and
+can be a huge security risk if not done correctly.
+
+Do not attempt unless you know what you are doing.
+The Allsky developers are not responsible for any loss or damages.
+
+There are additional steps you should take to secure your Pi that aren't
+described in these instructions.
+
+If you aren't familiar with the following you're probably not qualified to install SSL:
+
+ - installing a firewall and a VLAN
+
- obtaining an Internet domain name
+
+
+
+
+There are many ways to implement SSL;
+the instructions below use
+Let's Encrypt SSL
+which is popular and free software package.
+
+
+
+Software installation
+Install some software on your Pi
+(you can copy/paste these lines into a terminal window):
+
+apt-get update
+apt-get install software-properties-common
+add-apt-repository ppa:certbot/certbot
+apt-get update
+apt-get install certbot
+mkdir ~/allsky/config/ssl
+chmod 775 ~/allsky/config/ssl
+
+certbot certonly --webroot -w /config/ssl/myallsky.com -d myallsky.com
+
+
+
+The cerbot
command will prompt for your email and a couple other things.
+It will then create the SSL certificate and private key.
+Take note of the IMPORTANT NOTES that are displayed.
+
-Allsky on the Pi uses the lighttpd web server,
-so it needs to be configured to use SSL.
-This page
-describes how to configure and use Let's Encrypt SSL with lighttpd.
+Combine the certificate and private key into one file:
+
+sudo chmod 750 /etc/letsencrypt/live
+cd /etc/letsencrypt/live/myallsky.com
+cat cert.pem privkey.pem | sudo tee web.pem
+
-
-You may need to to change the permissions of /etc/letsencrypt/live
-in order to be able to read and write and complete the concatenation step.
-Execute sudo chmod 640 /etc/letsencrypt/live
.
+
+Web server configuration
+Configure the web server (called lighttpd to use SSL and redirects any
+"http" requests to your Pi with "https" requests.
+
+In your favorite text editor,
+create a file called 98-myallsky.com.conf
+containing the following lines:
+
+server.modules += ( "mod_openssl" )
+
+$SERVER["socket"] == ":443" {
+ ssl.engine = "enable"
+ ssl.pemfile = "/etc/letsencrypt/live/myallsky.com/web.pem" # Combined Certificate
+ ssl.ca-file = "/etc/letsencrypt/live/myallsky.com/chain.pem" # Root CA
+ server.name = "myallsky.com"
+
+ # Uncomment the next line if you want the web server to log access requests.
+ # accesslog.filename = "/var/log/lighttpd/myallsky.com_access.log"
+}
+
+$HTTP["scheme"] == "http" {
+ $HTTP["host"] == "myallsky.com" {
+ url.redirect = ("/.*" => "https://myallsky.com$0")
+ }
+}
+
+
+
+
+Install the file so the web server sees it:
+
+sudo install -m 0644 98-myallsky.com.conf /etc/lighttpd/conf-available
+cd /etc/lighttpd/conf-enabled
+sudo ln -s "../conf-available/98-myallsky.com.conf" .
+sudo systemctl restart lighttpd
+
+
+
+
+Test
+Try to access your Pi via
+http://myallsky.com
+and
+https://myallsky.com
.
+You should see the WebUI in both cases.
+
+
+
+Post-installation steps
+Let's Encrypt certificates are only valid for 90 days.
+You need to configure the Pi to renew your certificates before they expire
+(or do it manually).
+
+
+First, run this command to simulate automatic renewal of your certificate:
+
+certbot renew --dry-run
+
+
+You should see output similar to this:
+
+Saving debug log to /var/log/letsencrypt/letsencrypt.log
+-------------------------------------------------------------------------------
+Processing /etc/letsencrypt/renewal/myallsky.com.conf
+-------------------------------------------------------------------------------
+Cert not due for renewal, but simulating renewal for dry run
+Starting new HTTPS connection (1): acme-staging.api.letsencrypt.org
+Renewing an existing certificate
+Performing the following challenges:
+http-01 challenge for myallsky.com
+Waiting for verification...
+Cleaning up challenges
+-------------------------------------------------------------------------------
+new certificate deployed without reload, fullchain is
+/etc/letsencrypt/live/myallsky.com/fullchain.pem
+-------------------------------------------------------------------------------
+** DRY RUN: simulating 'certbot renew' close to cert expiry
+** (The test certificates below have not been saved.)
+Congratulations, all renewals succeeded. The following certs have been renewed:
+ /etc/letsencrypt/live/myallsky.com/fullchain.pem (success)
+** DRY RUN: simulating 'certbot renew' close to cert expiry
+** (The test certificates above have not been saved.)
+
+
+
+
+Prior the the certificates expiring, run:
+
+certbot renew
+cd /etc/letsencrypt/live/myallsky.com
+cat cert.pem privkey.pem | sudo tee web.pem
+
+
+You can renew your Let's Encrypt certificates at most
+30 days before they expire - two weeks prior to expiration is a good goal.
+
-Notes:
+
+Notes
-- The Pi runs a version of the Debian operating system.
-
- The lighttpd web server is already installed and running so you can skip
- the step to install it.
-
- The "document root" of the webserver is ~/allsky/html.
-
- When you are done, make a copy of the /etc/letsencrypt
- directory and store on something other than your Pi in case your Pi crashes.
+
- Your SSL-related files are stored in
+ ~/allsky/config/ssl and will be
+ preserved across Allsky upgrades.
+
- When you are done installing and testing SSL, make a copy of the following
+ and store on something other than your Pi in case your Pi crashes:
+
+ - /etc/letsencrypt directory
+
- ~/allsky/config/ssl directory
+
- /etc/lighttpd/conf-available/98-myallsky.com.conf
+
+Source of instructions
+These instruction were obtain from
+https://www.itzgeek.com
+and modified for Allsky use.
+
+