SOLUTION
I found the solution:
You need to follow these steps
Remove all modules, leaving only the host
Then try to lower the baud rate when burning
If there are wires, you can short-circuit G0-GND before powering on the device and then power on again.
I had a really hard time finding how to use the Port A of the M5Grey with the Port C GPS unit. After many hours
I figured it out.
Define the pins to use:
#define APortM5DialRxPin 15 //M5Dial PortA
#define APortM5DialTxPin 13 //M5Dial PortA
#define APortM5CoreRXPin 22. //M5Grey PortA
#define APortM5CoreTXPin 21. //M5Grey PortA
Define the HardwareSerial port.
HardwareSerial GpsSerial(2);
In setup begin the serial communication
GpsSerial.begin(GPSBaud, SERIAL_8N1, APortM5CoreRXPin, APortM5CoreTXPin);
I hope this will save people a lot of time
Well, I go the M5Unified example working. I'm not sure why I failed on that yesterday, nor which element in there causes it to function correctly where the simple test (above) fails. But I'm accepting the win and absorbing the nicer code into mine. 😉
Firmware: M5GO core
Version: 1.13.2
Use according to the guide, graph receives data for 1 cycle, M5GO crashes afterwards.
Error" File "<string> ". line 56 in addToList Exception: 16
I've successfully flashed the FACES-Firmware, using this command line
esptool.py --chip esp32 --port /dev/ttyUSB0 --baud 460800 write_flash -z 0x1000 ./m5stack-micropython-tft-repl-v1.0.bin
After this, I got this prompt:
The OSError is due to a missing main.py. After adding this with mu-edit, the error no longer occurs.
The REPL is also available on the serial interfaces, accessing it with tio /dev/ttyUSB0
Hi, some suggestions for the next hw iteration:
connect imu irq pin
connect rtc irq pin to esp32 to let us know whether the irq comes from power button or rtc
let the buttons go out the case for easier access
reduce time of power on btn to a single click
seperate LED and IR for incognito use
add the L-R-Center button from the M5Paper
Thank you so much for the quick response. Indeed, the pins for the I2C communication are not matching. Given that the only marking on the module is '5V' and I2C, is it possible to reroute the wiring of the I2C from the back of the driver module? Also, I noticed a Core2 mark on the driver—does this have implications of how the Core 2 should be connected?
Thanks again for all the support
Hello @alexylem
only so called RTC_GPIOs can wake ESP32 from deep sleep. Unfortunately GPIO_NUM_5 is not one of them.
Please check out page 15 - Pin description of the ESP32 datasheet.
Thanks
Felix
Hello guys
there is a new version, M5Paper V1.1, available in the M5Stack store. It seems to be more or less identical with the original version, maybe except for the e-Ink screen panel?
Does anyone understand below comment from the M5Paper product description?
'M5Paper v1.1 adopts flexible e-Ink screen panel, which is the same model as that of M5Paper v1.0 hard e-Ink screen panel. All features and specs are the same for both models.'
Is the new and old version actually the same or not? And what is the difference between a flexible and a hard e-Ink screen panel?
Thanks
Felix
Hello Wold101,
Thanks for your answer.
I need to continue to use the M5Stack Core as I have made some backplane electronics and need to use the M5Stack stock.
I didn't know about this post and I already used a diode and had a bug with the ESP. Probably this problem of low battery charge.
The idea is great to use a MAX40200 but it requires extra wiring.
I tried with a capacitor. I have some 4700µf in stock at 63V.
I like this solution, no modification and it works well.
I will test it over several days.
I use this code in stickc as esp receiver for debug. And on other atom lite i use only broadcast datablock with convert to str block with my message. And its works.
@m5stack thnx, I solved this problem - indeed I had to load board definitions
Also this YT-video 'M5Paper Seasons Greetings Display' was helpful: https://youtu.be/Tjz4fGRn8fo
When you install UIFlow and finish setting up the wifi, the API key will be displayed on the screen along with the mode and the network you have connected the device to.
As mentioned in the other thread, the missing step is transferring the canvas framebuffer to the EPD.
If your loop function is changed as below, it works as you expect.
void loop() {
for (int i=1; i<7; i++)
{
canvas1.drawString(testString[i],20,20);
/* m5epd_err_t UpdateArea(uint16_t x, uint16_t y, uint16_t w, uint16_t h, m5epd_update_mode_t mode); */
M5.EPD.WriteFullGram4bpp((uint8_t*)canvas1.frameBuffer());
M5.EPD.UpdateArea(0,0,100,100,UPDATE_MODE_GL16);
delay(1000);
}
}
I found the following documents.
Command description
https://github.com/espressif/esptool/wiki/Advanced-Commands#write_flash_status
Source code
https://github.com/espressif/esptool/blob/master/esptool.py
L3499
def write_flash_status(esp, args)
GD25Q32C datasheet
http://www.elm-tech.com/ja/products/spi-flash-memory/gd25q32/gd25q32.pdf
@world101 said in M5Paper and API Key:
@ajb2k3 Actually, most of the time when I flash new firmware with M5Burner, it does assign a new API key to my device. Maybe that is because I always erase the flash before burning the firmware. I just tried it and it gave me a new API key.
@k33g give it a try. The Erase button is in the upper right corner of M5Burner. Then burn the latest M5Paper firmware.
I thought i was supposed to but for me, lately, it looked to always generate the same api.
Hi @fonix232
thank you for the clarification. Yes, being able to wake up the system from shutdown mode via touch would be nice (like it is already possible using an RTC timer or alarm).
Thanks
Felix