Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

New board definition - Adafruit Feather STM32F405 #701

Merged
merged 10 commits into from
Oct 18, 2019

Conversation

ladyada
Copy link
Contributor

@ladyada ladyada commented Oct 13, 2019

hiya this definition adds support for a new board
https://www.adafruit.com/product/4382

pins are tested as GPIO - having some issue with USB Serial port but will open a separate issue about it

@fpistm fpistm self-requested a review October 14, 2019 06:00
@fpistm fpistm added the new variant Add support of new bard label Oct 14, 2019
@fpistm fpistm added this to the 1.8.0 milestone Oct 14, 2019
@fpistm
Copy link
Member

fpistm commented Oct 14, 2019

Hi @ladyada
Nice to see you here 😉
Thanks for this variant. I will review it carefully.

@fpistm
Copy link
Member

fpistm commented Oct 15, 2019

Hi @ladyada
if I'm not wrong this is an STM32F405RG ?

Move SDA/SCL to D14/D15 to be more Arduino compliant as it is the default.

Signed-off-by: Frederic Pillon <[email protected]>
Signed-off-by: Frederic Pillon <[email protected]>
@ladyada
Copy link
Contributor Author

ladyada commented Oct 15, 2019

yes thats' right
good news - last night i tested all featherwings with the feather. only a few oddities:

  • usually when using USB serial, the hardware serial port is called Serial1, but instead stm32duino names them after the USART so the hardware serial is Serial3 - not a big deal but like i said, unusual
  • RFM69/RFM9X library wouldn't work, not sure why
  • variant doesnt allow creation of multiple SPI / I2C ports like modern arduino does. you can do it by hand, so it isn't blocking - but would be nice if it were possible.
  • STM32F4 often have a USB dfu bootloader built in, which is great, but you have to kick into the bootloader each time. it would really help workflow a lot if it was automatic. for example, opening USBSerial port at 1200 baud would trigger a jump to the USB DFU bootloader.

The third item would be by far the most useful for workflow support because right now workflow is optimized for boards which have built in debugger (expensive) or STLink dongle (unecessary!)

@fpistm
Copy link
Member

fpistm commented Oct 15, 2019

  • usually when using USB serial, the hardware serial port is called Serial1, but instead stm32duino names them after the USART so the hardware serial is Serial3 - not a big deal but like i said, unusual

In fact choice has been made to name Serialx where x is the same than U(S)ARTx.

  • RFM69/RFM9X library wouldn't work, not sure why
    I've never tested. So probably required some investigations.
  • variant doesnt allow creation of multiple SPI / I2C ports like modern arduino does. you can do it by hand, so it isn't blocking - but would be nice if it were possible.

As far as I know Arduino create only one instance per type (one Wire and one SPI)? They pre-instantiate all possible one now? Any example are welcome and an issue could be open to track this.

  • STM32F4 often have a USB dfu bootloader built in, which is great, but you have to kick into the bootloader each time. it would really help workflow a lot if it was automatic. for example, opening USBSerial port at 1200 baud would trigger a jump to the USB DFU bootloader.

Right, I've plan to do it as the mechanism is already there (used for HID and Maple bootloader). This only require to write the jump code.

The third item would be by far the most useful for workflow support because right now workflow is optimized for boards which have built in debugger (expensive) or STLink dongle (unecessary!)

I don't well understand this point about workflow support?

[PR 701 review] Adafruit Feather STM32F405
@ladyada ladyada closed this Oct 15, 2019
@ladyada
Copy link
Contributor Author

ladyada commented Oct 15, 2019

@fpistm
Copy link
Member

fpistm commented Oct 15, 2019

Thanks, will check that.
Why did you closed this PR?

@ladyada ladyada reopened this Oct 15, 2019
@ladyada
Copy link
Contributor Author

ladyada commented Oct 15, 2019

oh i see this is the same one. sorry about that! late nite hacking :D

@ladyada
Copy link
Contributor Author

ladyada commented Oct 15, 2019

ok for workflow question - the great thing about the arduino is that before it, you had slow workflow - to program a new chip you had to manually launch the bootloader. that means pressing a button or something the dev board. with the stm32f405 feather now, because we don't have a built in stlink or openocd chip, you have to manually enter the bootloader my holding BOOT0 high and then pressing reset. If this was done automatically when you click UPLOAD it would allow for very fast iteration. that's the only thing missing :)

@fpistm
Copy link
Member

fpistm commented Oct 15, 2019

Ok understood.
As said this is planned 😉

@ladyada
Copy link
Contributor Author

ladyada commented Oct 15, 2019

ok thanx - how can i help get it implemented

@fpistm
Copy link
Member

fpistm commented Oct 16, 2019

Firstly, could you open an issue for:

  • [SPI|WIRE]_INTERFACES_COUNT
  • Automatic restart in DFU Bootloader mode

This will allow to track them.

@ladyada
Copy link
Contributor Author

ladyada commented Oct 16, 2019

ok done!

@fpistm
Copy link
Member

fpistm commented Oct 18, 2019

ok thanx - how can i help get it implemented

Hi @ladyada,
You can try the automatic restart, see #710 .
I did not had time to update script under Windows anyway you can test it manually or update the windows scripts based on what I've made for the linux one.
Let me k ow if you meet any issue.
Thanks

@ladyada
Copy link
Contributor Author

ladyada commented Oct 18, 2019

ok great, i use windows 10 :)

@ladyada
Copy link
Contributor Author

ladyada commented Oct 18, 2019

could you merge this PR, and rebase the #710 branch - so i only have to follow one branch :)

@fpistm fpistm merged commit 2b723f8 into stm32duino:master Oct 18, 2019
@fpistm
Copy link
Member

fpistm commented Oct 18, 2019

done

@ladyada
Copy link
Contributor Author

ladyada commented Oct 18, 2019

💙 thank u 💙

@fpistm
Copy link
Member

fpistm commented Oct 18, 2019

Welcome and welcome as contributor 😉

@ladyada
Copy link
Contributor Author

ladyada commented Oct 29, 2019

hiya i'm about to release the hardware for this, do you know if there's an eta for when the BSP is going to get the next minor update? i will have folks git clone the BSP for now

@fpistm
Copy link
Member

fpistm commented Oct 29, 2019

Well I don't think before december. I try to make a release every 3 months.

@ladyada
Copy link
Contributor Author

ladyada commented Oct 29, 2019

oki

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
new variant Add support of new bard
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants