Agree, vote plus 1 for JTAG.. Sales will definitely increase. M
Best posts made by mick
-
RE: Please allow jtag or jtag over usb on next version
Latest posts made by mick
-
RE: Node module control to play music with Bluetooth
Hi Salty, good one
Nice example for Node + Bluetooth. Would you be willing to share your code?
Cheers
M -
RE: DHT12 in Node base
Hi Engin, hows things?
Have you had any luck getting Node audio up and running?
Cheers
M -
Fire & Base Node
Hi all, hope everyone is well:..
My sml project involves playing .mp3's via SD card using Fire/M5 Node. What I did (while waiting for M5 Node) and works well, M5 Fire + M5 Bus module to break out GPIO pins for I2S Bus + attached an external I2S board and ear buds (see images). Using M5 example (PlayMP3FromSDToDac) and some tweaking I have audio streaming from SD card - sound great.
Now I have M5 Node and using LED RGB example, Ok that works, but not having much luck playing .mp3's using Fire & Node though. I know that the GPIO pins need to be remapped to suit I2S configuration on M5 Node (according to NODE docs), used/remapped GPIO 13,5 & 2 in PlayMP3FromSDToDAC example. So wondering (and thks in advance) if anyone may have some thought's.
Additional - does anyone know if any audio example's exist for the M5 Node?. Seems strange I.e create a nice bit of audio hardware + docs with no example! What am I missing here?
Cheers
MObjective
Modified code below works with external I2S (UDA1334), but not with M5Node
Node PinOuts - Using pins I2S, LRC/BCLK/DACDAT/ 5V & GND.
Works, UDA1334 connected to Fires I2S Bus via breakout (sounds awesome)
-
RE: Please allow jtag or jtag over usb on next version
Agree, vote plus 1 for JTAG.. Sales will definitely increase. M
-
RE: [Solved]Fire, PaHUB, & ADC (ADS1100)
Solved...
Remove 4.7K Ohm pull up's from i2c lines!, un-soldered from ADC (Mux resistors were too small/difficult to get to) would have liked to remove resistors from Mux as possible issue will also effect other connected units.
-
[Solved]Fire, PaHUB, & ADC (ADS1100)
Hi all, so just started playing with M5 - Nice!
Although early days, i've just ploughed into a possible noob problem! I'm needing to connect ADC (unit) via PaHub (unit) to M5 Fire (port A). All good except i'm getting way out comparison readings.. As follows
--> Using the ADC via PaHub to Fire (portA ) vs running ADC directly via Fire (portA) no PaHub.
So using ADC via PaHub reading ~ 2610 (Int), using ADC to Port A directly ~ 3120 (int), 1.2 VDC battery connected to ADC.
I'm aware that I2c pullUp resisters exist on HUB & ADC, in parallel (total ~ > 3 kOhm), which should be ok.
Any thoughts would be appreciated..
Cheers
/* hardware: M5Stack Fire, unit's --> M5 Mux (TCA9548A) + ADC (ADS1100) test00: connecting ADS board to TCA9548A then to M5 Stack Fire (port A) test01: TCA connected directly into Fires port A, not via TCA9548A connect: PORTA(21, 22) */ #include <Wire.h> // ADS1100 I2C address is 0x48 // TCA9548A I2C address is 0x70 #define ADC_Addr 0x48 #define MUX_Addr 0x70 //Hub range is 0 to 5 //Select port on mux 0-5 void muxPortSelect(uint8_t i) { if (i > 5) return; Wire.beginTransmission(MUX_Addr); Wire.write(1 << i); Wire.endTransmission(); } void setup() { int error = 0; // Initialise I2C communication as MASTER Wire.begin(); // Initialise Serial Communication, set baud rate = 115200 Serial.begin(115200); // Set Mux channel muxPortSelect(0); // <--- Comment out and plug ADC directly into port A // Set ADC Wire.beginTransmission(ADC_Addr); // Continuous conversion mode, 8 SPS, 1PGA //Wire.write(0x0C); // Stop I2C Transmission error = Wire.endTransmission(); if (error == 0) { Serial.println("OK we have ok"); } else { Serial.println("No Good -- Bummer"); } delay(100); } void loop() { unsigned int data[2]; // Request 2 bytes of data Wire.requestFrom(ADC_Addr, 2); // Read 2 bytes of data // raw_adc msb, raw_adc lsb if (Wire.available() == 2) { data[0] = Wire.read(); data[1] = Wire.read(); } // Convert the data float raw_adc = (data[0] * 256.0) + data[1]; if (raw_adc > 32767) { raw_adc -= 65536; } // Output data to serial monitor Serial.print("Digital Value of Analog Input : "); Serial.println(raw_adc); delay(300); }