START/ASF4 errors with reconfigurations.

1 post / 0 new
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I'm learning the Cortex and START/ASF4 at the same time so I don't expect things to "just work" but START/ASF4 seem fragile.

To sum up my initial attempts, START seems to reconfigure in surprising ways with little documentation.  Starting a project with a complete configuration seems very important as reconfigs don't work the same as a "fresh start".


I love the START approach but when something "breaks" it's not clear on how to proceed.  Deleting and reselecting "broken" section with START reconfig doesn't appear to work.


On a related note: why does the ASF page ( refer to ASF3 as the latest with no mention of ASF4?

I realize this post is more of a "rant" but is START/ASF4 considered beta or are most people using it for their projects with ASF3 for existing code?




1.New project using START, added I2C sync

2.compiled fine, I2C working without much fuss

3.Project->reconfigure -- added Delay driver

project now fails to compile.  Needed to add #include "hal_delay.h"

Tried to recreate with a new project but this time it worked with no mods needed.


Test 2:


1.New project with STDIO added (wanted to use printf).  compiles OK.

2.Reconfigured Target_IO to UART1 --compiles OK

3.reconfigured Target_IO to USART0 (default driver is USART_RTOS_beta, changed to sync mode)

compiles with multiple errors and warnings:

Severity Description File Line
Warning LITTLE_ENDIAN redefined ...same70q21.h 377
Message in definition of macro 'US_MR_USCLKS' ...usart.h 200
Message in definition of macro 'US_BRGR_CD' ...usart.h 702
Message this is the location of the previous definition ...endian.h 17
Error 'CONF_USART0_FREQUENCY' undeclared here (not in a function) ...hpl_usart_config.h 197
Error recipe for target 'hpl/usart/hpl_usart.o' failed ...Makefile 403
Warning implicit declaration of function '_uart_get_usart_sync' [-Wimplicit-function-declaration] ...driver_init.c 33
Warning passing argument 3 of 'usart_sync_init' makes pointer from integer without a cast [-Wint-conversion] ...driver_init.c 33
Message expected 'void * const' but argument is of type 'int' ...hal_usart_sync.h 82
Warning '_uart_interrupt_handler' defined but not used [-Wunused-function] ...hpl_uart.c 635
Error 'CONF_USART0_CK_SRC' undeclared here (not in a function) ...hpl_usart.c 115
Message in expansion of macro 'CONF_USART_0_BAUD_CD' ...hpl_usart.c 125
Message in expansion of macro 'USART_CONFIGURATION' ...hpl_usart.c 145
Message in expansion of macro 'USART_CONFIGURATION' …hpl_usart.c 145
Warning '_usart_interrupt_handler' defined but not used [-Wunused-function] ...hpl_usart.c 638


Found that driver_init.c in stdio_redirect function TARGET_IO_init() still showed UART1 --not USART0


4.Reconfigured back to UART1 and pressed "Generate Project"

SMART error: Could not download contents from server.  Exception thrown: The remote server returned an error: (500) Internal Server Error

5.Changed back to USART0 and START works but compile errors remain.

6.Removed STD_io and dependencies from START
7.Add STD_io and selected USART0 
8.Changed USART0 from default rtos_beta to sync


Same errors and warnings from before.


At this point I'm wondering if the redirect works with the USART ports so I try a setting up a new project.

steps: project with START, set target_io to use usart0

2.change rtos_bets driver to sync Rx and Tx pins

4.compiles and tests OK