File tree Expand file tree Collapse file tree
radio/src/targets/common/arm/stm32 Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -175,6 +175,9 @@ static void _wait_ms(uint32_t delay_ms)
175175
176176static uint8_t vs1053b_write_cmd (uint8_t address, uint16_t data)
177177{
178+ // ensure chip is ready before sending command
179+ vs1053b_wait_dreq (100 );
180+
178181 stm32_spi_set_max_baudrate (_instance->spi , SPI_LOW_SPEED);
179182 XDCS_HIGH ();
180183
@@ -203,7 +206,8 @@ static void vs1053b_hard_reset()
203206 _reset_high ();
204207
205208 // datasheet says 1.8ms at default clock speed
206- vs1053b_wait_dreq (3000 );
209+ vs1053b_wait_dreq (5000 );
210+ _wait_ms (20 );
207211}
208212
209213static uint32_t vs1053b_send_data (const uint8_t * buffer, uint32_t size)
@@ -324,7 +328,7 @@ void vs1053b_init(const vs1053b_t* dev)
324328 vs1053b_update_volume ();
325329
326330 vs1053b_write_cmd (SPI_CLOCKF, 0x9800 );
327- vs1053b_wait_dreq (1000 );
331+ vs1053b_wait_dreq (5000 );
328332
329333 stm32_spi_set_max_baudrate (_instance->spi , SPI_HIGH_SPEED);
330334 vs1053b_send_riff_header ();
You can’t perform that action at this time.
0 commit comments