Software upgrade via BarnStudio
===============================

We recommend to upgrade BarnStudio to latest version before upgrading the
firmware on the BarnOne device.

First you need to download the firmware upgrade package from our web server.
Then extract the autorun.gpg from the .zip file. In BarnStudio, open the Tab
named "Firmware Upload" and press the button named "Upload file". Browse the
autorun.gpg and select "Open". From this point, everything should go
autoamtically.


Software upgrade via USB
========================

We recommend to upgrade BarnStudio to latest version before upgrading the
firmware on the BarnOne device.

First you need to download the firmware upgrade package from our web server.
Then extract the autorun.gpg from the .zip file and copy this file onto a USB
flash storage device. This file must be named "autorun.gpg" (lower case).

For diagnostics you can optionally connect a HDMI monitor to the HDMI output at
the rear of the BarnOne device and keyboard into one of the USB port. If screen
is blank, press any key to wake the display up from sleep.

Insert the USB flash storage containing "autorun.gpg" into a USB port on the
BarnOne device. In the next 10-20 seconds, the BarnOne device will copy the
autorun.gpg and verify its content against a cryptographical key. If this goes
okey, the software upgrade will start. The LED lights will start to blink in a
special pattern to show that it is performing the software upgrade. The USB
flash storage should now be removed. If the USB flash storage is present after
software upgrade is complete, the BarnOne device might start to copy the
autorun.gpg file and perform the software upgrade again. When the LED lights
stop blinking, the software upgrade is complete and device will return to
normal operation.

It is estimated that the software upgrade normally takes about 5 minutes if all
of the software components are to be upgraded.

(If the users are locked out from the telnet/web authenatication, please
execute the autorun.gpg file found inside barnone-passwordreset.zip. That will
restore the admin user with a blank password)

Changes since v2023-03-12-1.2.4
===============================
* Loading network configuration settings stored with 0.x.x firmware could fail
  validation, causing DHCP and StateLess to be selected as IPv4 and IPv6 sources.

Changes since v2023-03-12-1.2.3
===============================
* Ensure that ntpclient binary is installed
* Speed up the boot process

Changes since v2023-01-09-1.1.1
===============================
* Use a different internal clock for timekeeping that is not affected by
  ntp/rdate clock adjustments. This was causing problems for the watchdog.
* Update BlackMagic control protocol:
  * VIDEO OUTPUT LOCKS - multiple locks in the same command would usually fail.
  * Extra empty lines between commands would cause the next command to fail.
* BTF1-xx 3G generation was unable to store analyzer mode "SDI (ignore EDH)".
* Internal services (BlackMagic, openGear, SNMP and SW-P-08) were unable to
  persistant save/restore enabled status.
* If a IPv4 was not configured with a IP yet, some of the multicast packages
  sent on IPv4 could be one byte too big.

Changes since v2022-05-31-1.0.6
===============================
* Watchdog now requires essential components to ping back
* The Matrix can now be locked down to read-only to prevent accidental changes
* A bug that caused Ember+ stop responding has been fixed
* httpd responsons now contain DOCTYPE, avoids text sporadic appearing in black.
* Sometimes the device would use 1-2 minutes extra during bootup, this has now been fixed
* Operating system updates

Changes since v2021-09-08-0.5.10
===============================
* base-system has a major update - expect upgrade to take longer time than usual,
  and to drop connection for several minutes.
* Add support 802.1x authentication on Telnet
* Add support for NTP servers
* Add support for Hostname (used by dhclient)
* Make it possible to disable snmpd
* Changing BNC directions dit not work as expected using openGear and SW-P-08

Changes since v2021-08-19-0.5.9
===============================
* BlackMagic control protocol was unable to reliably set multiple changes
  within the same "VIDEO OUTPUT ROUTING:" request.
* Emulate RX-LOS for SFPs that does not have this information in DDM, and
  were no HW-LOS is available.
* Do not allow to downgrade the last admin user in the AuthDB.

