Giter Club home page Giter Club logo

junkiwang / mcush Goto Github PK

View Code? Open in Web Editor NEW

This project forked from pengshulin/mcush

0.0 1.0 0.0 188.38 MB

MCUSH application platform (personal toolkit: firmware platform, debugger, hardware, test and application framework)

C 92.58% HTML 1.15% Assembly 3.90% C++ 1.34% Python 0.27% GDB 0.01% Makefile 0.06% Shell 0.01% CMake 0.01% Ruby 0.06% Objective-C 0.01% Batchfile 0.01% TeX 0.02% CSS 0.01% LSL 0.39% Awk 0.01% D 0.02% C# 0.15% Perl 0.05% Inno Setup 0.01%

mcush's Introduction

DESCRIPTION

  • MCUSH is the short name for MCU-SHell.
  • A practical project that enhance microcontroller serial port console with shell features like in many linux systems.
  • The goal of the project is to provide a firmware template that will expand commands for new applications, so it should be designed with simple API and easy to use.
  • MCUSH is heavily based on FreeRTOS, the core shell runs as a stand-alone task with middle level priority.
  • Test suites and templates written in python are privided to ease the test work and create CLI/GUI applications.
  • Hosted on github: https://github.com/pengshulin/mcush
  • Python core module released on PYPI and installed by 'pip install mcush'

FEATURES

  • SUPPORT:
    • command functions are called with arguments in form of argc and argv
    • arguments parser with short option '-' and long option '--'
    • low memory requirement, suitable for some tiny chips
    • prompt hook function for customize
    • compact history command list
    • multi-line input
    • may port to different architectures, but currently it runs on CORTEX-M only
  • NOT SUPPORT:
    • lineedit features that require multi-bytes (such as array keys, shell colors...) are not supported, only simple features that require single-byte (such as BACKSPACE, Ctrl-A/B/C/D/E/F/K/N/P) are supported

ROADMAP

(done)

  • run the basic shell on STM32 chips
  • add commands to control more peripherals
  • use USB virtual com port driver provided by ST
  • add file system support (spiffs...)
  • add file utils (ls,cp,rm,cat,...) for file system
  • add ST/HAL Driver support

(todo/in progress)

  • test embedded dynamic languages (eg. lua/picolisp/tinyscheme/micropython...)
  • add bootloader and upgrade support
  • add practical utilities for lwip network, such as traceroute, ntp update...
  • add remote debug support

ENVIRONMENT

RESOURCES

HARDWARE

LICENSE

  • source codes:
    • As this is my personal software toolkit, you can use it freely only for non-commercial purpose.
    • Contact the author for commercial authorization, or it's NOT AUTHORIZED.
  • binary executables:
    • images provided in build directory are free as BSD
  • hardware design files:
    • similar to the source codes: need commercial authorization

COMMERCIAL

Contact Shanghai Linkong Software Technologies Co., Ltd for commerical support. http://www.linkongsoft.com/

AUTHOR

Peng Shulin [email protected] Shanghai, China 2020

mcush's People

Contributors

pengshulin avatar

Watchers

James Cloos 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.