Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merge for BLE online updates and Mobile app #13

Open
wants to merge 105 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
105 commits
Select commit Hold shift + click to select a range
498dfe8
mc_configuration QObject subclass with properties used instead of str…
Gawhary Feb 21, 2016
eedf36d
using Wrapper property classes instead of property classes to keep th…
Gawhary Feb 22, 2016
d3afcbb
Merge branch 'master' of https://github.com/Gawhary/bldc-tool
Gawhary Feb 22, 2016
07a48b7
QML project merged
Gawhary Feb 24, 2016
d2621ef
Most logic/functionality extracted from mainwindow into new class (ca…
Gawhary Feb 25, 2016
9cc6c6e
logic/UI separation: timerSlot function
Gawhary Feb 26, 2016
ebc76d3
serialConnect slot
Gawhary Feb 26, 2016
e4dde45
all logic extracted from mainwindow into bldcinterface class
Gawhary Feb 27, 2016
0b0ddfb
bldcinterface object available in qml
Gawhary Feb 28, 2016
1d7c839
appconfiguration and McConfiguration classes registered to be used in…
Gawhary Feb 28, 2016
2a75920
new macro QML_WRITABLE_ENUM_PROPERTY_W created to solve emum access i…
Gawhary Feb 29, 2016
3b5b27b
QML_WRITABLE_ENUM_PROPERTY_W applied for all enums
Gawhary Feb 29, 2016
6219e63
initialize AppConfiguration and McConfiguration
Gawhary Feb 29, 2016
c9d291f
configuration page implemented
Gawhary Feb 29, 2016
b3e28ee
message dialog
Gawhary Mar 2, 2016
a5f4de0
Settings Page
Gawhary Mar 5, 2016
84179b8
Firmware Page
Gawhary Mar 5, 2016
fa0fc71
real time data page
Gawhary Mar 5, 2016
ae8247e
ppm configuration page
Gawhary Mar 7, 2016
7a8a9ba
motor configuration (limits) page
Gawhary Mar 7, 2016
f39b405
motor configuration (sensorless) page
Gawhary Mar 7, 2016
7c71182
Merge remote-tracking branch 'upstream/master'
Gawhary Mar 8, 2016
e94eb50
property wrapper added for mc_configuration.p_pid_ang_div
Gawhary Mar 8, 2016
b37fc37
Bug fixing: calling readAppConf instead of readMcConf
Gawhary Mar 8, 2016
2a6bba1
status bar added
Gawhary Mar 8, 2016
06cf9a3
Activate sampling checkbox added
Gawhary Mar 8, 2016
1bf1ec7
initialize m_realtimeActivate
Gawhary Mar 8, 2016
bf5eb40
register McValues and PacketInterface types
Gawhary Mar 12, 2016
e0db2cc
SendorLess page:
Gawhary Mar 13, 2016
91e5126
Bug fix: DC/BLDC conflict
Gawhary Mar 13, 2016
76cd42e
"file:///" removed from file path
Gawhary Mar 13, 2016
bd21a97
some required changes
Gawhary Mar 13, 2016
f3cf88b
setting page: import bldc 1.0
Gawhary Mar 14, 2016
11e66f2
FileDialog path problem fix
Gawhary Mar 15, 2016
cbcc767
Bluetooth low energy added [TO BE TESTED]
Gawhary Mar 17, 2016
cf84139
differentiate CHARACTARISTIC_UUID and SERVICE_UUID
Gawhary Mar 17, 2016
42daa99
bug fix: QBluetoothDeviceDiscoveryAgent duplication
Gawhary Mar 17, 2016
da4ddc0
Bugs fixes (naming)
Gawhary Mar 18, 2016
51a04c9
pro and pri files organizing
Gawhary Mar 18, 2016
206a445
using BLDCInterface in mainwindow and removing redundancy
Gawhary Mar 19, 2016
b3da3b1
MainWindow: bug fix
Gawhary Mar 20, 2016
ca72a29
BLE connection added to MainWindow
Gawhary Mar 20, 2016
045e619
bug fixing
Mar 20, 2016
7a97d0f
BLEInterface::write: check data size
Gawhary Mar 20, 2016
828ece3
BLEInterface changed according to Bluefruit LE UART service
Gawhary Mar 22, 2016
b36bd51
BLE services uuid
Gawhary Mar 23, 2016
505c6e1
AppConfigurationPPM.qml: NunchukTab
Gawhary Mar 24, 2016
ea54cbc
serial ports list (widgets)
Gawhary Mar 24, 2016
9bb175b
Bug fix: serial port list [TESTED]
Gawhary Mar 25, 2016
957da5a
list STMicroelectronics serial port first
Gawhary Mar 25, 2016
df83b00
serial ports drop down box (QML)
Gawhary Mar 25, 2016
3291453
Load serial port tab iff not IOS
Gawhary Mar 25, 2016
cd8d723
resolving warning
Gawhary Mar 25, 2016
d0f1426
removing serialport c++ code if ios build
Gawhary Mar 25, 2016
335ae33
pro file: serialport module removed for ios
Gawhary Mar 26, 2016
e5e8f61
FOC, Sensorless tab GUI implemented
Gawhary Mar 27, 2016
22dbf13
BLE: write mode, missed connection and debug message
Gawhary Mar 28, 2016
9df433d
adding missed file FocTab.qml
Gawhary Mar 29, 2016
7160754
FOC tab GUI [NO FUNCTIONALITY]
Gawhary Mar 30, 2016
e51042c
missed file added, BldcTab.qml
Gawhary Mar 30, 2016
e6a1144
ble, large data write
Gawhary Mar 30, 2016
6f2917c
BLEInterface::write, debug messages reduced
Gawhary Mar 30, 2016
6ee3973
BLEInterface::searchCharacteristic enhancement
Gawhary Mar 30, 2016
5d342b8
BLEInterface::write, loop instead of recursion for large data
Gawhary Mar 31, 2016
d08163d
timer interval increased for BLE low speed
Gawhary Apr 1, 2016
419ad34
setting changes
jacobbloy Apr 1, 2016
8bf3d95
differentiate timer interval between different types of connections
Gawhary Apr 2, 2016
d43d690
Merge branch 'master' of https://github.com/Gawhary/bldc-tool
Gawhary Apr 2, 2016
c7e2578
.user file removed
Gawhary Apr 2, 2016
c4f69db
PacketInterface::setChukData overloaded to be accessable from qml
Gawhary Apr 7, 2016
a8aca52
real time data slider to set ChukData.js_y
Gawhary Apr 7, 2016
6357880
can bus added and can forwarding
jacobbloy Apr 7, 2016
e565839
remove user file
jacobbloy Apr 7, 2016
e870177
fix slider function and app config page
jacobbloy Apr 7, 2016
cffd8f8
some ui bug fixes
jacobbloy Apr 8, 2016
4143ab3
settings page fixed for android
jacobbloy Apr 8, 2016
d233ce9
more bug fixes
jacobbloy Apr 9, 2016
4b5d7e4
add adc, fixed ppm_uart, added message dialog when not using uart
jacobbloy Apr 10, 2016
cd7a785
Online firmware update
gavrushkin Apr 10, 2016
0fe93c6
online firmware update qml ui changes
jacobbloy Apr 10, 2016
3bd8b01
added ios theme message dialog
jacobbloy Apr 11, 2016
36a47c4
FOC Tab rebuild/ settings tab view fix
jacobbloy Apr 15, 2016
4a46c56
added Foc textfield data
jacobbloy Apr 15, 2016
f52138b
reset status info label (widgets)
Gawhary Apr 18, 2016
db65806
reset status label (QML)
Gawhary Apr 18, 2016
4afa3a0
bug fix
Gawhary Apr 18, 2016
6cd9590
bug fix
jacobbloy Apr 18, 2016
989e8bf
ios main bug fix
jacobbloy Apr 18, 2016
a086b29
fixed decoder bars, also worked on FOC TAB, Fixed Widget firmware page
jacobbloy Apr 19, 2016
5cace39
add battery cut off limits
jacobbloy May 10, 2016
d0632b6
firmware page know has online update's with web url, we need to add 3…
Gawhary May 10, 2016
0d6960f
Firmware radio buttons (#15)
gavrushkin May 13, 2016
e56a032
FOC tab, Detect Hall Sensors, Apply button functionality added
Gawhary May 13, 2016
be258b0
Merge branch 'master' of https://github.com/Gawhary/bldc-tool
Gawhary May 13, 2016
8482eb3
FOC tab, Encoder, detect encoder, apply button functionality added
Gawhary May 13, 2016
13ce1d7
Foc tab, Sensorless, Detect and Calculate parameters, Apply button ad…
Gawhary May 13, 2016
d40fa67
FW 2.17 support (#16)
gavrushkin May 14, 2016
412a1e8
BLDC tab, apply Botton added and implemented
Gawhary May 15, 2016
bc4e1b6
add support for multiple service UUID
Gawhary May 16, 2016
ea545dc
Auto connect known devices
Gawhary May 16, 2016
61d805b
a few touch ups
jacobbloy May 16, 2016
aba5b45
bug fixing (compilation errors)
Gawhary May 16, 2016
c07248f
this symbol λ in textFieldSensMotλ cause error
Gawhary May 16, 2016
f4463bc
Merge branch 'master' of https://github.com/Gawhary/bldc-tool
Gawhary May 16, 2016
d0f2b95
bug fix firmware update
jacobbloy May 16, 2016
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
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -4,3 +4,4 @@ ui_*
Makefile
BLDC_Tool.app
BLDC_Tool
*.pro.user*
85 changes: 47 additions & 38 deletions BLDC_Tool.pro
100644 → 100755
Original file line number Diff line number Diff line change
@@ -1,44 +1,53 @@
#-------------------------------------------------
#
# Project created by QtCreator 2012-11-18T21:19:27
#
#-------------------------------------------------

QT += core gui
QT += printsupport
QT += serialport
QT += network

greaterThan(QT_MAJOR_VERSION, 4): QT += widgets

TARGET = BLDC_Tool
TEMPLATE = app


SOURCES += main.cpp\
mainwindow.cpp \
qcustomplot.cpp \
digitalfiltering.cpp \
packetinterface.cpp \
utility.cpp \
serialization.cpp \
mrichtextedit.cpp \
mtextedit.cpp \
rtdatawidget.cpp

HEADERS += mainwindow.h \
qcustomplot.h \
#DEFINES += QML # for test
CONFIG += c++11

QT += core gui bluetooth serialport network

android | ios : DEFINES += QML
ios{
QT -= serialport
DEFINES += NO_SERIAL_PORT

include(ios_proj/quickios.pri)
}
android{
QT -= serialport
DEFINES += NO_SERIAL_PORT
}

contains(DEFINES,QML){
include(QML.pri)
} else {
include(Widgets.pri)
}

HEADERS += \
datatypes.h \
mcvalues.h \
bleinterface.h \
bldcinterface.h \
lib-qt-qml-tricks/src/qqmlhelpers.h \
digitalfiltering.h \
packetinterface.h \
utility.h \
serialization.h \
mrichtextedit.h \
mtextedit.h \
rtdatawidget.h \
datatypes.h
mcconfiguration.h \
appconfiguration.h \
downloader.h \
detectres.h

FORMS += mainwindow.ui \
mrichtextedit.ui

RESOURCES += \
resources.qrc
SOURCES += \
main.cpp \
packetinterface.cpp \
bldcinterface.cpp \
mcvalues.cpp \
bleinterface.cpp \
lib-qt-qml-tricks/src/qqmlhelpers.cpp \
digitalfiltering.cpp \
utility.cpp \
serialization.cpp \
mcconfiguration.cpp \
appconfiguration.cpp \
downloader.cpp \
detectres.cpp
22 changes: 22 additions & 0 deletions Info.plist
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>NSPrincipalClass</key>
<string>NSApplication</string>
<key>CFBundleIconFile</key>
<string></string>
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleGetInfoString</key>
<string>Created by Qt/QMake</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleExecutable</key>
<string>BLDCApp</string>
<key>CFBundleIdentifier</key>
<string>com.athenasoft.${PRODUCT_NAME:rfc1034identifier}</string>
<key>NOTE</key>
<string>This file was generated by Qt/QMake.</string>
</dict>
</plist>
13 changes: 13 additions & 0 deletions QML.pri
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
TEMPLATE = app

QT += qml quick


RESOURCES += qml.qrc
RCC_DIR += qml

# Additional import path used to resolve QML modules in Qt Creator's code model
QML_IMPORT_PATH =

# Default rules for deployment.
include(deployment.pri)
Empty file modified README.md
100644 → 100755
Empty file.
33 changes: 33 additions & 0 deletions Widgets.pri
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
#-------------------------------------------------
#
# Project created by QtCreator 2012-11-18T21:19:27
#
#-------------------------------------------------

QT += printsupport

greaterThan(QT_MAJOR_VERSION, 4): QT += widgets

TARGET = BLDC_Tool
TEMPLATE = app


SOURCES += \
mainwindow.cpp \
qcustomplot.cpp \
mrichtextedit.cpp \
mtextedit.cpp \
rtdatawidget.cpp

HEADERS += \
mainwindow.h \
qcustomplot.h \
mrichtextedit.h \
mtextedit.h \
rtdatawidget.h \

FORMS += mainwindow.ui \
mrichtextedit.ui

RESOURCES += \
resources.qrc
76 changes: 76 additions & 0 deletions appconfiguration.cpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
#include "appconfiguration.h"

AppConfiguration::AppConfiguration(QObject *parent) : QObject(parent)
{
memset(&m_data, 0, sizeof(app_configuration));
}

AppConfiguration::AppConfiguration(app_configuration &data)
{
m_data = data;
}

void AppConfiguration::setData(app_configuration &src)
{
// set all properties one by one to notify iff changed
set_controller_id (src.controller_id );
set_timeout_msec (src.timeout_msec );
set_timeout_brake_current (src.timeout_brake_current );
set_send_can_status (src.send_can_status );
set_send_can_status_rate_hz (src.send_can_status_rate_hz);
set_app_to_use (src.app_to_use );
set_ppm_ctrl_type (src.app_ppm_conf.ctrl_type );
set_ppm_pid_max_erpm (src.app_ppm_conf.pid_max_erpm );
set_ppm_hyst (src.app_ppm_conf.hyst );
set_ppm_pulse_start (src.app_ppm_conf.pulse_start );
set_ppm_pulse_end (src.app_ppm_conf.pulse_end );
set_ppm_median_filter (src.app_ppm_conf.median_filter );
set_ppm_safe_start (src.app_ppm_conf.safe_start );
set_ppm_rpm_lim_start (src.app_ppm_conf.rpm_lim_start );
set_ppm_rpm_lim_end (src.app_ppm_conf.rpm_lim_end );
set_ppm_multi_esc (src.app_ppm_conf.multi_esc );
set_ppm_tc (src.app_ppm_conf.tc );
set_ppm_tc_max_diff (src.app_ppm_conf.tc_max_diff );
set_adc_ctrl_type (src.app_adc_conf.ctrl_type );
set_adc_hyst (src.app_adc_conf.hyst );
set_adc_voltage_start (src.app_adc_conf.voltage_start );
set_adc_voltage_end (src.app_adc_conf.voltage_end );
set_adc_use_filter (src.app_adc_conf.use_filter );
set_adc_safe_start (src.app_adc_conf.safe_start );
set_adc_cc_button_inverted (src.app_adc_conf.cc_button_inverted );
set_adc_rev_button_inverted (src.app_adc_conf.rev_button_inverted);
set_adc_voltage_inverted (src.app_adc_conf.voltage_inverted );
set_adc_rpm_lim_start (src.app_adc_conf.rpm_lim_start );
set_adc_rpm_lim_end (src.app_adc_conf.rpm_lim_end );
set_adc_multi_esc (src.app_adc_conf.multi_esc );
set_adc_tc (src.app_adc_conf.tc );
set_adc_tc_max_diff (src.app_adc_conf.tc_max_diff );
set_adc_update_rate_hz (src.app_adc_conf.update_rate_hz );
set_app_uart_baudrate (src.app_uart_baudrate);
set_chuk_ctrl_type (src.app_chuk_conf.ctrl_type );
set_chuk_hyst (src.app_chuk_conf.hyst );
set_chuk_rpm_lim_start (src.app_chuk_conf.rpm_lim_start );
set_chuk_rpm_lim_end (src.app_chuk_conf.rpm_lim_end );
set_chuk_ramp_time_pos (src.app_chuk_conf.ramp_time_pos );
set_chuk_ramp_time_neg (src.app_chuk_conf.ramp_time_neg );
set_chuk_stick_erpm_per_s_in_cc (src.app_chuk_conf.stick_erpm_per_s_in_cc);
set_chuk_multi_esc (src.app_chuk_conf.multi_esc );
set_chuk_tc (src.app_chuk_conf.tc );
set_chuk_tc_max_diff (src.app_chuk_conf.tc_max_diff );
set_nrf_speed (src.app_nrf_conf.speed );
set_nrf_power (src.app_nrf_conf.power );
set_nrf_crc_type (src.app_nrf_conf.crc_type );
set_nrf_retry_delay (src.app_nrf_conf.retry_delay);
set_nrf_retries (src.app_nrf_conf.retries );
set_nrf_channel (src.app_nrf_conf.channel );
set_nrf_address0 (src.app_nrf_conf.address[0] );
set_nrf_address1 (src.app_nrf_conf.address[1] );
set_nrf_address2 (src.app_nrf_conf.address[2] );
set_nrf_send_crc_ack (src.app_nrf_conf.send_crc_ack);
}

const app_configuration &AppConfiguration::data()
{
return m_data;
}

Loading