@@ -24,22 +24,59 @@ const char *path = "/med";
2424int httpPort = 8000 ;
2525
2626// These are the pins used
27- #define VS1053_RESET -1 // VS1053 reset pin (not used!)
28- #define VS1053_CS 7 // VS1053 chip select pin (output)
29- #define VS1053_DCS 6 // VS1053 Data/command select pin (output)
30- #define VS1053_DREQ 3 // VS1053 Data request, ideally an Interrupt pin
31- #define ESP_CS 10
32- #define ESP_READY 9
33- #define ESP_RESET 8
34- #define ESP_GPIO0 -1
35-
27+ #if defined(ADAFRUIT_FEATHER_M4_EXPRESS) || defined(ADAFRUIT_FEATHER_M0_EXPRESS) || defined(ARDUINO_AVR_FEATHER32U4) || defined(ARDUINO_NRF52840_FEATHER)
28+ #define VS1053_RESET -1 // VS1053 reset pin (not used!)
29+ #define VS1053_CS 6 // VS1053 chip select pin (output)
30+ #define VS1053_DCS 10 // VS1053 Data/command select pin (output)
31+ #define VS1053_DREQ 9 // VS1053 Data request, ideally an Interrupt pin
32+ #define ESP_CS 13
33+ #define ESP_RESET 12
34+ #define ESP_READY 11
35+ #define ESP_GPIO0 -1
36+ #elif defined(ARDUINO_AVR_FEATHER328P)
37+ #define VS1053_RESET -1 // VS1053 reset pin (not used!)
38+ #define VS1053_CS 6 // VS1053 chip select pin (output)
39+ #define VS1053_DCS 10 // VS1053 Data/command select pin (output)
40+ #define VS1053_DREQ 9 // VS1053 Data request, ideally an Interrupt pin
41+ #define ESP_CS 4
42+ #define ESP_RESET 3
43+ #define ESP_READY 2
44+ #define ESP_GPIO0 -1
45+ #elif defined(ARDUINO_NRF52832_FEATHER )
46+ #define VS1053_RESET -1 // VS1053 reset pin (not used!)
47+ #define VS1053_CS 30 // VS1053 chip select pin (output)
48+ #define VS1053_DCS 11 // VS1053 Data/command select pin (output)
49+ #define VS1053_DREQ 31 // VS1053 Data request, ideally an Interrupt pin
50+ #define ESP_CS 16
51+ #define ESP_RESET 15
52+ #define ESP_READY 7
53+ #define ESP_GPIO0 -1
54+ #elif defined(TEENSYDUINO)
55+ #define VS1053_RESET -1 // VS1053 reset pin (not used!)
56+ #define VS1053_CS 3 // VS1053 chip select pin (output)
57+ #define VS1053_DCS 10 // VS1053 Data/command select pin (output)
58+ #define VS1053_DREQ 4 // VS1053 Data request, ideally an Interrupt pin
59+ #define ESP_CS 5
60+ #define ESP_RESET 6
61+ #define ESP_READY 9
62+ #define ESP_GPIO0 -1
63+ #else // Shield version
64+ #define VS1053_RESET -1 // VS1053 reset pin (not used!)
65+ #define VS1053_CS 7 // VS1053 chip select pin (output)
66+ #define VS1053_DCS 6 // VS1053 Data/command select pin (output)
67+ #define VS1053_DREQ 3 // VS1053 Data request, ideally an Interrupt pin
68+ #define ESP_CS 10
69+ #define ESP_READY 9
70+ #define ESP_RESET 8
71+ #define ESP_GPIO0 -1
72+ #endif
3673
3774Adafruit_VS1053 musicPlayer = Adafruit_VS1053(VS1053_RESET, VS1053_CS, VS1053_DCS, VS1053_DREQ);
3875
3976// Use WiFiClient class to create HTTP/TCP connection
4077WiFiClient client;
4178
42- int lastvol = 30 ;
79+ int lastvol = 20 ;
4380
4481#if defined (__AVR__)
4582 #define BUFFER_SIZE 128
@@ -56,20 +93,6 @@ void setup() {
5693
5794 Serial.println (F (" \n\n Adafruit VS1053 Feather WiFi Radio" ));
5895
59- /* ************************ INITIALIZE MP3 Shield */
60- if (! musicPlayer.begin ()) { // initialise the music player
61- Serial.println (F (" Couldn't find VS1053, do you have the right pins defined?" ));
62- // while (1) delay(10);
63- }
64-
65- Serial.println (F (" VS1053 found" ));
66- // musicPlayer.sineTest(0x44, 10); // Make a tone to indicate VS1053 is working
67-
68- // Set volume for left, right channels. lower numbers == louder volume!
69- musicPlayer.setVolume (lastvol, lastvol);
70-
71- // don't use an IRQ, we'll hand-feed
72-
7396 /* ************************ INITIALIZE WIFI */
7497 WiFi.setPins (ESP_CS, ESP_READY, ESP_RESET, ESP_GPIO0);
7598 Serial.print (F (" Connecting to SSID " )); Serial.println (ssid);
@@ -82,6 +105,19 @@ void setup() {
82105 Serial.println (F (" WiFi connected" ));
83106 Serial.println (F (" IP address: " )); Serial.println (WiFi.localIP ());
84107
108+ /* ************************ INITIALIZE MP3 Shield */
109+ if (! musicPlayer.begin ()) { // initialise the music player
110+ Serial.println (F (" Couldn't find VS1053, do you have the right pins defined?" ));
111+ while (1 ) delay (10 );
112+ }
113+
114+ Serial.println (F (" VS1053 found" ));
115+ // musicPlayer.sineTest(0x44, 10); // Make a tone to indicate VS1053 is working
116+
117+ // Set volume for left, right channels. lower numbers == louder volume!
118+ musicPlayer.setVolume (lastvol, lastvol);
119+
120+ // don't use an IRQ, we'll hand-feed
85121 /* ************************ INITIALIZE STREAM */
86122 Serial.print (F (" Connecting to " )); Serial.println (host);
87123
0 commit comments