<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<PROGRAMMER NAME="Raspberry Pi SSH Uploader" ID="RPISSH" PATH="RTP" VERSION="1.0" AVAILABILITY="Internal" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../schema/programmer.xsd">
  <TOOL NAME="SSHRTP" FILE="sshrtp.exe">
    <OPTION NAME="-H " DESC="&lt;host&gt;             Connect to device with name or ip &lt;host&gt;." PARAM="STRING"/>
    <OPTION NAME="-N " DESC="&lt;username&gt;         User name is &lt;username&gt;." PARAM="STRING"/>
    <OPTION NAME="-P " DESC="&lt;password&gt;         Password is &lt;password&gt;." PARAM="STRING"/>
    <OPTION NAME="-U " DESC="&lt;remote&gt; &lt;local&gt;   Upload file &lt;local&gt; to &lt;remote&gt; path." PARAM="STRING" MULTIPLE="1"/>
    <OPTION NAME="-D " DESC="&lt;remote&gt; &lt;local&gt;   Download file from &lt;remote&gt; path to &lt;local&gt;." PARAM="STRING" MULTIPLE="1"/>
    <OPTION NAME="-X " DESC="&lt;file&gt;             Execute remote file." PARAM="STRING" MULTIPLE="1"/>
    <OPTION NAME="-C " DESC="&lt;path&gt;             Change working directory." PARAM="STRING" MULTIPLE="1"/>
    <OPTION NAME="-G" DESC="Check board configuration, apply fixes if required."/>
    <OPTION NAME="-T" DESC="Enable trace output." ADVANCED="1"/>
    <OPTION NAME="-Q" DESC="Quiet (no messages)." ADVANCED="1"/>
  </TOOL>
  <FAMILY NAME="Raspberry Pi">
    <CONTROLLER NAME="RPI0" DEVICE="RPI0"/>
    <CONTROLLER NAME="RPI3" DEVICE="RPI3"/>
    <CONTROLLER NAME="RPI4" DEVICE="RPI4"/>
  </FAMILY>
  <INTERFACE NAME="Raspberry Pi">
    <PROPERTY NAME="HOST" DESC="Host" TYPE="_ssh._tcp."/>
    <PROPERTY NAME="USERNAME" DESC="User Name" VALUE="pi"/>
    <PROPERTY NAME="PASSWORD" DESC="Password" VALUE="raspberry"/>
    <PROPERTY NAME="TARGET_PATH" DESC="Target Path" VALUE="/vsm"/>
    <OPTION NAME="-H " VALUE="%HOST%"/>
    <OPTION NAME="-N " VALUE="%USERNAME%"/>
    <OPTION NAME="-P " VALUE="%PASSWORD%"/>
  </INTERFACE>
  <FILE TYPE="PYZ" DESC="Python Archive"/>
  <FILE TYPE="DAT" DESC="Resource File List"/>
  <PROCESS TOOL="SSHRTP" NAME="Upload Resources" ID="UPLOAD" CMDLINE="%OPTIONS%">
      <OPTION NAME="-C " VALUE="&quot;%TARGET_PATH%&quot;"/>
      <OPTION NAME="-U " VALUE="&quot;@%INFILE%&quot;"/>
  </PROCESS>
  <PROCESS TOOL="SSHRTP" NAME="Upload Program" ID="PROGRAM" CMDLINE="%OPTIONS%">
      <OPTION NAME="-X " VALUE="&quot;sudo service iotbuilder stop&quot;"/>
      <OPTION NAME="-X " VALUE="&quot;sudo mkdir -p %TARGET_PATH%&quot;"/>
      <OPTION NAME="-X " VALUE="&quot;sudo chown pi:pi %TARGET_PATH%&quot;"/>
      <OPTION NAME="-C " VALUE="&quot;%TARGET_PATH%&quot;"/>
      <OPTION NAME="-U " VALUE="&quot;%INFILE%&quot; %INFILE_NAME%"/>
      <OPTION NAME="-X " VALUE="&quot;sudo rm -rf ./work&quot;"/>
      <OPTION NAME="-X " VALUE="&quot;mkdir work&quot;"/>
      <OPTION NAME="-X " VALUE="&quot;unzip %INFILE_NAME% -d work&quot;"/>
      <OPTION NAME="-C " VALUE="&quot;%TARGET_PATH%&quot;"/>
      <OPTION NAME="-X " VALUE="&quot;sudo service iotbuilder start&quot;"/>
  </PROCESS>
  <PROCESS TOOL="SSHRTP" NAME="Check Configuration" ID="CHECK" CMDLINE="%OPTIONS%">
      <OPTION NAME="-X " VALUE="&quot;/boot/configure.sh check&quot;"/>
  </PROCESS>
  <PROCESS TOOL="SSHRTP" NAME="Configure" ID="CONFIGURE" CMDLINE="%OPTIONS%">
      <OPTION NAME="-X " VALUE="&quot;sudo /boot/configure.sh&quot;"/>
  </PROCESS>
</PROGRAMMER>
