You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* Dev branch for STAC v2.1
Dev branch for STAC v2.1
* Add bin files
* Update NewFeatures.txt
* set data type of ERROR_REPOLL_TIME
Explicitly set ERROR_REPOLL_TIME #define as type UL
Additional info to Detailed Change Log
* Revise STAC.bin
Revise the STAC bin file to match current version of the .ino
* Update STACsuPages.h
Add script to ensure proper IP delimiter entery
* Update STAC .ino & .bin files
Update Update .ino & .bin files to reflect change to STACsuPages.h
* Update NewFeatures.txt
Correct typos & grammar
* Fix factory reset state
Would sometimes miss the Factory Reset state when button down on reset.Fixed in STACProvision.h
* Fix reset with button down modes
Fix intermittent fail to select a Factory Reset on power up or reset with the button down.
* GM release for final testing
* Include GM bin file
* Small code tweaks, all docs revised.
Final code tweaks in the user "GUI" areas. All docs revised for v2.1 where required.
* Tweaks to code and docs before release.
Drawing library speed improvements. Corrections to docs.
Copy file name to clipboardexpand all lines: Documentation/Creating the build number.md
+25-21
Original file line number
Diff line number
Diff line change
@@ -12,7 +12,7 @@ String swVer = "2.0 (1a2b3c)"; // version and (build number) of this software
12
12
13
13
The string of six characters between the brackets is the build number. (`1a2b3c` is an example build number.)
14
14
15
-
It is generated by doing an MD5 hash of all the contents of the `STAC` folder and using the last six characters of that hash for the build number.
15
+
It is generated by doing an MD5 hash of the `STAC.ino` file and the complete `STACLib` folder and using the last six characters of that hash for the build number.
16
16
17
17
The utility that creates the hash is `hashdir`. Found on GitHub at:
18
18
@@ -22,7 +22,6 @@ and installed using Homebrew by:
22
22
23
23
`brew install ultimateanu/software/hashdir`
24
24
25
-
26
25
To generate the build number, from Terminal run:
27
26
28
27
`hashdir -a md5 <folder>`
@@ -35,43 +34,48 @@ For example:
35
34
36
35
will produce something like:
37
36
38
-
`9c5d0c5114fab7a3f6b0770bd10bbefe /STAC`
37
+
`f8f6d813acb9f0eeab371f1a80bd380e /STAC`
39
38
40
-
In this example, `0bbefe` would be the build number for this version of STAC.
39
+
In this example, `bd380e` would be the build number for this version of STAC.
41
40
42
41
**BUT** before you generate the hash, first edit the line:
43
42
44
-
`String swVer = "2.0 (1a2b3c)"; // version and (build number) of this software. Shows up on the web config page, serial monitor startup data dump & is stored in NVS`
43
+
` String swVer = "2.0 (1a2b3c)"; // version and (build number) of this software. Shows up on the web config page, serial monitor startup data dump & is stored in NVS`
45
44
46
45
to remove the old build number so that it looks like this:
47
46
48
-
`String swVer = "2.0 ()"; // version and (build number) of this software. Shows up on the web config page, serial monitor startup data dump & is stored in NVS`
47
+
` String swVer = "2.0 ()"; // version and (build number) of this software. Shows up on the web config page, serial monitor startup data dump & is stored in NVS`
49
48
50
-
Then save the `STAC.ino` file and any other file that might be open from the `STACLib`foder.
49
+
Then save and close the `STAC.ino` file and any other file that might be open from the `STACLib`folder.
51
50
52
51
Now create and save the new build number:
53
52
54
-
1. Generate the hash
55
-
1. Copy the last six characters of the hash from the Terminal window - this is the new build number
56
-
1. Open the `STAC.ino` file
57
-
1. Paste the new build number in between the brackets on the line:
53
+
1. Create a folder that contains only the `STAC.ino` file and the `STACLib` folder.
54
+
1. Generate the hash of that folder.
55
+
2. Copy the last six characters of the hash from the Terminal window - this is the new build number.
56
+
3. Open the `STAC.ino` file.
57
+
4. Paste the new build number in between the brackets on the line:
58
58
59
-
```
60
-
String swVer = "2.0 ()"; // version and (build number) of this software. Shows up on the web config page, serial monitor startup data dump & is stored in NVS
61
-
```
59
+
```
60
+
String swVer = "2.0 ()"; // version and (build number) of this software.
61
+
Shows up on the web config page, serial monitor startup data dump & is
62
+
stored in NVS
63
+
```
62
64
63
65
so it now looks like:
64
66
65
-
```
66
-
String swVer = "2.0 (0bbefe)"; // version and (build number) of this software. Shows up on the web config page, serial monitor startup data dump & is stored in NVS
67
-
```
67
+
```
68
+
String swVer = "2.0 (1a2b3c)"; // version and (build number) of this software.
69
+
Shows up on the web config page, serial monitor startup data dump & is
70
+
stored in NVS
71
+
```
68
72
69
-
5. Save the STAC.ino file
70
-
6. Safe now to upload to the ATOM Matrix
73
+
5. Save the STAC.ino file.
74
+
6. Safe now to upload to the ATOM Matrix.
71
75
72
76
*Why delete the old build number before doing the hash?*
73
77
74
-
By making note of the existing build number in the `STAC.ino` file, deleting the build number and then generating the hash, a quick check can be made if this version of the `STAC.ino` file and its associated `STACLib` `.h` files are the same as a version running on an ATOM. Delete the existing build number from the `STAC.ino` file, generate the hash, look at and compare the last six digits of the hash to the build number reported by the serial data dump from the STAC. If they match, odds are strong you're good.
78
+
By making note of the existing build number in the `STAC.ino` file, deleting the build number and then generating the hash, a quick check can be made if this version of the `STAC.ino` file and its associated `STACLib/*.h` files are the same as a version running on an ATOM. Delete the existing build number from the `STAC.ino` file, generate the hash, look at and compare the last six digits of the hash to the build number reported by the serial data dump from the STAC. If they match, odds are strong you're good.
As described in the *STAC User's Guide*, STAC software starting with version 1.10 adds a Peripheral Mode of operation.
4
4
5
-
This note goes into what happens behind the scenes with the STAC running a version of software that implements Peripheral Mode: during startup; when operating as a peripheral; and also when in its normal operating state.
6
-
<br><br>
5
+
This note goes into what happens behind the scenes with the STAC running a version of software implementing Peripheral Mode: during startup; when operating as a peripheral; and also when in its normal operating state.
7
6
8
-
### Initiating Client Mode
7
+
### Initiating Peripheral Mode
9
8
10
9
A STAC is placed into Peripheral Mode by:
11
10
12
11
1. Placing a jumper wire between G22 and G33 on the ATOM rear header block.
13
-
1. Applying power either via its USB port or a cable connecting its GROVE port to the GROVE port of another STAC. Do one or the other, not both.
12
+
1. Applying power either via its USB port or a cable connecting its GROVE port to the GROVE port of another STAC. Do one or the other, never both.
14
13
15
14
When powered up or when reset, the STAC configures G22 as an output pin and G33 as an input pin (with weak pull down). It then toggles the state of G22 in a sequence and confirms that G33 follows. If G33 follows throughout the entire sequence, it is assumed the "Peripheral Mode jumper" is in place.
16
15
@@ -19,32 +18,61 @@ If G33 fails to follow G22 at any point during the sequence, the STAC assumes th
19
18
In either case G22 is then driven low.
20
19
21
20
After the STAC confirms the jumper is in place, it then configures G26 and G32 on its GROVE (HY2.0-4P) connector as input pins (with weak pull downs) and enters Peripheral Mode.
22
-
<br><br>
23
21
24
22
### Operation in Peripheral Mode
25
23
26
-
In Peripheral Mode, all normal operation state and features of the STAC are disabled. The STAC will not connect to a WiFi network and it will ignore any Tally Channel, Operating Mode and Startup Mode settings. The Display Brightness select feature remains enabled as does the orientation feature so the Brightness Select numbers are displayed right side to.
24
+
In Peripheral Mode, all normal operation state and features of the STAC are disabled. The STAC will not connect to a WiFi network and it will ignore any Tally Channel, Tally Display Mode and Startup Mode settings. The Display Brightness select feature remains enabled as does the orientation feature so the Brightness Select numbers are displayed right side to.
27
25
28
26
In Peripheral Mode, the STAC continually monitors the state of G26 and G32 on its GROVE port and uses the state of those inputs to determine the state of its tally display as per the table below.
Here's the cool part. This allows the opportunity for developers to use a STAC set in Peripheral Mode as a tally indicator driven by an external piece of gear. Simply connect a cable to the GROVE port, apply power and drive pins G26 and G32 as needed.
44
75
45
-
**Be aware that the ATOM Matrix GPIO pins use 3.3V logic levels and are not 5V tolerant.<br>Driving any GPIO pin beyond 3.3V will irreparably damage the device.**
46
-
<br><br>
47
-
48
76
### Normal State (Controller) Output Signals
49
77
50
78
Starting with software v1.10, a STAC running it its normal operating state (not in Peripheral Mode) also acts as a controller by outputting the current tally state of the video channel it is monitoring to its GROVE connector. Pins G26 and G32 on this port are set as per the table below.
@@ -76,17 +104,11 @@ This could allow the STAC to:
76
104
77
105
The "UNSELECTED" state is useful as it indicates normal operation and communication of the controller STAC with the Roland (or emulated) device being monitored even if that channel is not active in either PGM or PVW.
78
106
79
-
<<<<<<< HEAD
80
107
With proper cabling, multiple STACs operating in Peripheral Mode could be connected in parallel to a STAC operating in its normal state. No testing has been done to confirm how many STACs could be driven in this manner. Power supply would be an issue to consider as well.
81
-
=======
82
-
With proper cabling, multiple STACS operating in Peripheral Mode could be connected in parallel to a STAC operating in its normal state. No testing has been done to confirm how many STACs could be driven in this manner. Power supply would be an issue to consider as well.
83
-
>>>>>>> main
84
108
85
109
**Note**: Apply power to the STAC either via its USB port or via a cable connected to its GROVE connector. Do one or the other only, *never* both.
86
-
<br><br>
87
-
88
110
89
-
### Disabling Client Mode
111
+
### Disabling Peripheral Mode
90
112
91
113
To disable Peripheral Mode and return the STAC it to its normal operating state:
92
114
@@ -95,20 +117,18 @@ To disable Peripheral Mode and return the STAC it to its normal operating state:
95
117
1. Remove the Peripheral Mode jumper wire from the rear of the STAC.
96
118
1. Power up the STAC via its USB port.
97
119
98
-
<br>
99
-
100
120
### Notes
101
121
102
-
1.**Be aware that the ATOM Matrix GPIO pins use 3.3V logic levels and are not 5V tolerant.<br>Driving any GPIO pin beyond 3.3V will irreparably damage the device.**
122
+
1.**Be aware that the ATOM Matrix GPIO pins use 3.3V logic levels and are not 5V tolerant.**<br>Driving any GPIO pin beyond 3.3V will irreparably damage the device.
103
123
1. Apply power to the STAC either via its USB port or through a cable connected to its GROVE connector. Do one or the other only, *never* both.
104
-
1. The serial data dump on power up or restart when in Peripheral Mode (see the *Using screen for STAC Information.md* document) will report that the STAC is in Peripheral Mode and the brightness level set.
124
+
1. The serial data dump on power up or restart when in Peripheral Mode (see the *Using screen for STAC Information.md* document) will report that the STAC is in Peripheral Mode and the brightness level and tally display mode set.
105
125
1. The *Peripheral Mode* section of the *User's Guide* provides more information on the GROVE cable.
106
-
<br><br>
107
126
108
127
---
109
128
110
129
### Document Revision History
111
130
131
+
**2023-02-04:** Added info reflecting changes with software v2.1. Fix heading titles.<br>
Copy file name to clipboardexpand all lines: Documentation/Release Notes.md
+31-2
Original file line number
Diff line number
Diff line change
@@ -1,4 +1,33 @@
1
1
# STAC Release Notes
2
+
## v2.1
3
+
4
+
__New Features__
5
+
6
+
*_OTA Software Updates_
7
+
8
+
* After installing this version, it will be possible to update the STAC software over WiFi using a web browser. This is referred to as an *over the air* or OTA update. Details are in the the *STAC Users Guide*.
9
+
* As a result of this change, the STAC will need to be setup again after installing this version.
10
+
11
+
*_mDNS Support_
12
+
13
+
* The mDNS protocol is now supported when the STAC opens up a WiFi hotspot for setup or a software update by pointing a browser to `setup.local` and `update.local` respectively. More information in the *STAC Users Guide*.
14
+
15
+
*_Camera Operator Tally Display in Peripheral Mode_
16
+
17
+
* The Tally Display Mode when the STAC is in Peripheral Mode can now be set to either Camera Operator or Talent. More info in, you guessed it, the *STAC Users Guide*.
18
+
19
+
20
+
__Improvements__
21
+
22
+
* After doing a Factory Reset, the STAC will "park" and not reset itself which would then fire up a hotspot and wait for setup information.
23
+
24
+
* Revised the format of the information dump sent to the serial port on startup. The IP address assigned to the STAC is now shown as well.
25
+
26
+
* Added a bit more information about the STAC to the Setup browser page.
27
+
28
+
* Other internal kibbles and bits tweaked to speed things up—yada, yada...
29
+
30
+
2
31
## v2.0
3
32
4
33
__New Features__
@@ -28,9 +57,9 @@ __Improvements__
28
57
* No longer requires modified core or M5Stack libraries.
29
58
* But does require new libraries as per the `README.md` file.
30
59
31
-
* A new "*Detailed Change Log*" document intended for developers in the `Documentation` folder. It's the TLDR; version of this document.
60
+
* A new *"Detailed Change Log"* document intended for developers in the `Documentation` folder. It's the TLDR; version of this document.
32
61
33
-
* A new "*Creating the build number*" document intended for developers in the `Documentation` folder.
62
+
* A new *"Creating the build number"* document intended for developers in the `Documentation` folder.
0 commit comments