Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
39 changes: 39 additions & 0 deletions .github/workflows/codeql-analysis.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
name: "CodeQL"

on:
push:
branches: [ master, develop ]
pull_request:
# The branches below must be a subset of the branches above
branches: [ master ]
schedule:
- cron: '39 7 * * 6'

jobs:
analyze:
name: Analyze
runs-on: ubuntu-latest
permissions:
actions: read
contents: read
security-events: write

strategy:
fail-fast: false
matrix:
language: [ 'python' ]

steps:
- name: Checkout repository
uses: actions/checkout@v2

- name: Initialize CodeQL
uses: github/codeql-action/init@v1
with:
languages: ${{ matrix.language }}

- name: Autobuild
uses: github/codeql-action/autobuild@v1

- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v1
6 changes: 0 additions & 6 deletions .github/workflows/coverage.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,21 +4,15 @@ name: Coverage (Coveralls)
on: [push, pull_request]

jobs:
# Runs coverage and upload it
coverage:
name: Coverage Test
# The type of runner that the job will run on
runs-on: ubuntu-latest

# Steps represent a sequence of tasks that will be executed as part of the job
steps:
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- uses: actions/checkout@v2
- name: Set up Python environment
uses: actions/setup-python@v2
with:
python-version: 3.6
# Runs a set of commands using the runners shell
- name: Install dependencies
run: |
python -m pip install --upgrade pip
Expand Down
14 changes: 14 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,9 @@ on:
jobs:
deploy:
runs-on: ubuntu-latest
permissions:
contents: read
packages: write

