Download Print this page

Advertisement

Quick Links

iND83405 Quick Start User
Guide
ENG-6114
1

Advertisement

loading

Summary of Contents for indie iND83405

  • Page 1 Quick Start User Guide ENG-6114...
  • Page 2 Quick Start User Guide Introduction iND83405 is a high-reliability general-purpose microcontroller based on ARM Cortex M4 CPU running up to 112MHz with a generous 2MB of embedded Flash memory and 256kB of SRAM. Thirty-one low-voltage 3.3V GPIO can be controlled with software or hardware mode using internal UART, SPI, I2C or CAN controllers.
  • Page 3 Set Up the PC Tools Virtual Unix Environment GNU Compiler GNU Make Segger J-Link Setup Install J-Link Support Files For iND83405 PuTTY Setup Additional Application Development Tool Support Building the Applications Using Make About the Make command and the Makefile Rev 1.0 | Page 3...
  • Page 4 ENG-6114 iND83405 Quick Start User Guide Using make to Build the Applications Programming the Controller Test the J-Link Connection Program the Board Using Make Using make to Build and Program the Applications Using make to Clean the Build Directories Programming the Board from the J-Link Prompt...
  • Page 5: About This Guide

    Quick Start User Guide About this Guide Follow this guide to set up a basic application development suite for the iND83405 and walk through a series of demonstrations. The demonstrations are designed to give the user an overview of the product and create a jumping off point for the development of new applications.
  • Page 6 ENG-6114 iND83405 Quick Start User Guide HiLetGo UART-to-USB board Cables A USB cable is required to connect port 1 (P1) to the PC to provide power to the board, if that mode of power has been chosen. Unbox the Hardware...
  • Page 7 ENG-6114 iND83405 Quick Start User Guide Connectors USB B connector. Connect to PC to provide 5V to power the board. Port to connect the external UART-USB bridge. 20-pin J-Link connector. Jumpers JP1: Choose between powering the board with the P1 input or from the J-Link connector. Pins 2-3 are jumpered to power the board via P1 and 1-2 are jumpered to power the board via the J-Link connector.
  • Page 8: Powering The Board

    ENG-6114 iND83405 Quick Start User Guide Powering the Board Use the following guidelines when powering the board. Consult the schematic to relate the silk screen labels on the J1 and J2 headers to pins on the chip. When using A1-A15, the AGPIO pins, 8V-16V (nominal 12V) power must be supplied to the P12V_IN pin which is pin 29 on the J1 connector.
  • Page 9 ENG-6114 iND83405 Quick Start User Guide Download and Unbox the SDK SDK Download The SDK is distributed via a private git repo: https://gitlab.com/indie-public/ind83405-sdk Once logged in, you can download the latest version of the software source code by clicking the download button in the gitlab website as shown in this screen shot: Rev 1.0 | Page 9...
  • Page 10: Directory Structure

    - Human readable documents that describe the iND83405 features and capabilities, the SDK and the demo kit. thirdparty/ - C source code that is not produced by indie Semiconductor, but is used by one or more demonstration applications. tools/ - Programs and scripts that may be of use with the iND83405.
  • Page 11 ENG-6114 iND83405 Quick Start User Guide applications will begin printing messages immediately upon booting and whenever S1 (reset) is depressed. demo demo is an application that presents a menu in a terminal (on UART3) with options to test each of the hardware drivers in a typical configuration.
  • Page 12 ENG-6114 iND83405 Quick Start User Guide Once this is installed, the Unix-like environment can be opened by right-clicking the mouse anywhere on the desktop and selecting “Git Bash Here…” from the popup context menu as shown here: Once the Git Bash window is open Unix commands such as ls, cd and date can be used.
  • Page 13 ENG-6114 iND83405 Quick Start User Guide 3. Before selecting Finish, the following boxes should be marked: 4. Check that the toolchain is installed properly by typing the following command at the prompt in your Git Bash window. arm-none-eabi-gcc --version Rev 1.0 | Page...
  • Page 14 ENG-6114 iND83405 Quick Start User Guide If the error “Command not found” or “arm-none-eabi-gcc is not recognized as an internal or external command” is returned, the path to the bin folder in the GNU Arm Embedded Toolchain directory may need to be added to the system path.
  • Page 15 ENG-6114 iND83405 Quick Start User Guide If the error “Command not found” or “'make' is not recognized as an internal or external command” is seen, the make application may need to be added to the system path. See the troubleshooting guide for more information.
  • Page 16 ENG-6114 iND83405 Quick Start User Guide 3) If there is an update, install it, then click on Ok and finish the installation. To verify the connection between the PC and the J-Link tool type jlink at a Windows command line prompt. To ensure that the command is accessible from anywhere in the directory Rev 1.0 | Page...
  • Page 17 ENG-6114 iND83405 Quick Start User Guide structure, add the J-Link directory to the system path. See the troubleshooting section J-Link, Make or GCC not recognized as a command for instructions on modifying the system path. To access the Windows command line, left-click on the Windows icon and type “command prompt”...
  • Page 18 The package downloaded from SEGGER will contain PC applications for the J-Link such as Commander and J-Flash. To use these applications and connect the J-Link with the EVB requires files that are specific to the ind83405 chip. This process will be explained in the section called J-Link Support Files for iND83405.
  • Page 19 ENG-6114 iND83405 Quick Start User Guide Click on “more info..” then on “Run anyway” 2) Change the installation folder if needed. Rev 1.0 | Page indie Semiconductor...
  • Page 20 ENG-6114 iND83405 Quick Start User Guide 3) Start the installation by clicking on Install. A manual check can be done to ensure the installer loaded the necessary files into the correct directories. 1. Open the file C:\Program Files (x86)\SEGGER\JLink\JLinkDevices.xml with a text editor.
  • Page 21 ENG-6114 iND83405 Quick Start User Guide 2. Also, check to make sure the JLinkScriptFile and Loader files listed above are present on the PC in the C:\Program Files (x86)\SEGGER\...\Devices\IndieSemi\M4 directory. These files are included in the sdk\tools\seggerDevices directory and can be manually copied if necessary.
  • Page 22 ENG-6114 iND83405 Quick Start User Guide The radio button for connection type should be set to Serial, the COM port should match the previous Device Manager indication and the speed should be 115200. The Connection->Serial screen should have the appropriate COM port and the following configuration data.
  • Page 23 ENG-6114 iND83405 Quick Start User Guide Clicking on the Open button at the bottom of the screen should establish a connection with the board. What displays on the screen will be dependent on the application running on the board. Press the reset switch on the board (S1) to see initial messages.
  • Page 24 ENG-6114 iND83405 Quick Start User Guide Using make to Build the Applications Open the Git Bash window by placing the mouse anywhere on the desktop and right clicking to choose “Git Bash Here”. The table below shows the commands to use at the prompt from the root directory to build each of the applications.
  • Page 25 ENG-6114 iND83405 Quick Start User Guide arm-none-eabi-gcc sdk/drivers/driver_pmua.c -o build/app/driver_pmua.o arm-none-eabi-gcc sdk/drivers/driver_port.c -o build/app/driver_port.o arm-none-eabi-gcc sdk/drivers/driver_pwm.c -o build/app/driver_pwm.o arm-none-eabi-gcc sdk/drivers/driver_rtc.c -o build/app/driver_rtc.o arm-none-eabi-gcc sdk/drivers/driver_spi.c -o build/app/driver_spi.o arm-none-eabi-gcc sdk/drivers/driver_timer.c -o build/app/driver_timer.o arm-none-eabi-gcc sdk/drivers/driver_uart.c -o build/app/driver_uart.o arm-none-eabi-gcc sdk/drivers/driver_util.c -o build/app/driver_util.o arm-none-eabi-gcc sdk/drivers/driver_wdt.c -o build/app/driver_wdt.o arm-none-eabi-gcc applications/demo/demo.c -o build/app/demo.o...
  • Page 26 ENG-6114 iND83405 Quick Start User Guide SRAM 1040 536929348 .ARM.exidx 536930388 .data 2556 536930400 .bss 536932956 .heap 3072 536933752 .stack_dummy 7168 536933752 .ARM.attributes .comment .debug_line .debug_info .debug_abbrev .debug_aranges .debug_str .debug_frame 6344 .stab .stabstr Total 80291 Converting to Binary... arm-none-eabi-objcopy build/app/app.elf build/app/app.bin ...
  • Page 27: Programming The Controller

    ENG-6114 iND83405 Quick Start User Guide Programming the Controller The board has come pre-programmed with the demo demonstration so programming is not necessary for the quick start. The information in this section will be needed to reprogram the controller or program a controller that is blank or otherwise needs to be recovered.
  • Page 28 ENG-6114 iND83405 Quick Start User Guide The J-Link> prompt at the end of the output shows that the user has entered the Commander application and other J-Link commands are now available. See the J-Link documentation that is included with J-Link download for more information. Typing q at the prompt exits the application.
  • Page 29 ENG-6114 iND83405 Quick Start User Guide see the section J-Link Cannot Connect in the troubleshooting section. If you get the following result, VTref is low. Check the connections between the board and the J-Link. Also, ensure that the board is powered.
  • Page 30 ENG-6114 iND83405 Quick Start User Guide Rev 1.0 | Page indie Semiconductor...
  • Page 31 ENG-6114 iND83405 Quick Start User Guide Program the Board Using Make The section is relevant for a board that has been previously programmed and needs to be reprogrammed. The default Makefile assumes that the tool used for flashing is a Segger J-Link and the compiler being used is gcc.
  • Page 32 ENG-6114 iND83405 Quick Start User Guide rtos make APP=rtos clean bootloader make APP=bootloader clean make APP=app clean The command to delete all the build directories following each build is: make clean all Programming the Board from the J-Link Prompt 1. First open a Windows command prompt. Left-click on the Windows icon and type “command prompt”...
  • Page 33 ENG-6114 iND83405 Quick Start User Guide sure to include the path to the .hex file. This command will automatically erase the chip before programming. 4. After the board has been programmed, cycle the power to restart. Programming a Blank Chip Additional steps are necessary to prepare a blank chip for programming or restore an otherwise unresponsive chip.
  • Page 34 ENG-6114 iND83405 Quick Start User Guide Connecting to J-Link via USB...O.K. Firmware: J-Link V10 compiled Mar 21 2019 15:43:57 Hardware version: V10.10 S/N: 600104072 License(s): RDI, FlashBP, FlashDL, JFlash, GDB VTref=3.386V Selecting SWD as current target interface. Selecting 1000 kHz as target interface speed Device "CORTEX-M4"...
  • Page 35 ENG-6114 iND83405 Quick Start User Guide Read DP register 1 = 0xF0000040 Write DP register 2 = 0x00000000 Write AP register 0 = 0x00000002 Write AP register 1 = 0x50000000 Read AP register 3 = 0x00000000 Read AP register 3 = 0x41746963...
  • Page 36 3. The board has come programmed with the demo demonstration, so if it has not been re-programmed, this step can be skipped. To use the J-Link commands, at the Windows Command Prompt navigate to the directory ind83405-sdk/binaries. Then type the following commands to program the board..
  • Page 37 This demonstration shows a working real time operating system integrated into an application running on the iND83405. For this demonstration FreeRTOS has been used. 1. Make sure the system hardware is in place including the PC, UART to USB bridge and J-Link.
  • Page 38 3. The board has come programmed with the demo demonstration, so if it has not been re-programmed, this step can be skipped. To use the J-Link commands, at the Windows Command Prompt navigate to the directory ind83405-sdk/binaries. Then type the following commands to program the board..
  • Page 39 Quick Start User Guide Bootloader and App This demonstration shows the possibility of creating a bootloader for the iND83405 and an application that the bootloader can jump to at startup. 1. Make sure the system hardware is in place including the PC, UART to USB bridge and J-Link.
  • Page 40 ENG-6114 iND83405 Quick Start User Guide Rev 1.0 | Page indie Semiconductor...
  • Page 41: Troubleshooting

    ENG-6114 iND83405 Quick Start User Guide Troubleshooting Errors Running Jlink.exe This issue is described by the following output when trying to execute jlink.exe from the Windows command line. This behavior has been reported by some users who had recently updated their machines to Windows 11.
  • Page 42 ENG-6114 iND83405 Quick Start User Guide Edit the PATH variable under both “User variables” and the “System variables” by selecting PATH and pressing “Edit…” Select the line for Segger JLink and press “Move Up” until it appears at the top.
  • Page 43 ENG-6114 iND83405 Quick Start User Guide C:\Users\hayward> Or when in a bash shell hayward@DAVETOWER MINGW64 ~ $ jlink bash: jlink: command not found hayward@DAVETOWER MINGW64 ~ The solution is to add an executable to your system path. Open the System Properties by typing ‘environment’ into the Windows search bar.
  • Page 44 ENG-6114 iND83405 Quick Start User Guide 1) Click on Environment Variables… 2) Left click on the Path line 3) Select Edit… 4) Select New 5) Type the path of the SEGGER folder to the new line 6) Select OK 7) Select OK 8) Select OK Rev 1.0 | Page...
  • Page 45 ENG-6114 iND83405 Quick Start User Guide J-Link Device Not Recognized If after running the IndieSemi Flashloader installer, J-Link does not recognize the selected device, then the flashloader should be uninstalled and reinstalled with the following steps. This is the message that may appear.
  • Page 46 5) Select Uninstall After a successful uninstall re-run the installer ind83405-sdk/tools/install/iND83405_Flashloader_v010_setup.exe. Refer to the portion of this document called J-Link Support Files for iND83405 in the Quick Start section for more information. J-Link Can’t Connect To The Target There are various reasons that the J-Link may fail to connect with the target and result in the display of the message “Cannot connect to target.”...
  • Page 47 ● The J-Link supporting files for the iND83405 have not been installed or have been installed over an existing version. See J-Link Supporting File for iND83405 to either install the files necessary for the J-Link to interact with the board or verify that an install has been done correctly.
  • Page 48 ENG-6114 iND83405 Quick Start User Guide J-Link Doesn’t Work On Windows 11 the J-Link may be installed by default. In that case our J-Link commands try to run based on the settings of this instead of our settings which was selected during our J-Link installation.
  • Page 49 If issues are present when trying to write to or erase flash memory as in the example below the indie flash loader may have not been installed or may have installed incorrectly. Refer to the section in the Quick Start section called Install J-Link Support Files for iND83405.
  • Page 50 ENG-6114 iND83405 Quick Start User Guide No COM Port For Terminal When attempting to determine the terminal COM port number using device manager, if there is no “Silicon Labs CP2102” device to be found and instead a message that “drivers cannot be found”...
  • Page 51: Document Revision History

    ENG-6114 iND83405 Quick Start User Guide Document Revision History Date Version Description 21Sept2022 Initial release Rev 1.0 | Page indie Semiconductor...
  • Page 52: Important Notice

    , whether or not the recipient of material has been advised of the possibility of such damage.
  • Page 53 Mouser Electronics Authorized Distributor Click to View Pricing, Inventory, Delivery & Lifecycle Information: indie Semiconductor iND83405/EVK01...