[Solved]Where to get basic (offline?) MicroPython firmware with lcd module support?



  • Hello, I flashed UIFLOW 1.0.0 for M5STICK but LCD doesn't work (blank screen).
    Code :
    from m5stack import *
    from m5ui import *

    lcd.clear()
    lcd.print('hello world', 0, 0, 0xffffff)
    speaker.tone(1600, 200)


  • M5Stack



  • @lukasmaximus
    What is the firmware I need to use if I want to have the repl displayed directly on the lcd of the m5stack as seen here. alt textthanks


  • M5Stack

    Hi @jpilarski I haven't been able to access the REPL from the M5stack screen myself sorry, where did you find this image?



  • @lukasmaximus
    The image is from https://forum.micropython.org/viewtopic.php?t=1996&start=10 but when I purchased the m5stack faces it had the on screen shell loaded and working. My problem is I don't know which firmware to use to get it back to original.


  • M5Stack

    faces.py and main.py are the only libraries I can find for the keyboard right now https://docs.m5stack.com/#/en/quick_start/m5core/m5stack_core_get_started_MicroPython_m5cloud

    Let me check once I get hold of a faces keyboard to test



  • @lukasmaximus
    I tried those but that isn't the code that gives you an on screen shell. The faces board I recently purchased had a different micropython loaded than the m5cloud firmware and it booted right into an on screen repl. If I remember correctly I think it said micropython version 1.9.3 at the top of the shell but I might be wrong about that. Anyways all the faces.py and main.py appear to do is allow you to type using the keyboard and print it out on screen but I don't think they give you access to the on screen repl. From what I gather it looks like it makes the most sense to use uiflow firmware on faces and that "faces_repl.py" code should be available in the apps page in the on board startup list. It would also be really great if there were blocks in UIflow so faces could be more easily used in Uiflow. thanks


  • M5Stack

    I think they must have been using loboris's micropython version, as I haven't seen any of our engineers using or suggesting this function. in the forum you linked to it mentioned something about the webrepl, I have seen various guides on how to do this for esp32, but haven't tried it myself on the m5stack yet



  • @lukasmaximus
    I purchased the faces device from the m5stack store, is it best to contact them directly on how to get a copy of the firmware they are shipping on the device. Also I have been trying to get faces to work in UIflow but I keep getting I2C bus already used. Is it possible to get an example of how to use the i2c blocks.


  • M5Stack

    @jpilarski I opened up a stock faces keyboard device, and serialed into it, all that was on the flash was a boot.py file that only contained one line
    # This file is executed on every boot (including wake-boot from deepsleep)
    So as you say it must be the firmware of the device, and i'm unaware of any way to extract it. Best to wait until the team get back from chinese new year holiday and ask then. Although it's nice to have repl on the device itself I personally felt that the keys were too close together to really have an enjoyable session on the device and there was no way to scroll up through the log or use upper case letters. Also besides from playing with the pins and internal sensors I doubt it would be useful for anything else, might be nice if you could connect two m5's together and have one display the repl of the other though.



  • @jpilarski said in Where to get basic (offline?) MicroPython firmware with lcd module support?:

    @lukasmaximus
    What is the firmware I need to use if I want to have the repl displayed directly on the lcd of the m5stack as seen here. alt textthanks

    You can find it here



  • I too had a FACES M5Stack arrive running a python repl that was lost as soon as I flashed another program.
    There was an EOINT error of some kind, possibly something crashed to the python repl and it wasn't intended to ship that way?
    Regardless, I would very very much like to be able to extend the python repl on the device. The keyboard face is awesome, and there is plenty of functionality to add, like scrollback.
    What source was this image built from? I think that it was compiled by Ziban based on strings inside the image.



  • I did come across this info about on screen repl https://forum.micropython.org/viewtopic.php?t=5589

    i2c = machine.I2C(scl=machine.Pin(4), sda=machine.Pin(5))
    oled = ssd1306.SSD1306_I2C(128, 64, i2c)
    from FBConsole import FBConsole
    console = FBConsole(oled)
    os.dupterm(console)
    


  • @jpilarski That's helpful!
    I'll give that a shot tonight and see how it goes.

    Overall, there are a lot of things I want to document about the M5Stack in terms of running micropython. I'm learning TONs of fun new stuff since I got it.



  • @sethwoodworth I mate, sorry, documenting micropython has been delayed as I'm working on UIFlow blocky side of things along with hardware. You can see my progress in projects section.



  • @ajb2k3 said in [Solved]Where to get basic (offline?) MicroPython firmware with lcd module support?:

    @sethwoodworth I mate, sorry, documenting micropython has been delayed as I'm working on UIFlow blocky side of things along with hardware. You can see my progress in projects section.

    Huge apologies! I didn't mean to criticize, I meant to say there is an opportunity for me to contribute to the ecosystem. The M5Stack hardware is absolutely fantastic, and I absolutely love what you're doing with blockly, and will very likely contribute code to those projects. I'm shocked that the platform isn't more popular already! The Odroid-go has less-awesome hardware than the FACES kit, and is 3/5s of the price.

    You really ought to sell a version of the FACES kit with only the gameboy face and core unit, once you have better documentation around the emulation/homebrew situation. If you could sell it for around the price of the odroid-go, you'd get a lot of folks invested in the platform.



  • @sethwoodworth said in [Solved]Where to get basic (offline?) MicroPython firmware with lcd module support?:

    @ajb2k3 said in [Solved]Where to get basic (offline?) MicroPython firmware with lcd module support?:

    @sethwoodworth I mate, sorry, documenting micropython has been delayed as I'm working on UIFlow blocky side of things along with hardware. You can see my progress in projects section.

    Huge apologies! I didn't mean to criticize, I meant to say there is an opportunity for me to contribute to the ecosystem. The M5Stack hardware is absolutely fantastic, and I absolutely love what you're doing with blockly, and will very likely contribute code to those projects. I'm shocked that the platform isn't more popular already! The Odroid-go has less-awesome hardware than the FACES kit, and is 3/5s of the price.

    You really ought to sell a version of the FACES kit with only the gameboy face and core unit, once you have better documentation around the emulation/homebrew situation. If you could sell it for around the price of the odroid-go, you'd get a lot of folks invested in the platform.

    Sorry if it sounded like a complaint, I didn't mean it to and you are welcome to write your own book as mine will be somewhat basic. (aimed more at beginners)
    If you do start writing, please feel free to share some here as I don't use anything written by forum members without requesting and attributing.
    I'm sharing my WIP work so that I can improve and create a manual that people will want to use.
    @lukasmaximus @m5-docs would there be interested in @sethwoodworth's faces suggestion?
    @sethwoodworth there is nothing to stop you from working on it in fact, If you know enough about that then I recommend you have a go at trying to create an emulation document.


  • M5Stack

    I think @sethwoodworth suggestion is a great idea and one that i've thought about alot myself. Some classic games such as doom, duke nukem and tyrian have been ported already to the esp32 our Japanese community have also released some games and emulators for retro computers that were released only in Japan it would just take someone with the technical know how to alter a few things in the code to get some of the aforementioned games running on the M5Stack. I personally feel the buttons on the gameboy face feel a little cheap and not so comfortable for gaming but once the emulation/homebrew scene for m5stack is more lively I think it would be very beneficial for us to release a gaming kit which feels nicer for gaming, I'd prefer a super nintendo style controller mounting with the buttons and dpad on opposite sides off the screen not sure what you guys think of that


Log in to reply
 

Looks like your connection to M5Stack Community was lost, please wait while we try to reconnect.