SHIP Version 5

From Serious Documentation
Jump to: navigation, search

SHIP Version 5 (SHIPv5) is currently in beta, and scheduled for production release early Q3'14 and includes many new capabilities:

  • Over-the-wire updates (SPI/UART/USB) via built-in bootloader
  • Major communications enhancements, including the SHIPBridge Protocol with firmware updates and data movement over USB/SPI/UART
  • Larger font support and enhanced text placement with "textframe" objects
  • Language translation manager, including MS Excel translation import/export
  • Build configuration manager for single project/multiple output
  • Improved scripting performance, floating point support, and numerous new functions
  • Runtime drawing on "canvas" objects

The SHIPBridge Protocol

SHIP Version 4 had various Modbus protocols included for basic data exchange between the host and the SIM. This protocol was available over SPI and USB. A proprietary protocol over USB enabled updating of the GUI Cargo from SHIPTide, but engine updates had to be performed in various platform-specific ways, sometimes involving a JTAG programmer.

The SHIPBridge Protocol, included in SHIP Version 5 (SHIPv5), is a new protocol developed by Serious for communications between the SIM and attached host. It has the following key features:

  • Light, efficient protocol
  • Can run over USB, UART, SPI, and in the future, TCP/IP
  • Remote file access over-the-wire without a file system stack on the host
  • Firmware, cargo, and boot loader updates over-the-wire
  • Rich data type exchange over-the-wire
  • No cost, portable reference source code to be published for the "host" side

The SHIPv5 Boot System and Over-the-Wire Updates

Starting in SHIPv5 all SIMs and SCMs now have a multi-stage boot loader process. This enables the modules's firmware and data to be upgraded in "offline" mode (when the GUI or application is not running) or, in some cases, in "online" mode in the background while the GUI/application is still operating.

The bootloader has three elements/phases:SHIPPaddle, SHIPTug and the application (SHIPEngine in the case of HMI modules).