Code Monkey home page Code Monkey logo

esplorer's Introduction

ESPlorer - MT Fork

Hello all,

Over the last few months I have been adding new functionality to ESPlorer to make it work better with MicroPython boards.

I was inspired by a friend to look into fixing and extending the MicroPython functions offered in ESPlorer. The main reason for doing so is that for new learners a GUI may be simpler to use than remembering the different text based syntaxes and idioms, and that I frequently found myself switching between 2 or 3 tools to accomplish simple tasks. Personally I prefer to have the choice between a text based and a GUI based IDE , so I can pick what works best for me, for a specific project.

I have made the following additions and fixes to improve uPython support:

Changes in v0.4.180525

  • some fixes to included python scripts
  • improve micropython hexdump function to deal with large files

Changes in v0.4.180524

  • Add MicroPython Folder Browse and Navigation Support
  • Added file icons for Python (looks much better now)
  • Fixed the Run button
  • Added a 'Ctrl-C' button to allow interruption of a running script
  • Improve FileSave and awareness of editor Script / Snippet context
  • Add Single File upload to MicroPython
  • Tweaked button and menu item enablement based on Open State

Changes in v0.3.180103

  • ESP Firmware detection improvements (not perfect yet on ESP32)
  • Add support for generic uPython, by using machine module in addition to pyb
  • Updates to Options UI and Preferences
  • Read GPIO input / output (uPython pyb and generic)
    • the GPIO buttons use the machine module or the pyb module according to preferences.
  • Update sample snippets to machine module
  • Unified File-Managers between LUA and uPython to single file manager
    • Fix list files in uPython
    • Add PopUp Menu to uPython files (*.py, *.pyc)
      • View file - View in Terminal
      • Hexdump file - View in Terminal
      • Remove file
      • Rename File
  • Fix line number alignment in Script and Snippet editor
  • Script Editor:
    • Save file to uPython (uses Hexlify to transfer contents with need for escaping)
    • Send file to uPython ( Executes script interactivly)
    • Run File
    • AutoRun on Save
    • Send Selected Block from editor to ESP
  • Snippet Editor:
    • Add Snippet names to buttons to simplify use
    • Add Popup menu to the snippet editor:
      • Send Line
      • Send Selected Block

Todo

There are more things that I want to do (as always), the main priorities after this are:

  • Add Download/Edit of files
  • Add tab completion
  • fix upload of large binary files
  • Integrate this into main branch (may need to be be quite a large PR)
  • connect via webrepl (but this will require a lot of refactoring of the existing code)

Testing :

- Testing currently has been limited to :
    ○ Windows 10 + ESP32 running Loboris MicroPython 1.9.3
    ○ Windows 7 + ESP32 running Loboris MicroPython 1.9.3
    ○ Windows 10 + ESP8622 running MicroPython 1.9.1 / 1.9.3
    ○ Windows 10 + ESP32 running MicroPython 1.9.3

My ask :

Could you please give this a try on other platforms and other micropython boards or firmware versions, and report both successes and failures ?

esplorer's People

Contributors

4refr0nt avatar josverl avatar nulrik avatar fluxw42 avatar unafraid avatar dl2zap avatar e7p avatar hmic avatar waffle-iron avatar mika-koivusaari avatar oddstr13 avatar bryant1410 avatar gitter-badger avatar devsaurus avatar xiongbinsh avatar

Watchers

Kent Hutson avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.