Giter Club home page Giter Club logo

edbg's Introduction

Build Status

CMSIS-DAP programmer (Formerly Atmel EDBG programmer)

This is a simple command line utility for programming ARM-based MCUs through CMSIS-DAP SWD interface. It works on Linux, Mac OS X and Windows. It was tested with Atmel mEDBG- and EDBG-based boards, Atmel-ICE, LPC-Link2, IBDAP and Free-DAP-based debuggers.

Installation

Binary releases can be downloaded here. Binary releases are not tested, they are a result of automated build process.

If you want to build from the source code, simply run make all and you will get a small binary, called edbg.

Dependencies

The dependencies are minimal. In addition to normal development tools (GCC, make, etc) you will need:

  • Windows: none
  • Linux: libudev-dev
  • Mac OS X: libhidapi (can be installed via brew)

Usage

Usage: edbg [options]
Options:
  -h, --help                 print this help message and exit
  -b, --verbose              print verbose messages
  -e, --erase                perform a chip erase before programming
  -p, --program              program the chip
  -v, --verify               verify memory
  -k, --lock                 lock the chip (set security bit)
  -u, --unlock               unlock the chip (forces chip erase in most cases)
  -r, --read                 read the whole content of the chip flash
  -f, --file <file>          binary file to be programmed or verified; also read output file name
  -t, --target <name>        specify a target type (use '-t list' for a list of supported target types)
  -l, --list                 list all available debuggers
  -s, --serial <number>      use a debugger with a specified serial number
  -c, --clock <freq>         interface clock frequency in kHz (default 16000)
  -o, --offset <offset>      offset for the operation
  -z, --size <size>          size for the operation
  -F, --fuse <options>       operations on the fuses (use '-F help' for details)
Fuse operations format: <actions><section>,<index/range>,<value>
  <actions>     - any combination of 'r' (read), 'w' (write), 'v' (verify)
  <section>     - index of the fuse section, may be omitted if device has only
                  one section; use '-h -t <target>' for more information
  <index/range> - index of the fuse, or a range of fuses (limits separated by ':')
                  specify ':' to read all fuses
                  specify '*' to read and write values from a file
  <value>       - fuses value or file name for write and verify operations
                  immediate values must be 32 bits or less

Multiple operations may be specified in the same command. They must be separated with a ';'.

Exact fuse bits locations and values are target-dependent.

Examples

>edbg -b -t samd11 -pv -f build/Demo.bin
Debugger: ATMEL EDBG CMSIS-DAP ATML2178031800000312 01.1A.00FB (S)
Clock frequency: 16.0 MHz
Target: SAM D11D14A (Rev B)
Programming............................................... done.
Verification............................................... done.

Fuse operations:

  -F w,1,1             -- set fuse bit 1
  -F w,8:7,0           -- clear fuse bits 8 and 7
  -F v,31:0,0x12345678 -- verify that fuse bits 31-0 are equal to 0x12345678
  -F wv,5,1            -- set and verify fuse bit 5
  -F r1,:,             -- read all fuses in a section 1
  -F wv,*,fuses.bin    -- write and verify all fuses from a file
  -F w0,1,1;w1,5,0     -- set fuse bit 1 in section 0 and clear fuse bit 5 in section 1

edbg's People

Contributors

5im000n avatar aethaniel avatar ant9000 avatar ataradov avatar daniel-k avatar diamondo25 avatar dylad avatar j-rios avatar jeremysf avatar keksmassacre avatar loiclefort avatar mariorose avatar martin-vitek avatar oleszczyk avatar ooxi avatar prices avatar ragkousism avatar sarlacii avatar silseva avatar techaumnu avatar untaugh avatar vac avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.