Changes since v2021-05-18-0.5.8
===============================
* Add "oneshot" and "toggle" support for BTF1-41 GPO ports

Changes since v2021-02-16-0.5.5
===============================
* Add TSL-Tally-Client
* BTF1-41 had incorrect Hardware LOS indications for the SFP daughter board
* GBase-CU was dropping the SFP diagnostics, functionality is now restored.
* Minor tweaks on the SMPTE-352 detection on the BTF1-xx 3G series

Changes since v2020-08-26-0.5.4
===============================
* Some SFPs needed special handling in order to read out correctly every time

Changes since v2020-07-22-0.5.2
===============================
* Make it possible to disable EDH in SD-SDI signal analyzer
* Add support for reporting uptime
* SD-SDI analyzer often gave blank resolution
* SD-SDI analyzer can now ignore EDH errors

Changes since v2020-07-16-0.5.0
===============================
* Loading BTF-41 setting files in BarnStudio causes firmware to restart

Changes since v2020-04-01-0.4.8
===============================
* Support for listing and enable/disable remote control protocols.

Changes since v2020-03-25-0.4.7
===============================
* Embrionix EB22 family SFP fix (writing of settings does not work yet)

Changes since v2019-04-09-0.4.6
===============================
* barnone-emberplus (0.1.5 => 0.1.7)
  * Implement de.l-s-b.emberplus.identity
  * KeepAlive did not work as expected
  * BTF1-10AA: AudioMatrix should support GlowConnectionOperation_Connect
  * MainMatrix should use GlowMatrixType_OneToN (it supports both 0 and 1 source)
* BTF1-41 updates
  * Support for SFP16 daughter board
  * SFP LOS status could go out of sync
* SFP support updates
  * Add support for Embrionix EB12HDRT-MMR
  * Add support for Embrionix EB30CSRT-AM2 and EB30HDRT-AM2
  * Add support for BT-BNC-12G SFP
  * Initial support for Embrionix EB22 family SFP (writing of settings does not work yet)
* BTF1-xx updates:
  * Initial support for TSL Tally Server

Changes since v2019-03-15-0.4.4
===============================
* BTF1-41 updates
* BTF1-xx / BTF1-41 updates:
  * Do not attempt to forward internal debug diagnostics into openGear (causes assert() and service restart)

Changes since v2019-01-18-0.4.3
===============================
* BTF1-41 support
* Do not allow to delete the last admin user in the AuthDB
* OpenGear SFP boolean parameters refreshed VERY slow after write (TXDISABLE
  for instance)
* SFP-GBase-CU: LOS parameter simulation was inverted
* WEB: SFP boolean diagnostics that are not writeable was keyworded with
  "readonly" in HTML, but does not seem to be correct, use "disabled"
  keyword instead.

Changes since v2018-12-20-0.4.2
===============================
* Signal Analyzer has been redesigned to use ST-352 payload ID
* Web-Interface now reports reclocker status

Changes since v2018-04-24-0.3.7
===============================
* Disable HDMI sleep
* BTF1-10-AA firmware (bypass UBit data)
* Update SFP communication
* Add support for Ember+
* Blink activity LED on commands from telnet/web/ember+ traffic aswell

Changes since v2018-04-24-0.3.6
===============================
* Updating firmware, control software was sometimes unable to reconnect without
  a power-cycle.

Changes since v2017-12-06-0.3.5
===============================
* Update of BTF1-10-AA-MADI firmware
* Use a better configuration method to achieve 10/100/1000M link speed with
  BTSFP-Gbase-CU SFPs. Old method caused the link to be half-duplex in one
  direction if the link speed was forced in one end of the link; and some
  network switches would also reject to link.

Changes since v2017-12-06-0.3.4 
===============================
* A missing dependency caused openGear autodetection to not function
* SW-P-08 updates

Changes since v2017-11-30-0.3.3
===============================
* Network manager log file could grow bigger than the telnet driver buffer-size,
  making it impossible to connect to the frame using telnet driver and web. SNMP
  and openGear protocols are not affected. Power cycle does temporary recover if
  this happens.