steps:
- uses: actions/checkout@v2
Expand Down Expand Up @@ -69,6 +72,17 @@ jobs:
run: |
python setup.py sdist bdist_wheel
twine upload --skip-existing dist/*
- name: login-to-ghcr
uses: docker/login-action@v1
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.LUXROBO_TOKEN }}
- name: build-and-push-docker-image
uses: docker/build-push-action@v2
with:
push: true
tags: ghcr.io/luxrobo/pymodi:${{ steps.checkout_branch.outputs.version }}
- name: send-release-email
uses: dawidd6/action-send-mail@v2.2.0
with:
Expand Down
7 changes: 6 additions & 1 deletion AUTHORS.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,9 @@ Maintainer

Committer
---------
- Jinsung Ha (jinsung@luxrobo.com)
- Jinsoo Heo (koriel@luxrobo.com)
- Jinsung Ha (jsung5381@naver.com)
- Sebeom Lee (moses97@gmail.com)

Contributors
------------
Expand All @@ -22,3 +24,6 @@ Contributors
- Sebeom Lee (moses97@gmail.com)
- Doyeon Kim (archdo0909@gmail.com)
- Seokyoung Woo (wsy8029@gmail.com)
- Seungyoon Lee (syoon624@gmail.com)
- Jemin Yeon (yjm9507@yonsei.ac.kr)

7 changes: 7 additions & 0 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
FROM python:3.6-slim-buster
COPY . /usr/src/app
WORKDIR /usr/src/app
RUN python setup.py install --user
WORKDIR /workspace

LABEL org.opencontainers.image.source="https://github.com/luxrobo/pymodi"
10 changes: 9 additions & 1 deletion HISTORY.md
Original file line number Diff line number Diff line change
Expand Up @@ -104,11 +104,19 @@ History
2. Improve BLE connection stability in Linux Platform
3. Implement module usage manual (i.e. quick-start)
4. Implement module inspection functionality (i.e. diagnose)
5. Refactor GUI debugger design, fix initialization issue on macOS
5. Refactor GUI debugger design, fix initialization issue on macOS

1.1.0 (2020-12-17)
--
1. Implement GUI Firmware Updater in PyMODI
2. Implement network base (STM32) firmware updater
3. Implement GD32 firmware updater
4. Implement [VirtualMODI](https://github.com/luxrobo/virtual-modi) integration code

1.2.0 (2022-02-16)
--
1. Detach GUI Firmware Updater from PyMODI to individual repo
2. Implement web client method for MODI json connection
3. Package PyMODI into a dockerfile via GHCR
4. Fix minor bug in BLE connection

13 changes: 1 addition & 12 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -33,12 +33,6 @@ PyMODI provides a control of modular electronics, [MODI](https://modi.luxrobo.co
* Update of MODI firmware consisting of both ESP32 and STM32 modules
* Direct manipulation of MODI network module using [MODI Play](https://play.google.com/store/apps/details?id=com.luxrobo.modiplay&hl=en_US)

UML Diagram
-----------
<p align="center">
<img src="https://github.com/LUXROBO/pymodi/blob/master/docs/_static/img/umldiagram.svg?raw=true">
</p>

Build Status
------------
|master|develop|
Expand Down Expand Up @@ -80,7 +74,7 @@ python --version

Install the latest PyMODI if you haven't installed it yet:
```commandline
python -m pip install -U pymodi --user
python -m pip install pymodi --user --upgrade
```

You can also install PyMODI at develop branch (containing latest changes but it can be unstable) with:
Expand Down Expand Up @@ -181,11 +175,6 @@ To update MODI modules (all modules but the network module),
$ python -m modi --update_modules
```

To update firmware in GUI mode (all three commands above are available)
```commandline
$ python -m modi --update_in_gui
```

To diagnose MODI modules (helpful to find existing malfunctioning modules),
```commandline
$ python -m modi --inspect
Expand Down
Binary file modified docs/_static/img/logo.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file removed docs/_static/img/logo2.jpg
Binary file not shown.
Binary file removed docs/_static/img/logo3.jpg
Binary file not shown.
20 changes: 5 additions & 15 deletions modi/__main__.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,10 +7,10 @@

import modi

from modi.util.debugger import Debugger
from modi.util.usage_instructor import UsageInstructor
from modi.util.tutor import Tutor
from modi.util.inspector import Inspector
from modi.util.debugging_util import Debugger
from modi.util.usage_util import UsageInstructor
from modi.util.tutorial_util import Tutor
from modi.util.inspection_util import Inspector

from modi.util.firmware_updater import STM32FirmwareUpdater
from modi.util.firmware_updater import ESP32FirmwareUpdater
Expand Down Expand Up @@ -50,7 +50,7 @@ def check_option(*options):
try:
# all commands should be defined here in advance
opts, args = getopt(
sys.argv[1:], "tamhvpdinubgxy",
sys.argv[1:], "tamhvpdinubxy",
[
"tutorial",
"initialize",
Expand All @@ -63,7 +63,6 @@ def check_option(*options):
"update_network",
"usage",
"update_network_base",
"update_in_gui",
"update_modules_gd",
"update_network_base_gd",
]
Expand Down Expand Up @@ -200,12 +199,3 @@ def check_option(*options):
usage = UsageInstructor()
usage.run_usage_manual()
os._exit(0)

# Run GUI MODI Firmware Updater
if check_option('-g', '--update_in_gui'):
from PyQt5 import QtWidgets
from modi.util.gui_firmware_updater import Form
app = QtWidgets.QApplication(sys.argv)
w = Form()
sys.exit(app.exec())
os._exit(0)
2 changes: 1 addition & 1 deletion modi/about.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
__title__ = "pymodi"
__version__ = "1.1.0"
__version__ = "1.2.0"
__author__ = "LUXROBO"
__email__ = "tech@luxrobo.com"
__description__ = "Python API for controlling modular electronics, MODI."
Expand Down
Binary file removed modi/assets/image/button.png
Binary file not shown.
Binary file removed modi/assets/image/dial.png
Binary file not shown.
Binary file removed modi/assets/image/display.png
Binary file not shown.
Binary file removed modi/assets/image/env.png
Binary file not shown.
Binary file removed modi/assets/image/gyro.png
Binary file not shown.
Binary file removed modi/assets/image/ir.png
Binary file not shown.
Binary file removed modi/assets/image/led.png
Binary file not shown.
Binary file removed modi/assets/image/mic.png
Binary file not shown.
Binary file removed modi/assets/image/motor.png
Binary file not shown.
Binary file removed modi/assets/image/network.png
Binary file not shown.
Binary file removed modi/assets/image/speaker.png
Binary file not shown.
Binary file removed modi/assets/image/ultrasonic.png
Binary file not shown.
165 changes: 0 additions & 165 deletions modi/assets/modi_firmware_updater.ui

This file was deleted.

Loading
Loading