# Programming

Here you will find the details needed for develop your own firmware for the device

If you are interested in writing firmware for the VALTRACK-V4-VTS device, you will need to know where is each pin of MCU is connected to.

Since the schematics of the device is not yet openly available, We are providing the MCU pin connection details, which should be able to help you in determining how is the whole architecture laid out. Watching our device intro video would also help to get an overall idea on the hardware present on board.

### MCU Pinout Details

<table data-header-hidden><thead><tr><th width="129"></th><th width="181"></th><th width="135"></th><th></th></tr></thead><tbody><tr><td><strong>Pin Number</strong></td><td><strong>Pin Name</strong></td><td><strong>Net Name</strong></td><td><strong>Connected to</strong></td></tr><tr><td>1</td><td>VBAT</td><td>3VDC</td><td>3VDC</td></tr><tr><td>2</td><td>PC14-OSC32_IN</td><td>CLK_IN</td><td>32.768 KHz crystal</td></tr><tr><td>3</td><td>PC15-OSC32_OUT</td><td>CLK_OUT</td><td>32K.768 KHz crystal</td></tr><tr><td>4</td><td>PH3-BOOT0</td><td>BOOT0</td><td>BOOT0 pull down resistor</td></tr><tr><td>5</td><td>PB8</td><td>NET_LED_R</td><td>Network - RED LED - Cathode pin</td></tr><tr><td>6</td><td>PB9</td><td>NET_LED_G</td><td>Network - GREEN LED - Cathode pin</td></tr><tr><td>7</td><td>NRST</td><td>RESET</td><td><p>Debug connector MCU Reset lines via RC network</p><ul><li>J60 pin no 1</li><li>J56 pin no 6</li></ul></td></tr><tr><td>8</td><td>VDDA</td><td>3VDC</td><td>3VDC</td></tr><tr><td>9</td><td>PA0</td><td>SIM_PWRKEY_3V3</td><td><p>SIM7600x PWRKEY pin through N channel MOSFET.</p><ul><li>Making this pin HIGH pulls PWRKEY pin to GND</li></ul></td></tr><tr><td>10</td><td>PA1</td><td>DTR_3V3</td><td>SIM7600x DTR input pin through level translator.</td></tr><tr><td>11</td><td>PA2 / LPUART1_TX</td><td>LPUART1_TX</td><td>SIM7600x RXD input pin through level translator.</td></tr><tr><td>12</td><td>PA3 / LPUART1_RX</td><td>LPUART1_RX</td><td>SIM7600x TXD output pin through level translator.</td></tr><tr><td>13</td><td>PA4</td><td>ANALOG_IN</td><td><p>VCHG input through voltage divider resistor network.</p><ul><li>R22,R33 govern the voltage at this pin.</li><li>Default values : R22 = 100K, R33 = 23.7K, effectively giving 2.87V for VCHG = 15V</li></ul></td></tr><tr><td>14</td><td>PA5</td><td>GEN_LED_B</td><td>Location - BLUE LED - Cathode pin</td></tr><tr><td>15</td><td>PA6</td><td>NET_LED_B</td><td>Network - BLUE LED - Cathode pin</td></tr><tr><td>16</td><td>PA7</td><td>BAT_LED_R</td><td>Battery - RED LED - Cathode pin</td></tr><tr><td>17</td><td>PA8</td><td>RELAY</td><td><p>RELAY MOSFET driver Gate Input</p><ul><li>Open drain driver with Drain pin of MOSFET exposed on a connector</li></ul></td></tr><tr><td>18</td><td>PA9 / USART1_TX</td><td>UART_TX1</td><td>SE868K3AL RX0 input pin</td></tr><tr><td>19</td><td>PB2</td><td>GEN_LED_G</td><td>Location - GREEN LED - Cathode pin</td></tr><tr><td>20</td><td>VDD</td><td>3VDC</td><td>3VDC</td></tr><tr><td>21</td><td>RF1</td><td>RF1</td><td>Bluetooth PCB antenna via matching network</td></tr><tr><td>22</td><td>VSSRF</td><td>GND</td><td>System Ground</td></tr><tr><td>23</td><td>VDDRF</td><td>3VDC</td><td>3VDC</td></tr><tr><td>24</td><td>OSC_OUT</td><td>OSC_OUT</td><td>32 MHz crystal</td></tr><tr><td>25</td><td>OSC_IN</td><td>OSC_IN</td><td>32 MHz crystal</td></tr><tr><td>26</td><td>AT0</td><td>ATO</td><td>Not connected</td></tr><tr><td>27</td><td>AT1</td><td>AT2</td><td>Not connected</td></tr><tr><td>28</td><td>PB0</td><td>INT1</td><td>INT1 interrupt output of LIS3DH Accelerometer</td></tr><tr><td>29</td><td>PB1</td><td>GPS_ENABLE</td><td><p>Enable input of power gating MOSFET for SE868K3AL GNSS module</p><ul><li>Making this pin high provides 3VDC to SE868KAL module</li></ul></td></tr><tr><td>30</td><td>PE4</td><td>RELAY1</td><td>Not connected</td></tr><tr><td>31</td><td>VFBSMPS</td><td>VFBSMPS</td><td>3VDC</td></tr><tr><td>32</td><td>VSSSMPS</td><td>GND</td><td>System Ground</td></tr><tr><td>33</td><td>VLXSMPS</td><td>VLXSMPS</td><td>3VDC</td></tr><tr><td>34</td><td>VDDSMPS</td><td>VDDSMPS</td><td>3VDC</td></tr><tr><td>35</td><td>VDD</td><td>3VDC</td><td>3VDC</td></tr><tr><td>36</td><td>PA10 / USART1_RX</td><td>UART1_RX1</td><td>SE868K3AL TX0 output pin</td></tr><tr><td>37</td><td>PA11</td><td>GSM_ENABLE</td><td><p>Enable input of power gating MOSFET for SIM7600x LTE module</p><ul><li>Making this pin high provides ~4VDC to SIM7600x module</li></ul></td></tr><tr><td>38</td><td>PA12</td><td>GEN_LED_R</td><td>Location - RED LED - Cathode pin</td></tr><tr><td>39</td><td>PA13 / JTMS_SWDIO</td><td>SWDIO</td><td><p>Debug connector SWDIO lines</p><ul><li>J60 pin no 3</li><li>J56 pin no 8</li></ul></td></tr><tr><td>40</td><td>VDDUSB</td><td>VDDUSB</td><td>3VDC</td></tr><tr><td>41</td><td>PA14 / JTMS_SWCLK</td><td>SWCLK</td><td><p>Debug connector SWDIO lines</p><ul><li>J60 pin no 2</li><li>J56 pin no 7</li></ul></td></tr><tr><td>42</td><td>PA15</td><td>SOS</td><td><p>Tactile switch input</p><ul><li>Pulled up, filtered and Active LOW</li></ul></td></tr><tr><td>43</td><td>PB3</td><td>BAT_LED_B</td><td>Battery - BLUE LED - Cathode pin</td></tr><tr><td>44</td><td>PB4</td><td>TPS_ENABLE</td><td><p>Enable input of switching regulator TPS54240</p><ul><li>Making this pin high powers the system via VCHG connector.</li></ul><p>Not connected by default as it will cause system into reset loop if no alternate backup battery power available</p></td></tr><tr><td>45</td><td>PB5</td><td>BAT_LED_G</td><td>Battery - BLUE LED - Cathode pin</td></tr><tr><td>46</td><td>PB6 / I2C1_SCL</td><td>IIC_CLK</td><td>I2C clock of LIS3DH Accelerometer and M24M01 EEPROM</td></tr><tr><td>47</td><td>PB7 / I2C1_SDA</td><td>IIC_DATA</td><td>I2C data of LIS3DH Accelerometer and M24M01 EEPROM</td></tr><tr><td>48</td><td>VDD</td><td>3VDC</td><td>3VDC</td></tr></tbody></table>