Changes since v2017-06-14-0.2.11
================================
* New version of barnone-snmpd (0.4.14 => 0.5.2)
 * Support for AA-MADI
 * SNMP write fixups
 * Ignore IAC triples on Telnet protocol (easier to connect using standard terminal clients)
 * OpenGear now shows logo
 * Detect OM4 fiber length support in SFP modules
 * Correct capitalization of dBm
* Audo-detection of frames inside DashBoard
* New version of barnone-httpd (0.1.4)
 * Dark theme, matches BarnStudio

Changes since v2016-10-26-0.2.9
===============================
* Support for new revision of the main-controller
* Support for control of the Logo-LED in the new mechanics (green frames)
* Minor update of the automatic changeover (Sensitive to analyzer lock)

Changes since v2015-12-03-0.2.4
===============================
* Initial support for HTTP
* Initial support for telnet
* SW-P-08 can not change BNC direction by using Level/Matrix number 1
* Recognize Embrionix EB30HDRT-MM SFP modules
* Automatic change-over support
* SDI analyzer: At 3G speed, ignore "VideoStandard" faults
* SNMP string write requests could sometimes randomly fail

Changes since v2015-06-02-0.2.3
===============================
* Initial support for BlackMagic panels
* Try to detect the M parameter on SDI analyzer (59.94 etc framerates)
* Fixed SFP diagnostics values in openGear. They were not scaled properly
* SW-P-08 no longer automatic change BNC direction on matrix changes
* If upgraded from USB, a power-cycle sometimes was required (software crash reading temporary log file)

Changes since v2014-10-16-0.2.2
===============================
* SNMP Traps are now accumulated into 50ms timeslots (less traffic)
* Retrieval of SFP information are no longer slow
* Added support for Embrionix EB30HDRT-AM and EB30CSRT-AM
* openGear did not work if more than one client was connected simultaneously
* Diagnostics now show FPS on Reference Sync
* Reference Sync time-out was too low, causing matrix switches to behave as no sync was selected
* SW-P-08 labels now works as expected

Changes since v2014-10-08-0.2.1
===============================
* A hang bug in the upgrade process was fixed. (Upgrading from v2014-10-08-0.2.1 might require reboot)
* openGear implementation did not send changes on the BNC card to the correct OID.
* SDI analyzer added. Works in openGear already. Next version of BarnStudio will include support for this

Changes since v2014-05-21-0.1.7
===============================
* Initial support for openGear protocol
* Initial support for SFP with externally calibrated diagnostics data
* It is now possible to see the currentely installed software versions of Barnfind packages in the firmware upgrade dialog
* Recognize more RJ45 Ethernet SFPs
* Bugfix: SW-P-08 disconnected if more than one client was connected
* Bugfix: Some SNMP-traps had wrong OIDs in them

Changes since v2014-04-29-0.1.7
===============================
* Upgrade was not always performed, due to missing files in the upgrade image

Changes since v2014-04-29-0.1.7
===============================
* Upgrade was not always performed, due to missing files in the upgrade image

Changes since v2014-04-24-0.1.7
===============================
* Network manager now makes sure that DHCP shutdown releases IP addresses
* Initial support for SW-P-08 protocol (port 1096)
* Initial support for Ethernet RJ45 SFP modules
* Writing SFP parameters could cause pauses in communication

Changes since initial version:
==============================
 * Network manager could freeze on netmask not dividable by 8
 * Added watchdog on critical services, restarting them if they have stopped
 * New version of Linux kernel, driver pack and net-snmp library
 * Allow to store \ in port names (used by new version of BarnStudio to make groups)
 * Initial support for SNMP traps
 * Display SFP RX/TX power in both milliwatt and dbM when possible
 * Bootup self test diagnostics now visible in diagnostics (in BarnStudio)
 * IP adress can now be configured/monitored via SNMP
 * More diagnostics from Embrionix HDMI SFP modules
