U S ER MAN UAL PAGE 1 CODEGRIP USER MANUAL
Thank you for choosing Mikroe! We present you the ultimate debugger and programmer over USB/WiFi solution for embedded development. Elegant on the surface, yet extremely powerful on the inside, we have designed it to inspire outstanding achievements. And now, it’s all yours. Enjoy premium.
Ta b l e o f c o n t e n t s 4. CODEGRIP Suite overview 16 Introduction 5 1. Installing CODEGRIP Suite 6 4.1 Menu section 17 2. CODEGRIP 8 4.2 Menu item section 17 2.1 USB connectivity 9 4.3 Shortcuts bar 17 2.2 WiFi connectivity 9 4.4 Status bar section 18 2.3 Target connector 10 2.4 CODEGRIP adapters 11 5.1 Target MCU 19 2.5 LED indicators 13 5.2 CODEGRIP 28 14 5.3 POWER 38 2.1 Link types 14 5.4 OPTIONS 38 2.2 Link states 14 5.5 HELP 40 Troubleshooting 42 3.
CODEGRIP is a unified solution, designed to perform based microcontrollers becomes seamless and effortless, programming and debugging tasks on a range of different providing users with both the mobility and the complete microcontroller devices (MCUs) based on the ARM® Cortex®-M control over the microcontroller programming and debugging architecture. By bridging differences between various MCUs, process.
1. Installing CODEGRIP Suite The installation process is easy and straightforward. Download CODEGRIP Suite software application from the link www.mikroe.com/setup/codegrip and follow the steps below. 2. Select the destination folder 3. Select the components to install 4. License agreement PAGE 6 I N STALLAT ION 1.
. Installation progress 8. Finish the installation process CODEGRIP USER MANUAL I N STALLAT ION 6. Start the installation process PAGE 7 5.
2. CODEGRIP The CODEGRIP device offers a set of unique and innovative functionalities, some of which have never been used before on a similar device. These functionalities include wireless C O D E GRIP programming and debugging, power monitoring, advanced debugging options with the SWO support, and more. The CODEGRIP device comes in two different types: as a stand-alone device and an integrated on-board module. This manual will be focused on the stand-alone CODEGRIP device.
2.1 USB connectivity The USB-C connector is the latest upgrade of the conventional USB A/B from several different base points, debugging drone firmware while it is in type connectors, typically found on most personal computers today. The mid-air… This is just a simple example of what CODEGRIP can offer.
2.3 Target connector The CODEGRIP device can be used with any hardware, equipped with the On the bottom of the CODEGRIP device there is the sticker which contains standard JTAG/SWD programming header. Packed in a sturdy casing with additional information. rubber feet, it can be used independently, bringing all the powerful features ∫ Supported MCU family/architecture to a third-party hardware.
2.4 CODEGRIP adapters JTAG/SWD programming/debugging headers may vary across different hardware applications. To ensure compatibility with various header configurations there is a set of different adapters available as an additional purchase option.
C O D E GRIP
2.5 LED indicators There are five LED indicators on the CODEGRIP device, used to indicate different states of the device, providing visual feedback to the user.
3. CODEGRIP link structure CODEGRIP Suite can detect multiple CODEGRIP devices. In addition, a single CODEGRIP device can be operated by multiple software applications. To avoid any ambiguity, CODEGRIP utilizes the concept of links. CODEGRIP Suite uses a link to the specific CODEGRIP device, in order to send commands and receive responses. The link can be created, opened, and L IN K STRU CT U RE destroyed by the user, employing some specific functions of CODEGRIP Suite.
4. CODEGRIP Suite overview The graphical user interface (GUI) of CODEGRIP Suite is clear, intuitive, and easy to use, which ensures a fluid workflow. The main window is divided into several sections, which are used to display and organize all information, tools, and options in a consistent and comprehensible manner. CO D E GRIP SU IT E Besides the very informative Help system, CODEGRIP Suite also offers a short description for the most of its functionalities in a form of a hovering tooltip.
4.3 Shortcuts bar As already mentioned, all Menu buttons are located in the Menu section (1) The Shortcuts bar (3) is another persistent section of the CODEGRIP of the CODEGRIP Suite GUI. By clicking a Menu button, one or more Menu Suite GUI, containing controls for the most commonly used commands. It items are unfolded. Menu items are grouped by the type of the function appears on the top of the Menu item section, just below the title bar. The they are related to.
4.4 Status bar section The Status bar (4) is located at the very bottom of the GUI and it is used to Link status indicator: provides visual feedback about the status of the link. provide persistent visual feedback about the CODEGRIP link status. A set of When working with multiple devices, it is sometimes useful to have visual indicators along with a related text field allowing the user to always know indication of the device which is currently linked with the CODEGRIP Suite.
5. CODEGRIP Suite explained As already mentioned, each Menu button contains one or more related Menu items, and each Menu item contains its own set of tools and options, displayed in a form of various GUI elements on the Menu item section. This chapter provides 5.1 Target MCU Menu items used to interact with the target MCU (the selected MCU upon which the CODEGRIP device performs various programming/debugging P RO G RAMMIN G detailed information on these tools and options.
5.1.1 Programming the selected MCU vendor, the programming protocol, connection speed, the flash size of the target MCU, the connection type, and the reset type. Below is the interface used to select and display the program file .bin or .hex file, ready to be uploaded to the target MCU or examined by using a set of options, accessible by clicking the FLASH button. There is also the programming interface, composed of a set of buttons, used to perform various programming commands.
SOURCE VERIFY button The name of the currently loaded .hex or .bin file is displayed in this field. This file contains the program data that will be uploaded to the target MCU. Next to this textbox is a browse button, which opens a file selection dialog VERIFY button is used to compare the content of the loaded source file with the content of the target MCU memory. window, used to browse the .hex or .bin file. keyboard shortcut [Ctrl+O].
READ button Find READ button performs a reading of the target MCU flash memory content. The content of the memory is then available for the FLASH button related functions. This function is used to search for an occurrence of the value specified in the textbox. P RO G RAMMIN G FLASH button FLASH button opens the Memory View window which displays the table view of the memory content. There are two tabs in this window: Memory View and Loaded Source.
5.1.2 SWO Trace on the Cortex®-M3, M4, and M7 core. It is perfectly suited to output debug and runtime information and monitor the performance of the application in real time, without using processing resources, and without the need for complex coding routines. To simplify working with the SWO trace port, Mikroe has provided the SWO library with ready-made functions, which can drastically speed up the software development. The library is available for download from the Libstock at libstock.mikroe.
Set Filters 5.1.3 Options This button opens a new window, which contains five checkboxes, used to manage the incoming SWO messages. There are three message categories, depending on the SWO port they are sent through: Info, Warning, and Error messages. When the specific checkbox is ticked, messages corresponding to that category will be displayed. The categories are color-coded.
Vendor to the target MCU is established. Options: a list of supported MCU vendors. The Vendor dropdown menu allows the MCU vendor to be selected. If All is selected the vendor filtering will not be applied. If Disabled, the program will continue running on the target MCU freely, regardless of the connection. Connection MCU Options: a list of all the supported MCUs from the selected vendor. This dropdown menu allows the target MCU to be selected.
Target Browse window By clicking the browse button next to the MCU selection dropdown menu, the Target Browse window will pop up. The Target Browse window contains a vendor drop down menu and MCU textbox. Typing in this textbox will dynamically filter the MCU list, showing only the MCU names that contain the characters typed so far. By clicking the button, a new set of filtering options is revealed.
Dark or Light... ...
5.2 CODEGRIP The CODEGRIP Menu button contains Menu items related to the detection and setup of the CODEGRIP device. 5.2.1 Scanning The Scanning Menu item contains tools for detecting CODEGRIP devices. This Menu item also provides controls for link management. There are two tabs displayed in the Menu item section, Scan List tab and Options tab. S CAN N IN G Scan List tab To start the scanning process click on the SCAN DEVICES button. All detected CODEGRIP devices will be visible in the Scan List.
WiFi LINK button This button is used to create or destroy the WiFi link. Note that the CODEGRIP device must be properly configured and discoverable over the WiFi network for this option to work (more information can be found in the Configuration Menu item description, in this chapter). SCAN DEVICES button This button will start the scanning process. CODEGRIP Suite will try to detect all the CODEGRIP devices visible through USB/WiFi interfaces.
5.2.2 Configuration When Configuration Menu item is clicked, a set of four tabs will be displayed in the Menu item section Device General, WiFi General, WiFi Mode, and Licenses, each with its own set of options. On the bottom of the Menu item section, there are two buttons: RELOAD CONFIGURATION button will read back the configuration values from the CODEGRIP device, refreshing the content of CODEGRIP Suite.
Licenses tab The Licenses tab displays a summary of CODEGRIP licenses. The Activated Licenses subsection contains licenses that have been activated and are in use. The Available Licenses subsection displays all licenses currently available for purchase. The license activation process itself is explained in the in the chapter 5.2.3. Licenses can be purchased at the Mikroe store in the same way as any other item: For WiFi license, please visit www.mikroe.
WiFi General tab This tab contains general WiFi information about the linked CODEGRIP device. Interface State C O NF IG U RAT ION Options: Enabled, Disabled The integrated WiFi module can be enabled or disabled by selecting an option from this dropdown menu. The Enabled option will enable the integrated WiFi module, allowing it to be used. The Disabled option will disable the integrated WiFi module, by shutting it down completely. This option is useful when reduced power consumption is required.
TX Power Filter MAC Address Options: 0 to 15 This dropdown menu allows the strength of WiFi signal transmission power to be adjusted. Note that the selected value represents the signal attenuation, meaning that the value 0 will result with no signal attenuation while selecting the value 15 will result with the maximum signal attenuation. The CODEGRIP device allows the connection to be established only with the host PC whose MAC address corresponds to the MAC address entered in this field.
WiFi Mode tab This tab contains some specific WiFi settings for each of the two available modes of operation. There are two subsections labeled as Access Point Mode and Station Mode. WiFi settings are grouped into these subsections, according to the mode they are used for. Access Point Mode subsection SSID P A G E 34 C O NF IG U RAT ION This is the wireless network identifier, up to 32 characters long. Password The network password can be set in this field.
Station Mode subsection Subnet mask All configuration settings related to the Station Mode are shown in this subsection When operated in the Station mode, the CODEGRIP device becomes the WiFi client. Network subnet mask can be set in this field. SSID This field is used to set the IP address of the default gateway device. This is the network identifier. The string in this field must match the SSID string of the network to which the connection is attempted.
5.2.3 License License Menu item offers a set of options that are used to activate a license and enter user information, allowing personalization of the CODEGRIP device. When the License Menu item is clicked, the Menu item section displays two subsections. The subsection labeled as User information contains text boxes which allow some general user information to be entered, including a user name, email, company, and so on.
various fields of work is contained within this dropdown menu, covering a wide range of different occupations. If any of these fields contain invalid characters or uses a wrongly formatted input (such as in the case of email address) the ACTIVATE LICENSES button will be disabled. The text field containing an invalid value will display the invalid option/string in red letters. Once the licensing process is successfully completed, the licenses will be permanently stored within the CODEGRIP device.
5.3 POWER 5.3.1 Outputs When the Outputs Menu item is clicked, the Menu item section will be divided into two subsections: Controls and Measurements. The Controls subsection offers a set of options used to control power-related parameters, while the Measurements subsection offers visual feedback of the power-related parameters. POWE R Board & Target Switch Options: 0V to 3.3V The SET VOLTAGE button opens a dialog window which allows to set up the voltage that will be applied to the target MCU.
5.4 OPTIONS 5.4.1 General The Menu item section is divided into two subsections, labeled as Target and Suite. Erase Type Options: Erase Chip, Erase only Necessary Sectors, Unlock and Erase Chip Erase Chip will erase the content of the target MCU flash memory. Erase only Necessary Sectors will only erase those sectors to which the data from the loaded .hex or .bin source file will be written.
5.5 HELP HELP Menu button reveals two Menu items when clicked: About and Updates. These Menu items contain some general information about the CODEGRIP, along with the CODEGRIP Suite update and firmware update tools. 5.5.1 About By clicking on About Menu item, some general information that covers the current version of the release, the development team, and links to the site Besides the general information, there is also a small book icon that opens the HELP within the application.
5.5.2 Updates This Menu item contains tools used to update the Suite itself, as well as the firmware of the CODEGRIP device. There are three tabs on the Menu item section when this Menu item is clicked: the Suite tab, the CODEGRIP tab, and the Power Module tab. When this tab is selected, a short message is displayed on the Menu item section, describing how to check for CODEGRIP Suite updates.
TRO U B LES HOOT IN G P A G E 42 Error Messages Troubleshooting Target is not detected (DETECT) Make sure that the selected MCU matches the MCU connected to the CODEGRIP device. Connecting to target failed Check that the selected interface (SWD / JTAG) is supported on the target MCU. Make sure that the program lines are correctly configured. Try to connect with the “Under reset” and “Halt on connect” options enabled.
DISCLAIMER All the products owned by MikroElektronika are protected by copyright law and international copyright treaty. Therefore, this manual is to be treated as any other copyright material. No part of this manual, including product and software described herein, must be reproduced, stored in a retrieval system, translated or transmitted in any form or by any means, without the prior written permission of MikroElektronika.
If you want to learn more about our products, please visit our website at www.mikroe.com If you are experiencing some problems with any of our products or just need additional information, please place your ticket at www.mikroe.com/support If you have any questions, comments or business proposals, do not hesitate to contact us at office@mikroe.