SDC Version 1.40 Release notes

Version 1.40 Enhancements

TinySDC

  • This release includes support for the Forthcoming TinySDC product, which is a 1.28” Round LCD display that fits inside a 52mm gauge pod. All existing pagesets and gauge types can be displayed on this screen, and the existing tools application is used to design screens for it. It has a resolution of 240x240 pixels, and uses 16 bit colour (65,000+ colours). The software supports alpha blending for this display (same as for HDMI screens), and all images used should be designed in ARGB-8888 as they would be for HDMI screens.

TinySDC will appear on the web store soon!

Rotary Encoders

  • The rotary encoder configuration, which was previously stored in the SDC.INI file, has now been moved to the pages configuration. This means that instead of being the same across all page sets, the encoder configuration can be specific to the designed page set. The SDC Tools application can now manage the encoder configuration. Any existing ini file configuration is now ignored, but can be imported into your pageset using the Encoder Modes dialog in SDC tools.

  • As part of the changes to rotary encoder configuration, the number of encoder modes allowed is now up to 255, whereas previously there was a limit of 3 in the ini file configuration.

  • It is now possible to use a rotary encoder connected to one canbus node to control a different canbus node. There are two ways to do this:

    1. Specifying a target Device ID in the encoder configuration of the device that has the rotary encoder connected. This method permanently targets the encoder towards the remote device.
    2. Specifying encodertargetdevice=<deviceid> as a touch action. This enables one device to control multiple targets if needed. If the target device is changed, the local device will take ownership of the encoder again if it is not operated over a timeout period (currently 5 seconds).

You must configure the encoder settings on the target device and ensure all SDC Device IDs on the canbus are unique and non-zero, and that the target device has an enabled=0 entry in its SDC.ini file.

  • It is also possible to use a rotary encoder to remotely control the brightness of the TinySDC device. See the Tiny SDC Ini File section for further details.

PWM Outputs

  • It is now possible to generate PWM outputs based on any attribute (e.g. RPM). There are 2 PWM channels whose availability is tied to specific output pins (due to hardware limitations). The availability of these channels and pins is dependent on which other SDC features you are using. For full details, See the PWM configuration section

Supporting touch actions

  • Two touch actions have been added which enable the currently dislayed page number to be stored, and then the displayed page to be changed back to the stored page number. These are STOREPAGE and RESTOREPAGE. As an example, these actions can be used to implement a menu page that returns to the previously displayed page without hard coding a page number to return to.
  • An ENCODERTARGETDEVICE= touch action has been added to allow the target of the local rotary encoder to be temporarily changed to a different device on the CANBus.

Other

  • The static string gauge now recognises the IsAlwaysOnTop property. When set to always on top a static string gauge is drawn every frame, and therefore it is drawn according to the Z order settings (either gauge position in the list, or Z order value). An example of its use is to place a static string on top of a filled always on top rectangle as part of a chart key or other label.

  • Some improvements have been made to the multi-screen boot synchronisation so that the device that takes longest to boot does not have to be nominated as the master.

  • A new display type parameter SDCDISPLAYTYPE= has been added to the cmdline.txt file in the \kernel folder. This is used to specify specific screen types:

    • HDMI (HDMI)
    • PI Official (PIOFFICIAL)
    • TinySDC 1.28” Round LCD (TINYSDC)

If not specified, the default is HDMI, so this parameter does not need to be set for most installations. If you purchase a pre-built product, the software will be shipped configured with the correct setting.

  • The scale of brightness control has been changed from 0-1000 to 0-255. This includes the environment brightness (0 = dark, 255=full bright).

  • It is now possible for software updates to include compressed files which will be expanded by SDC. In particular, this enables the on-device help to be updated as part of an upgrade.

Version 1.40 Fixes

  • SDC waits for a properly formed IP address to be assigned before allowing certain functions to execute. Previously, in some rare circumstances, network related features might begin executing before the WiFi connection was fully completed.

  • If for some reason the master-slave boot synchronisation feature fails, the slaves will continue if they have not received the go-ahead after waiting for more than 20 seconds. This prevents the slaves from appearing to lock up when in fact they are executing but just not displaying any pages other than the boot screen.

  • Some deprecated code has been removed. This is mostly unwanted logging entries.

SDC Tools Version 1.40 Fixes and Enhancements

  • SDC Tools will now launch a Putty console session without requiring any configuration if you have Putty installed on your desktop and you double click an SDC IP address in the device list.

  • The ‘do action’ button on the screen editor, which excecutes the touch action when the currently selected gauge is a Touch Gauge, is now kept enabled after it has been pressed in order to allow multiple rapid successive presses.

  • Support for encoder modes configuration has been included (see the main release notes above).

  • It is now possible for software updates to include compressed files which will be expanded by SDC. In particular, this enables the on-device help to be updated as part of an upgrade.

  • A pick list has been added to the Justification property

  • A pick list has been added to all Boolean properties

Upgrading from 1.33

To perform an upgrade from 1.33 you can download the upgrade zip file, extract it to a temporary folder, and use the SDC Tools ‘Software Update’ feature.

SDC 1.40 now has a minimum requirement of SDC Tools version 1.40 and thus an upgrade of the tools is mandatory when upgrading to SDC 1.40.

To perform the upgrade, start with SDC Tools version 1.30 and use it to upgrade SDC on your device to version 1.40. Once your device is running SDC 1.40 you will not be able to connect SDC Tools 1.30 to it. Therefore you must now install version 1.40 of SDC tools and you should now be able to connect the tools to your device again.

Due to the changes to rotary encoder configuration, if you are using a rotary encoder you will need to import its settings into your pageset. To achieve this, use the following steps:

  1. Start SDC tools and connect to your device
  2. Open the Screen Designer
  3. At the bottom right of the window, press the “Encoder Modes…” button
  4. The window that opens will contain an empty grid. Press the “Import from INI File” button.
  5. When the import has completed, close the dialog and the encoder modes window.
  6. Save the pageset using the “Save on SDC As…” button at the top of the screen designer window.

Note that the import feature will not allow you to overwrite any encoder modes already in the pageset.