Skip to content

Conversation

adamheinrich
Copy link
Contributor

@adamheinrich adamheinrich commented Nov 28, 2017

This adds the NUCLEO-F413ZH board from ST as a target. Merged from the existing TARGET_DISCO_F413ZH code (which has the same MCU) and TARGET_NUCLEO_F412ZG code (which has the same Nucleo-144 board and pinout).

(The original commit used pin definitions from TARGET_NUCLEO_F429ZI which has a different pinout. It's fixed now)

@0xc0170
Copy link
Contributor

0xc0170 commented Nov 29, 2017

@ARMmbed/team-st-mcd Please review

@mbed-ci
Copy link

mbed-ci commented Nov 29, 2017

Automatic CI verification build not done, please verify manually.

Copy link
Contributor

@bcostm bcostm left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Did you test the USB device on this board ?

@adamheinrich
Copy link
Contributor Author

@bcostm I'll test it today. Is there any particular feature I should be aware of?

@bcostm
Copy link
Contributor

bcostm commented Nov 30, 2017

OK. Nothing in particular, it is just that usually I add the platforms in the USB/CAN files only after I am sure that it has been tested successfully. That's all. I think it should work but just to be sure... I will continue my code review. Thanks for your contribution.

@adamheinrich
Copy link
Contributor Author

adamheinrich commented Nov 30, 2017

Ok, please note that I have force pushed the commit with changes in PinNames.h

Copy link
Contributor

@bcostm bcostm left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

Can you run also mbedOS5 tests with GCC_ARM compiler and share the results ?

We'll run on our side the tests on ARM and IAR compilers soon.

// Note: Commented lines are alternative possibilities which are not used per default.
// If you change them, you will have also to modify the corresponding xxx_api.c file
// for pwmout, analogin, analogout, ...
// =====
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you replace this Note block by this one:

//==============================================================================
// Notes
//
// - The pins mentionned Px_y_ALTz are alternative possibilities which use other
//   HW peripheral instances. You can use them the same way as any other "normal"
//   pin (i.e. PwmOut pwm(PA_7_ALT0);). These pins are not displayed on the board
//   pinout image on mbed.org.
//
// - The pins which are connected to other components present on the board have
//   the comment "Connected to xxx". The pin function may not work properly in this
//   case. These pins may not be displayed on the board pinout image on mbed.org.
//   Please read the board reference manual and schematic for more information.
//
//==============================================================================

{PC_12, UART_5, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_UART5)},
{PD_1, UART_4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_UART4)},
{PD_5, UART_2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART2)},
{PD_8, UART_3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART3)},
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you add this comment at the end of this line:
// Connected to STDIO_UART_TX
and every time this pin is found

{PD_0, UART_4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_UART4)},
{PD_2, UART_5, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_UART5)},
{PD_6, UART_2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART2)},
{PD_9, UART_3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART3)},
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you add this comment at the end of this line:
// Connected to STDIO_UART_RX
and every time this pin is found

{PA_5, ADC_1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 5, 0)},
{PA_6, ADC_1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 6, 0)},
{PA_7, ADC_1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 7, 0)},
{PB_0, ADC_1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 8, 0)},
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you add this comment at the end of this line:
// Connected to LED1
and every time this pin is found

{PB_3, I2C_2, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF9_I2C2)},
{PB_3_ALT0, FMPI2C_1, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_FMPI2C1)},
{PB_4, I2C_3, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF9_I2C3)},
{PB_7, I2C_1, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C1)},
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you add this comment at the end of this line:
// Connected to LED2
and every time this pin is found

{PB_9, I2C_1, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C1)},
{PB_9_ALT0, I2C_2, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF9_I2C2)},
{PB_11, I2C_2, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C2)},
{PB_14, FMPI2C_1, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_FMPI2C1)},
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you add this comment at the end of this line:
// Connected to LED3
and every time this pin is found

@adamheinrich
Copy link
Contributor Author

@bcostm I have modified the commit again to include the comments and force pushed (see productize@1fea600 for changes).

@adamheinrich
Copy link
Contributor Author

adamheinrich commented Nov 30, 2017

I ran the USBSerial example and it works (I can receive data sent over CDC ACM on my computer) -- so the USB device is probably OK.

See mbed-test.zip for an archive with compiled tests (obtained by running python tools/test.py -m NUCLEO_F413ZH -t GCC_ARM) -- or did you want something else?

@bcostm
Copy link
Contributor

bcostm commented Dec 1, 2017

