@hanktttop OK. I'm wading into this discussion without having a Cardputer!
My other ESP32-S3 and M5Stack Atom S3 and several StampS3s all work very well in my Arduino IDE environment. I also have a bunch of S3 products from a manufacturer whose name cannot be said. (coughs into hand...T-Display S3).
So I am familiar with this S3 series on a M1 iMac.
My iMac has two Thunderbolt ports and two USB ports. I used the USB ports just fine for M5Stack-pre-S3-models, but the S3 models wont even power up on USB, they need the Thunderbolt outputs.
So, get to the point, teastain.
Connection is VERY fussy and unpredictable with S3.
All of the M5Stack S3 products that I have seen have both of the necessary buttons available. The Cardputer even has them at the front(!) no need to remove the S3 or peel back the sticker on Cardputer. (in fact DO NOT remove the S3 with Cardputer!)
The GO button is actually GPIO 0 and is called 'boot'.
The 'rst' button is otherwise called 'EN' which cuts power to the core when pushed and resets when released.
Method 1 unplug the Cardputer from the USB, press and hold G0 (on the left side of the Cardputer, plug back in and release G0.
Method 2 while plugged in press and hold G0, press 'rst' on the right side, release 'rst', then release G0.
In both cases if your sketch does not boot up and run, it is recommended to unplug it and plug it back in to boot.
Best posts made by teastain
-
RE: Cardputer COM Not Working
-
RE: High Level Question regarding M5Stamp and Core2
Hi, I have a Core Basic HVAC program communicating with two Stamps using ESP_NOW and they are physically close, but the idea was to not run messy cables! The ESP_NOW is peer to peer WiFi, but no login to the internet or even the WiFi router.
One Stamp reads the HVAC vent temperature and reports to the Core, which in turn calculates the damper vane angle and transmits that back to the very same Stamp connected to a 180 servo motor.
The other Stamp just operates one or two small under desk heaters as required, by the Core.
Hope this helps.
Terry -
RE: How to change the I2C address of EXT.IO2
@felmue "For testing integrity" I'm using the github EXT.IO Zip download and running the DIGITAL_INPUT_OUTPUT example right from there and then later from my Arduino directory, after checking that both Libraries M5Stack And EXT_IO are up to date.
Note, stubbornly I am using Arduino 1.8.19.
The Example would not run until I added Wire.begin(21, 22); delay(1000);
Seriously. I take it out and the sketch throws errors.
I am also disappointed that setPinMode "came and went".
I am becoming discouraged with M5Stack, unfortunately. -
RE: Looking for kind souls to adopt this aged brain and eyes.
@ajb2k3 I really like the idea of REPL !
MY(!) aging brain is resisting learning a new programming language.
In the (late) 70's I programmed in machine code and felt C was a "high level language".
I will investigate Python, could be fun!
Cheers to all.
-
RE: Connecting M5stack to PCB with header and GPIO capacity.
@mtylerjr The Core Basic has 15 GPIO peripherally arranged in the battery base, as well as generous grounds and voltage options.
-
RE: The other M5Dial connectors...
@lordryck They are called Grove and are the standard for most M5Stack products.
https://shop.m5stack.com/pages/search-results-page?q=grove cable
Also used by Seeed products.
They're JST connectors type 'HY2.0-4P'.
-
RE: M5cardputer com is reading it as DFROBOT-Beetle
@coolman626 This is sadly a confusing aspect of Arduino IDE V2...a "feature" that guesses your board as a "convenience" and it's always wrong.
In the search box start typing M5Stack until you see your board!
Really no big deal!
-Terry -
RE: m5stack cardputer doesn't turn on.
@sl4sh00 To put it into 'download' mode you can do as @robski suggested or:
Press and hold the G0 Boot button...while holding it in, press and release the reset button, THEN release the G0 Boot.
While doing this you can check the connection status in whatever burner app you are using.
Please tell us if you can see the connection status AT ALL, this would be helpful in solving your problem. -
Stamp ext IO2 (SKU:S002) able to use individual pins, not just one mode for the whole board!
Currently it seems that the Stamp ext IO2 can only be in one mode for all pins, set by the command: (for example)
extio_io_mode_t mode = DIGITAL_OUTPUT_MODE;
or
extio.setAllPinMode(RGB_LED_MODE);
Also like the RGB mode to support a string, not just one SK6812.
Thanks for listening.
Terry -
RE: High Level Question regarding M5Stamp and Core2
Hi Thomas. The desk is wooden.
But you can expect typical range and "through walls" of a WiFi router in your house.
WiFi uses quite a bit more current than you might think.
I run mine on 5V iPhone white cube USB power supplies. -
RE: Stamp ext IO2 (SKU:S002) able to use individual pins, not just one mode for the whole board!
@felmue Hi Felix, me again.
Regarding the PaHub:
I found the Official M5Stack PaHub example to be of little help to write a useful project with 2 sensors with the same I2C address. I made this example very minimalist using a M5Stack Core Basic controller.
PaHub Example with 2 ENVII temperature sensors:
I put it on GitHub https://github.com/teastainGit/Simple-PaHub-example
Would you have time to look it over and "Maybe" submit it to M5Stack? To be added to their example for PaHub?
If not could you tell me how to submit it? I am asking you because you have a great reputation with them!!!
Cheers! Terry -
RE: ReInstall Original Screen on new Core2
Hi! When I got my Core2 there was an amazing Factory Test Demo program that showed all of the capabilities of the new "Core2".
After much digging I found the source code again here:
https://github.com/m5stack/M5-ProductExampleCodes/tree/master/Core/M5Core2/Arduino
The source code is C++ and will compile in Arduino IDE.
But...it is not written in hobbyist style Arduino code with
void setup()
void loop()Therefore I found it very difficult to "follow" (inscrutable) and found it of little use to me for further Arduino programs.
Brilliant and fun to watch Demo, though!
Hope this helps: Terry -
RE: ENV III unit on M5Stack CoreInk
@ajb2k3 The std ENV Library works with Stamp-PICO, but not Stamp-C3.
The GET works with PICO, not C3.
Bringing the library code into the Arduino void loop() works for both products.
I re-wrote the standard library to remove the GET and instead used this:
#include <SHT3Xnew.h>
unsigned int data[2];
float sensor() {
Wire.beginTransmission(0x44);
Wire.write(0x2C);
Wire.write(0x06);
if (Wire.endTransmission() != 0) {
Serial.println("not = 0 ");
}
delay(50);
Wire.requestFrom(0x44, 2);
data[0] = Wire.read();
data[1] = Wire.read();
delay(50);
return ((((data[0] * 256.0) + data[1]) * 175) / 65535.0) - 45;
}This Library works with both, but is just a test, only reads cTemp, ;)
-
ESP NOW worked for 1 year but suddenly stopped after Board/Library update!!!
Hi, all! I use a M5Stack Core Basic to communicate with two M5Stamp boards, in an HVAC app in my home office. (Using the latest Arduino ver 1.8.19) They all worked perfectly together as a stable solution...however...I had updated all my libraries as available. I wanted to edit a screen text and when I uploaded, the source compiled no problems, but the serial error message was "Failed to add peer" and "Error sending the data". (text messages in my code that I put there last year.
I had used the official M5Stack board def, so I tried the older ES32 Arduino folder, M5Stack-Core-RSP32, which USED to do the trick. Still no comm and I tried to revert the Board definitions and no joy.
My basic ESP NOW template is here: https://github.com/teastainGit/ESP_NOWpeer2peer/blob/main/ESPpeer2peer.ino
I put this code into two StickCPlus, with corrected MAC and it used to work. Push the big button on one and the LED on the other comes on, and the same the other way.
I am stuck and need help! Thanks, Terry -
RE: ESP NOW worked for 1 year but suddenly stopped after Board/Library update!!!
@teastain SOLVED!
On one hand it did work for several years with ""esp_now_peer_info_t peerInfo;" placed in the void setup() !!!
After the Board definition, somewhow changed, the project just stopped communicating.
Researching every line of my program revealed that it should have been before the setup() as a declaration.
Whew, my desktop application is back on line! -
RE: need your advice for data transfer from a CORE2 to an ATOM display !
@arno The built-in SPI would provide the fastest frame rate but trickier to access the SPI on the Core2, second choice is the built-in I2C interface accessible by the standard Grove port on the left side.
The Core2 is bereft of GPIO as a nod to WiFi BLE I2C ESP_NOW, etc, whereas the foundational Core Basic is better equipped with I/O options!!!
I think M5Stack announced recently a GPIO base to convert the Core2.
I have a Core2 running a simulated nixie-tube clock and two Core Basics.
https://shop.m5stack.com/collections/m5stack-new-arrival/products/extension-port-module-for-core2?variant=43165402398977Extension Port Module for Core2
SKU: M123 Regular price$6.95 Out Of Stock -
RE: What is the best way to connect an PWA with multiple M5 Controllers
@mchott ESP_NOW in peer to peer mode.
I wrote this simple bare-bones application to share with other makers.
https://github.com/teastainGit/ESP_NOWpeer2peer
I have a Core Basic communicating with two M5Stamps in the same room, controlling space heaters and an HVAC vent damper position. etc.
The github example is used in all three devices -
RE: Micropython on the core2
Hi Mike:
The Arduino IDE is a program environment using a very easy and convenient version of C, with some C++!
Very user friendly, but easy to get started. C compiles and overwrites everything in the ESP32.
Python is very easy to learn, but it is an Interpreted Language with a large memory usage in the board's core.
C is a world wide standard because it gets as close to the metal as you can stand.
I've been using Arduino IDE ver1 for ten years The new version 2 is more powerful, but more confusing. -
RE: How to change the I2C address of EXT.IO2
@gorilla As I have a Core Basic and several EXT.IO2s I tried the Sample from M5Stack called DIGITAL_INPUT_OUTPUT downloaded directly, this minute and all I get is "extio Connect Error", same as you, you are not alone!
I ran my homebrew EXT.IO2 no library version with the C code in-line and it works fine, connected and flashing.
Attn @felmue I dug up my program from July, from AFTER you added "extio.setPinMode", which worked fine, then, but NOW the same program won't compile and throws error "class M5_EXTIO2' has no member named 'setPinMode'; did you mean 'setAllPinMode'?"
Please help!