Daisy seed pinout usart_1 RX pin 37 or pin 15

I’m a little confused by the daisy seed pinout.
usart1 RX appears on pin 37 and on pin 15.
How is that managed ?

At the moment, UART config is still fairly limited through libdaisy (i.e. only the primary UART1 is implemented).

When we get around to adding the multi-peripheral support (like in I2C, etc.) you will be able to use either pin for UART1 Rx. The STM32 has many alternate functions for various pins, and there are several that overlap to allow for more flexibility when desigining hardware.

This will be fairly transparent through libdaisy. You’ll be able to pass either pin to the config struct, and it will automagically assign the correct alternate function configuration, etc. for that pin.

2 Likes

I’ve been looking at the USART too, as a means of communicating bettween a number of Daisies. More functionality in libdaisy would definitely be appreciated!

I found the pinout diagram a bit confusing too. From the tests I’ve been doing on transmitting it appears that calling UartHandler::PollTx() sends data out on pin 14 and nothing on pin 36.

MidiHandler in Midi.h seems to be using pins 14 and 15 too.

So I’m assuming that pins 14 and 15 are the ones to use for USART1 for now.

1 Like

I can see why there was some confusion on the pinout. The inner-most features are the mappings that were added to libdaisy first and were often hard coded. This is slowly changing (I2C has support for multiple peripherals now, and more are coming as well) so that multiple peripherals and any of the pins available can be used for them.

U(S)ART is one of the next planned for this expansion. For now, (hardware) pins 14 and 15 are the ones set up for this protocol by default.

1 Like

Thanks @shensley,
it works quite fine, now i can experiment with MIDI and try to port a part of my Axoloti code and see how and what is possible with the Daisy Seed (my goal is to have the same palette as the Axoloti but at a 96kHz sample rate, at the moment i use x2 oversampling and a custom /2 decimator to simulate this).

1 Like