Thanks for the changes. It looks like the report you have sent contains only the build result and not the tests.

You can run these commands (the first one should be identical to the command you ran):

$ mbed test --compile -m NUCLEO_F413ZH -t GCC_ARM
$ mbed test --run -m NUCLEO_F413ZH -t GCC_ARM --report-text=report.txt

Copy link
Contributor

@0xc0170 0xc0170 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

Please post test results as requested above

@adamheinrich
Copy link
Contributor Author

adamheinrich commented Dec 2, 2017

Thank you for the instructions, the report is here: report.txt.

There's a lot of timeouts -- the first cca 25 tests pass normally and the others always fail with a timeout (see the log from my command line: test-log.txt). It seems to me that all timeouted tests are preceded by a warning message mbedgt: test case summary event not found, for example:

mbedgt: mbed-host-test-runner: started
mbedgt: checking for GCOV data...
mbedgt: test case summary event not found
	no test case report present, assuming test suite to be a single test case!
	test suite: features-frameworks-utest-tests-unit_tests-minimal_scheduler
	test case: features-frameworks-utest-tests-unit_tests-minimal_scheduler
mbedgt: test on hardware with target id: 074202210648670D390CF172
mbedgt: test suite 'features-frameworks-utest-tests-unit_tests-minimal_scheduler' .................... TIMEOUT in 20.52 sec
	test case: 'features-frameworks-utest-tests-unit_tests-minimal_scheduler' .................... ERROR in 20.52 sec
mbedgt: test case summary: 0 passes, 1 failure

I tried it multiple times and it always starts timeouting at the same test. The board probably stops communicating with the computer for some reason (I need to reconnect it to the USB port, otherwise all tests fail when running it again).

@bcostm
Copy link
Contributor

bcostm commented Dec 4, 2017

Thanks. That's strange. We'll run the tests on our side too to compare.

@adamheinrich adamheinrich mentioned this pull request Dec 6, 2017
@bcostm
Copy link
Contributor

bcostm commented Dec 11, 2017

I have run mbedOS5 tests and they're all PASS. I don't know what is wrong with your setup ?

report_test5_all_NUCLEO_F413ZH_ARM.txt
report_test5_all_NUCLEO_F413ZH_GCC_ARM.txt
report_test5_all_NUCLEO_F413ZH_IAR.txt

@jeromecoutant
Copy link
Collaborator

Hi
OS2 tests are also all OK (GCC/ARM/UARM/IAR)
Thx

@0xc0170
Copy link
Contributor

0xc0170 commented Dec 20, 2017

/morph build

@0xc0170
Copy link
Contributor

0xc0170 commented Dec 20, 2017

@adamheinrich Can you rebase please to resolve conclict (will fix travis timeout here)

@adamheinrich
Copy link
Contributor Author

@0xc0170 Ok, done.

@cmonr
Copy link
Contributor

cmonr commented Dec 28, 2017

/morph build

@adbridge
Copy link
Contributor

@adamheinrich Hi, there are still conflicts could you please rebase again.
@bcostm are you happy with the changes ?

Merged from the existing TARGET_DISCO_F413ZH code (which has the same MCU)
and TARGET_NUCLEO_F412ZG code (which has the same Nucleo-144 board and
pinout).
@adamheinrich
Copy link
Contributor Author

@adbridge ok, I have resolved the new conflict.

@0xc0170
Copy link
Contributor

0xc0170 commented Jan 3, 2018

/morph build

@mbed-ci
Copy link

mbed-ci commented Jan 3, 2018

Build : SUCCESS

Build number : 789
Build artifacts/logs : http://mbed-os.s3-website-eu-west-1.amazonaws.com/?prefix=builds/5608/

Triggering tests

/morph test
/morph uvisor-test
/morph export-build

@mbed-ci
Copy link

mbed-ci commented Jan 3, 2018

@cmonr
Copy link
Contributor

cmonr commented Jan 3, 2018

/morph export-build

Jenkins issue.

@mbed-ci
Copy link

mbed-ci commented Jan 3, 2018

@mbed-ci
Copy link

mbed-ci commented Jan 3, 2018

@cmonr
Copy link
Contributor

cmonr commented Jan 4, 2018

/morph test

Testing a theory.

@mbed-ci
Copy link

mbed-ci commented Jan 4, 2018

@0xc0170
Copy link
Contributor

0xc0170 commented Jan 5, 2018

/morph test

@mbed-ci
Copy link

mbed-ci commented Jan 5, 2018

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants