@jpilarski take a look at the I2C hub from Seeed; only problem is how many milliamps your I2C sensors need. My multichannel gas sensor (from Seeed) cannot run on the bus while the BME280 is on at the same time. btw addresses are configured properly.
Posts made by wschnell
-
RE: M5Go versus M5Stack
-
RE: Connecting multiple I2C devices
@calin People who use the M5Stack might be interested in how to avoid breadboards and soldering, and those who use Grove certainly are.
-
Connecting multiple I2C devices
Hi,
Just as an info:
I was wondering if there is a thing like a Grove Shield for the M5Stack. Now, the Grove shields do more, but for running in I2C mode Seeed Studio has the "I2C Hub". Cool thing for connecting 3 devices to the M5. -
RE: M5Stack - Simple Applications Menu + some APPs
found it - it's a Seeed Studio Wrapper
-
RE: M5Stack - Simple Applications Menu + some APPs
@sunwukong Hey, where did you get the enclosure for the grove sensor? - I've been looking for something like this.
-
RE: product suggestion - power plug bottom
I can power it through my mobile phone charger or a battery pack, just using a tiny USB3 Adapter; and I can power it off my solar panel. I just like the idea of having a web server (or whatever else I made ...) that I can plug into an AC socket.
-
RE: product suggestion - power plug bottom
That thing should have a CE certification, I think ...
-
product suggestion - power plug bottom
I would like to be able to buy a bottom element that is itself a power plug with a transformer. That way I could just plug the Stack into a wall socket and have a 24h-machine. And since I am in Europe, I would prefer to have the European model first :-)
That would also help put the Stack in a nice 45° angle while I am developing (while having the Stack connected to my PC by USB)
-
RE: Sim800l
the code above works with my SIM800L module.
not all is necessary, but maybe helpful …
what I have learned up to now:
-
it works with HardwareSerial; no libraries to declare; default pins
-
I can make phone calls
-
I can send and receive SMS
-
the audio of the phone is not connected to the M5Stack; it's just the bare minimum.
-
if required, I might connect a better antenna - there is a connector on the SIM800L module and a hole in the base module I could use.
-
no soldering, no cables, no voltage problems
-
no EDGE, no LTE
-
the LED on the SIM800L module can be seen through the headphone hole.
-
the Arduino IDE installation brings a GSM library, but it is not listed under examples in the IDE.
bye for now
Walter -
-
RE: Sim800l
#include <M5Stack.h>
HardwareSerial Serial2(2);
void setup() {
M5.begin();
M5.Lcd.printf("GSM Test"); // just to see that the program has started
Serial.begin(115200); // switch on the serial "terminal" of Arduino IDE// Serial2.begin(unsigned long baud, uint32_t config, int8_t rxPin, int8_t txPin, bool invert)
Serial2.begin(9600, SERIAL_8N1, 16, 17); // 9600 baud seems to be the default for modems; pins as printed on the PCB board
at("", 200);
at("Z", 200); // reset all parameters to the user defined profile
at("I", 200); // display product info
at("+CPIN?", 200); // unlocked ?
at("+CGREG?", 200); // check the registration status of the device
at("+COPS?", 2000); // get operator
at("+CSQ", 200); // check signal quality
at("+CNUM?", 200); // find phone number of the device
at("+CNUM", 2000); // find phone number of the device
at("+ATS0=3", 200); // answer incoming calls after 1 ring tone(s)
at("+CREG=1", 200);
at("+CREG?", 200);
at("+CFUN=?", 200); // list functionality levels
at("+CFUN=1", 200); // set to full functionality
// at("+COPS=1,0,"E-Plus"", 200);
at("+CR=?", 200); // service reporting control
at("+CGATT=?", 200);
at("+CGATT=1", 200);
Serial2.printf("AT+CSTT="%s","%s","%s"\r\n", apn, user, pass);
delay(200);
Serial.print(Serial2.readString());
at("+ICCID", 200);
at("+GSN", 200);
at("+CIICR", 200);
at("+CIFSR", 200);
at("+CPOL?", 200);
at("+COPS=?", 2000); // get operators
}void at(char* sCmd, unsigned long lDelay) {
Serial2.printf("AT%s\r\n", sCmd);
delay(lDelay);
Serial.print(Serial2.readString());
}// now that the intro is done, we go into an interactive loop, where we can enter AT commands or press a button to do something
void loop() {if(Serial.available()) {
int ch = Serial.read();
Serial2.write(ch);
M5.Lcd.write(ch);
}if(Serial2.available()) {
int ch = Serial2.read();
Serial.write(ch);
}
if (M5.BtnA.wasPressed()) {
M5.Lcd.printf("\nhangup");
at("H", 200); // hangup
}
if (M5.BtnB.wasPressed()) {
M5.Lcd.printf("\ndialing");
at("L8", 200); // volume 0-9
at("D0043xxxxxxxx;", 2000); // dial
}
if (M5.BtnC.wasPressed()) {
M5.Lcd.printf("\nsms");
at("+CMGF=1", 200); // set the GSM Module to text mode
at("+CMGS="+43xxxxxxxxxx"\rTest SMS by Walter\x1A", 2000); // sms
}
M5.update();
} -
RE: Sim800l
Just found an important fact that's mentioned nowhere: there are 2 ways to insert the SIM Card (uhm, maybe four …). Note that one corner is cut off. This does NOT go in first. When you put in the SIM Card, it will look towards your right hand.
Now the AT commands work ...