Not happy with Atmel/Microchip support

Go To Last Post
5 posts / 0 new
Author
Message
#1
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I need to vent. Absolutely not happy with Atmel/Microchip support. There is unexplained hard fault (https://community.atmel.com/foru...).
- I provided a short complete compilable example. But they don't have a board to test on. Really?
- They say "we have not received any such failure issues from the field so far" - is that good enough?
- "consider contacting ARM for a suitable explanation for the behaviour" - really? I need to contact ARM? And tell them what?

Eugene

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

From the thread you cite, it sounds like you think the problem is in the GCC compiler - yes?

 

Note that the GCC compiler has nothing to do with Atmel (nor Microchip):

 

As part of its ongoing commitment to maintaining and enhancing GCC compiler support for the ARM architecture, ARM is maintaining a GNU toolchain with a GCC source branch targeted at Embedded ARM Processors, namely Cortex-R/Cortex-M processor families, covering Cortex-M0, Cortex-M3, Cortex-M4, Cortex-M0+, Cortex-M7, ARMv8-M Baseline and mainline, Cortex-R4, Cortex-R5, Cortex-R7 and Cortex-R8. As part of this, ARM releases at regular intervals pre-built and tested binaries from the ARM embedded branch. The improvements are freely available for integration into 3rd party toolchains, and for direct download by end-users.

ARM employees are maintaining this project. Contributions to this project are be done via GCC [1] trunk, binutils-gdb [2] master branch and newlib [3] master branch. This launchpad project is for communication and bug reporting. Downloads are made from developer.arm.com website [4] and no code change is done in Launchpad project.

[1] http://gcc.gnu.org
[2] http://www.gnu.org/software/binutils/
[3] https://sourceware.org/newlib/
[4] https://developer.arm.com/open-source/gnu-toolchain/gnu-rm

For Ubuntu 12.04/14.04/16.04/16.10 32/64-bit user, PPA is available at https://launchpad.net/~team-gcc-arm-embedded/+archive/ubuntu/ppa.

Questions can be asked on the ARM connected community website at https://community.arm.com/groups/tools

Bugs should be reported in the bug section (https://bugs.launchpad.net/gcc-arm-embedded/+filebug).

Top Tips:

  1. How to properly post source code - see: https://www.avrfreaks.net/comment... - also how to properly include images/pictures
  2. "Garbage" characters on a serial terminal are (almost?) invariably due to wrong baud rate - see: https://learn.sparkfun.com/tutorials/serial-communication
  3. Wrong baud rate is usually due to not running at the speed you thought; check by blinking a LED to see if you get the speed you expected
  4. Difference between a crystal, and a crystal oscillatorhttps://www.avrfreaks.net/comment...
  5. When your question is resolved, mark the solution: https://www.avrfreaks.net/comment...
  6. Beginner's "Getting Started" tips: https://www.avrfreaks.net/comment...
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I thought it was a GCC issue, something crashed with older toolchain, but didn't crash with newer. After some digging the difference between the two was reduced to one single instruction, "ldr" vs "ldrb", in one single place. "ldr" hard faults, "ldrb" doesn't. Therefore, I no longer think this is a toolchain issue. I think it is a hardware issue. The argument of "ldr" is properly aligned. They don't have an explanation why it hard faults. Yet they somehow are OK with just letting it go without trying to get to the bottom of it.

Last Edited: Wed. Mar 29, 2017 - 03:03 PM
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Have you set up a Hard Fault handler to see what status information the processor gives ... ?

 

Top Tips:

  1. How to properly post source code - see: https://www.avrfreaks.net/comment... - also how to properly include images/pictures
  2. "Garbage" characters on a serial terminal are (almost?) invariably due to wrong baud rate - see: https://learn.sparkfun.com/tutorials/serial-communication
  3. Wrong baud rate is usually due to not running at the speed you thought; check by blinking a LED to see if you get the speed you expected
  4. Difference between a crystal, and a crystal oscillatorhttps://www.avrfreaks.net/comment...
  5. When your question is resolved, mark the solution: https://www.avrfreaks.net/comment...
  6. Beginner's "Getting Started" tips: https://www.avrfreaks.net/comment...
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I just kept the default handler and then in the Studio debugger traced it back to the location that caused the fault.

It is my understanding that the support doesn't dispute my claim. Therefore, I'm kind of reluctant to go into all details again. If somebody has a board with a d21b micro, and is willing to run my test(s), I would definitely appreciate that.