DS-5 debugger target support - arm

ARM DS-5 claims to support different kinds of targets. What are different types of targets supported by DS-5? How can I connect to these targets?

If you want to find if a target (device, dev board, virtual platform, android emulator) is supported, then you need to check two things
Step 1 : Check if a device is explicitly supported by looking at https://developer.arm.com/products/software-development-tools/ds-5-development-studio/resources/supported-devices
Step 2 : Check how to connect the DS-5 to the device to achieve the desired type of debugging. DS-5 Debugger supports following debug connections
CADI connection - FVP targets - JTAG style debug.
GDB connection - Any target that can run GDB server.
DSTREAM debug adapter connection - Development boards - JTAG style debug.
UlinkPro debug adapter connection - Development boards - JTAG style debug.
ADB connection - Any target supporting adb connection - Android devices, dev boards etc.
VSTREAM IP connection - RTL simulator targets - JTAG style debug.
CMSIS-DAP over USB connection - Development boards that support CMSIS-DAP over USB connection - JTAG style debug.

Related

Segger RTT control block is not identified by RTT viewer

I'm trying to use Segger's RTT
(Real Time Transfer),
but I'm not able to see any output on the RTT viewer.
I'm doubting that the root cause is an RTT control block not being identified by RTT viewer.
Setup
The host PC is connected using Seggers's
J-Link
debugger (JTAG interface) to an ARM-CORTEX-M4 based board, like this:
[PC] <---- J-Link -----> [ generic CORTEX-M4 board]
What I'm trying to achieve
I'm trying to integrate the RTT feature, which is specific to Segger, and I'm not able to see prints from RTT in the RTT viewer software on the host PC, by doing
Integrated code provided by segger
SEGGER_RTT_Conf.h
SEGGER_RTT_printf.c
SEGGER-RTT.c
SEGGER_RTT.h
Included SEGGER_RTT.h in my main file and added a call
SEGGER_RTT_WriteString(0, "Hello World from SEGGER RTT!\r\n");
within main().
Using Eclipse and arm-none-eabi- toolchain to compile the application, as well as
JLINK_GDBserverCL.exe -- debug server
arm-none-eabi-gdb -- debug client
Segger J-Link -- hardware debugger (connecting its JTAG interface)
on host PC using RTT viewer software to receive prints in step #2.
I'm expecting to see a print in step #3, please help me to proceed.
Either you need to specify what specific device you're connecting when you call JLinkRTTViewer / JLinkRTTClient, or you need to find the memory address of "_SEGGER_RTT" in you .map file and pass that to the tools.

Can't use Serial debug console on Raspberry pi 3B Android Things

I am trying to connect my Raspberry pi 3B which has Android Things installed to my PC using the Serial debug cable. I connected it as instructed Here and followed the below steps using PUTTY on Windows 10.
N.B: Same issue is with the Android Emteria version for Raspberry pi 3B.
All I get is an empty console window, which I can't even type into. The device is not seen either in Android studio or using the ADB tool
I am not sure about which Com to use, here's my device manager:
Note
I am able to connect the device using Wifi, and ADB using this command:
adb connect <ip address>
and I install apps normally and they work fine using Android Studio.
Now, I want to make the Serial debug method work, and will it allow me to run my apps from Android studio + see the Logcat logs? Plz review my above mentioned steps and tell me if I am missing something.
From your device manager, it looks like the driver for your serial cable may not be installed correctly.
Assuming you are using the recommended cable from Adafruit, you need to install the proper drivers for Windows. Try downloading the Silicon Labs drivers (http://www.silabs.com/Support%20Documents/Software/CP210x_Windows_Drivers.zip) and installing those. You may need to restart your computer to complete the installation.
Otherwise, if it's a Cypress cable, you may need to update the Cypress UCM Client Peripheral Driver that your device manager is showing an error on. Right click on that and select update driver.
Once your serial cable is installed properly and recognized by Windows, you should be able to connect to your Pi as instructed.

How to connect on Nucleo with GDB?

I am using arm-none-eabi toolchain to create binary file for Nucleo which I then flash to the Nucleo using the USB virtual storage device it provides.
I am compiling the program with -ggdb. But how could I possibly connect to the nucleo and execute breakpoints on it? I can't even imagine how could it work, but I'm complete beginner.
Can I connect? How?
Yes you can connect, at least from a Linux host. I never tried from Windows system. Use OpenOCD to open a debug port and connect gdb (used arm-none-eabi-gdb) to this port with "gdb extended-remote" command. I am using this method from Linux host PC to connect to a custom board based on STM32L4 series for debugging and collecting log messages. Nucleo boards are also using the same series of STM controller.
For what it's worth there's a free IDE call EMBlocks that I've used in the past. I think the new version is called EMBitz https://www.embitz.org/
I've used it to both flash the STM32 Nucleo boards as well as debug the flashed image file.
A quick search also turns up this website that seems to indicate you can use GDB with the stlink utility. https://openenergymonitor.org/emon/node/6189

How to dump/burn program into LPC2148

I have LPC2148 daughter board but I am not able to dump/burn code into it, and it doesn't have any usb connector to dump code.
I read on internet by using FT232RL I can able dump code into LPC2148 but I am not able to do so.
please give me solution
thank you..!
The chip supports In-System Programming (ISP) via an on-chip boot loader ROM.
From the User Manual UM10139:
Programming of the Flash memory may be accomplished in several ways:
over the serial built-in JTAG interface, using In System Programming
(ISP) and UART0, or by means of In Application Programming (IAP)
capabilities.
The function of the FT232RL you mentioned is to act as a USB/UART bridge and is necessary primarily because modern PCs lack legacy RS-232 serial ports. You can in fact purchase a USB-Serial cable or adapter which will contain a bridge chip such as the FT232RL. Most of these use RS-232 line level signals, so you would still need an RS-232 line driver/receiver to connect then to your board (if your board has a serial port, it probably already has a line transceiver and you can connect directly to that). It is possible from specialist suppliers including FTDI themselves to get a USB cable with integrated FT232 and bare TTL level connections to connect directly to LPC2148 UART0 Rx/Tx lines.
If your board does not already expose a UART0 serial port and the necessart control to start the boot loader, a Serial Port Bootloader Interface board is available. For that you may then also need a USB/Serial adapter or a PC with a legacy serial ports.
Once you have a suitable serial connection, you will need the LPC2000 Flash Utility software to run on the PC.
The JTAG option is however faster, and more powerful since the JTAG is both a programming and debugging port. With a suitable toolchain and JTAG adapter it is possible to program and execute code with source-level PC hosted debugging including break pointing, data watching and single stepping of the code.

How do I setup wdb for Pre-Kernel debugging in vxworks 6.7?

I am new to the RTOS world and working on the eval version of vxworks 6.7. I don't know How to turn on the wdb debugging for my bootloader which has troubles loading my network driver. I hope someone can help me with a quick tips.
Thank you
Are you connected via serial for debugging? If not, it may be impossible to debug networking issues. wdb runs on host in eclipse and connects to device (target) via serial or ethernet.
Anyway you turn on wdb support via the project when you build the bootloader.

Resources