### J60 - MCU Debug Connector \[SMT pads] - Pinout Details

<table data-header-hidden><thead><tr><th width="122.33333333333331"></th><th></th><th></th></tr></thead><tbody><tr><td><strong>Pin Number</strong></td><td><strong>Pin Name</strong></td><td><strong>Connected to</strong></td></tr><tr><td>1</td><td>RESET</td><td>MCU Reset pin</td></tr><tr><td>2</td><td>SWCLK</td><td>MCU SWCLK pin</td></tr><tr><td>3</td><td>SWDIO</td><td>MCU SWDIO pin</td></tr><tr><td>4</td><td>GND</td><td>System Ground</td></tr><tr><td>5</td><td>VCC</td><td>3VDC</td></tr></tbody></table>

### J56 - Flex Debug Connector \[0.5mm 10 pin FFC] - Pinout Details

| **Pin Number** | **Pin Name**   | **Connected to**                                                      |
| -------------- | -------------- | --------------------------------------------------------------------- |
| 1              | SIM\_USB\_DN   | SIM7600x USB\_DN pin                                                  |
| 2              | SIM\_USB\_DP   | SIM7600x USB\_DP pin                                                  |
| 3              | SIM\_USB\_VBUS | SIM7600x USB\_VBUS pin                                                |
| 4              | UART\_RX1      | <ul><li>SE868K3AL TX0 output pin</li><li>MCU USART1\_RX pin</li></ul> |
| 5              | UART\_TX1      | <ul><li>SE868K3AL RX0 input pin</li><li>MCU USART1\_TX pin</li></ul>  |
| 6              | RESET          | MCU Reset pin                                                         |
| 7              | SWCLK          | MCU SWCLK pin                                                         |
| 8              | SWDIO          | MCU SWDIO pin                                                         |
| 9              | GND            | System Ground                                                         |
| 10             | VCC            | 3VDC                                                                  |

### J57 - SIM7600x USB Connector \[SMT pads] - Pinout Details

| **Pin Number** | **Pin Name**   | **Connected to**                                                      |
| -------------- | -------------- | --------------------------------------------------------------------- |
| 1              | SIM\_USB\_DN   | SIM7600x USB\_DN pin                                                  |
| 2              | SIM\_USB\_DP   | SIM7600x USB\_DP pin                                                  |
| 3              | SIM\_USB\_VBUS | SIM7600x USB\_VBUS pin                                                |
| 4              | UART\_RX1      | <ul><li>SE868K3AL TX0 output pin</li><li>MCU USART1\_RX pin</li></ul> |
| 5              | UART\_TX1      | <ul><li>SE868K3AL RX0 input pin</li><li>MCU USART1\_TX pin</li></ul>  |

### J62 - VCHG Connector \[SMT pads] - Pinout Details

| **Pin Number** | **Pin Name** | **Connected to**                                                                         |
| -------------- | ------------ | ---------------------------------------------------------------------------------------- |
| 1              | VCHG         | <p>VCHG input of system through FUSE and diode</p><ul><li>12VDC to 42VDC input</li></ul> |
| 2              | GND          | System Ground                                                                            |

### J41 - VBAT Connector \[SMT pads] - Pinout Details

| **Pin Number** | **Pin Name** | **Connected to**                                                                                |
| -------------- | ------------ | ----------------------------------------------------------------------------------------------- |
| 1              | VBAT         | <p>VBAT input of system or Backup battery input</p><ul><li>3.7V to 4.2V battery input</li></ul> |
| 2              | GND          | System Ground                                                                                   |
