@@ -39,7 +39,7 @@ void setup() {
3939 // === Spectral Engine Configuration ===
4040 Serial.println (F (" \n --- Spectral Configuration ---" ));
4141
42- as7343.setGain (AS7343_GAIN_256X );
42+ as7343.setGain (AS7343_GAIN_64X );
4343 Serial.print (F (" Gain: " ));
4444 switch (as7343.getGain ()) {
4545 case AS7343_GAIN_0_5X :
@@ -171,30 +171,12 @@ void setup() {
171171void loop () {
172172 uint16_t readings[18 ];
173173
174- // Start measurement
175- as7343.startMeasurement ();
176-
177- // Wait for data with timeout
178- uint32_t start = millis ();
179- while (!as7343.dataReady ()) {
180- if (millis () - start > 500 ) {
181- Serial.println (F (" Timeout waiting for data!" ));
182- return ;
183- }
184- delay (1 );
174+ if (!as7343.readAllChannels (readings)) {
175+ Serial.println (F (" Read failed!" ));
176+ delay (500 );
177+ return ;
185178 }
186179
187- // Check saturation
188- if (as7343.isAnalogSaturated ()) {
189- Serial.print (F (" [ANALOG SAT] " ));
190- }
191- if (as7343.isDigitalSaturated ()) {
192- Serial.print (F (" [DIGITAL SAT] " ));
193- }
194-
195- // Read all channels
196- as7343.readAllChannels (readings);
197-
198180 // Print in wavelength order for easier reading
199181 Serial.print (F (" F1:" ));
200182 Serial.print (readings[AS7343_CHANNEL_F1 ]);
@@ -220,10 +202,7 @@ void loop() {
220202 Serial.print (F (" \t F8:" ));
221203 Serial.print (readings[AS7343_CHANNEL_F8 ]);
222204 Serial.print (F (" \t NIR:" ));
223- Serial.print (readings[AS7343_CHANNEL_NIR ]);
224-
225- Serial.print (F (" \t VIS:" ));
226- Serial.println (readings[AS7343_CHANNEL_VIS_TL_0 ]);
205+ Serial.println (readings[AS7343_CHANNEL_NIR ]);
227206
228207 delay (100 );
229208}
0 commit comments