Commit Graph

155 Commits

Author SHA1 Message Date
Markus Hitter 9976640d92 Configtool: color background matching the background picture.
Actual color is easily changeable in Decoration, as this is a
Singleton.
2015-05-30 19:20:38 +02:00
Markus Hitter be16c98e59 Configtool: give the thing a nice background picture.
This is pure dessert topping, no functinal change. Well, eye candy
is important for acceptance. :-)
2015-05-30 18:41:02 +02:00
Markus Hitter da7a0d72a7 Configtool: improve search for avr-gcc & Co.
This should allow to build on any OS with Arduino IDE installed
and/or with avr-gcc & Co. available trough the normal shell.

Instead of looking at the current platform it's looked at wether
an Arduino IDE path is set. If yes, tools inside there are used.
If no such path is set, just the basename is used to let the OS
search for it ($PATH, etc.).

This is related to issue #152.
2015-05-30 18:40:04 +02:00
Markus Hitter 24b56b2bb1 Configtool: take account of Mac OS X's limited wildcard support.
According to documentation this shouldn't be neccessary, but
testing on Mac OS X 10.4.11 works only this way.

This helps a bit on issue #152.
2015-05-27 23:42:15 +02:00
Markus Hitter 0991e4a41f Configtool: add some formatting to collected help texts.
Tooltips don't size their box after line lengths, but have their
own idea on how wide to make it. Accordingly one should display
text with newlines only for paragraph delimiters.

This also required adjustments to all the board and printer
description comments. No functional change there.

This should solve issue #148.
2015-05-26 14:23:49 +02:00
Markus Hitter 2f8ed0dbeb Configtool: provide heater names as temp sensor names.
Formerly, both names were arbitrary and the user had to know
that only heaters ans sensors with matching names would work
together. Accordingly, temp sensors can have only names matching
those of existing heaters. With the exception of "noheater",
which is also provided.

This kind of solves issue #143.
2015-05-26 13:59:07 +02:00
Markus Hitter ada9450807 Configtool: teach heaterspage to provide a list of heater names.
This is part of the task to name temp sensors only after existing
heater names.
2015-05-26 13:53:25 +02:00
Markus Hitter 8ea9e93ac7 Configtool: swap heater and temp sensor definition tabs.
This looks like nitpicking right now, but further changes shall
provide only already existing heater names for temp sensor names,
so the former have to be defined first. Lead the user to follow
this strategy intuitively.
2015-05-26 13:53:25 +02:00
jbernardis e5e8983427 Configtool: make tooltips for radio buttons work on Linux.
The problem was, applying tooltips to the radio buttons directly
showed no effect on Linux. While this is likely a bug in wxPython,
we can't change this behaviour.

The solution is to also apply these help texts to the surrounding
StaticBox. This works, even for the radio buttons.

This solves issue #149.
2015-05-26 13:49:31 +02:00
jbernardis a96d4b4dc9 addsensordlg.py: always validate not required fields.
Previously funny things could happen, like a refusal to save
temperature sensors just because some unused field contained
garbage.
2015-05-22 13:18:46 +02:00
jbernardis 50cb7bfb79 Configtool: make all general settings user-editable.
Also add meaningful tooltips.
2015-05-22 10:59:34 +02:00
jbernardis e1277e4f4a Configtool: move thermistor presets into distribution file.
The problem was, that settings distributed in
configtool.default.ini were overridden once a configtool.ini was
created. Accordingly, users upgrading sources wouldn't see changes
in this file.

The solution is to move settings set by the distribution into a
separate file which isn't replaced by a user-saved one.

This should fix issue #142.
2015-05-20 23:31:38 +02:00
Markus Hitter 9a10e70e36 Configtool: also allow to abort builds.
Usually the complete or fail within a few seconds, but one never
knows and consistency with cancel-ability of uploads is good.
2015-05-20 13:49:12 +02:00
jbernardis 61c1ba182f Configtool: add ability to cancel upload.
In case communications to the bootloader doesn't work as expected,
avrdude often takes many many minutes to recognize this, so it's
very convenient to be able to abort these fruitless attempts.

This should solve issue #131.
2015-05-20 13:49:10 +02:00
jbernardis 610e1d169b Configtool: add Steinhart-Hart algorithm and thermistor presets.
The Steinhart-Hart algorithm allows more precise thermistor
tables, but also requires more parameters, which aren't
available for all thermistors. Accordingly, add support for both,
the traditional logic using the beta parameter as well as the new
one.

This also adds thermistor-presets, so users can simply choose
from a pulldown-menu to set their thermistor.

Also, identical thermistors get merged into one table, saving
binary size.

Last not least, a few bugs in this area got fixed.

Usually, all these things go into separate commits, but they were
contributed all in one and separating them is a bit error-prone
for little gain.

This should address issue #130, #134 and #135.
2015-05-19 18:11:09 +02:00
Markus Hitter 3d2c307c56 Configtool: use absolute path for .hex file when uploading.
There were cases where the working directory got lost and
teacup.hex weren't found.

This should be the last bit to solve issue #132.
2015-05-14 13:07:46 +02:00
jbernardis e661170f75 Configtool: use absolute paths for .al files.
In some cases the working directory gets changed unintentionally,
so these .al files were no longer found.

This should partially solve issue #132.
2015-05-14 11:56:39 +02:00
jbernardis ae8a2a2b59 Configtool: remove Analog Reference user choice.
This was previously made obsolete in the firmware code already.
See previous commits.

This should solve issue #138.

In case it ever turns out this was a poor decision, it's likely
a good idea to re-add this to the board configuration instead of
the printer configuration.
2015-05-11 02:03:47 +02:00
jbernardis 5b5032f87f Configtool: don't make DEBUG configuration user-visible.
Debug stuff is meaningful for developers, only. Also often
enabled on a per-file basis depending on the problem at hand.
Two reasons to remove it from Configtool and one reason to
remove it from the config files.

This should solve issue #137.
2015-05-08 20:38:23 +02:00
jbernardis c6150737a7 Configtool: don't report successful file saves.
This is the expected outcome, so explicitely reporting this, with
requiring the user to click a dialog box away, is kind of clutter.

This should solve issue #136.
2015-05-08 14:06:40 +02:00
jbernardis ac8890b207 Configtool: distiguish between bootloader and firmware baud rate.
This should solve issue #133.
2015-05-04 22:30:01 +02:00
Markus Hitter f734b225eb Rename ThermistorTable.h to thermistortable.h.
This is purely cosmetics to match naming conventions of other
files. No functional change.
2015-05-04 20:08:39 +02:00
Markus Hitter 6f85f625cc Remove ThermistorTable{single|double}.h.
These are no longer needed, as they're now created on the fly by
Configtool.

Also pick unique information from there over to Configtool, see
the change in configtool/addsensordlg.h.
2015-05-04 19:55:16 +02:00
jbernardis 452908afa9 Configtool: prevent negative numbers in thermistor tables. 2015-04-28 11:27:28 +02:00
jbernardis 05bfea40de Configtool: refresh data structures when saving.
Solves Issue #120.
2015-04-25 16:33:27 +02:00
jbernardis 9f74d315d0 Configtool: don't mess up on modified default configs.
Previously, loading default configurations for board or printer,
then modifying them without saving them, then attempting to
build lead to a big mess, like attempting to save the board file,
failing in doing so and then building anyways.
2015-04-21 02:51:32 +02:00
jbernardis 48433a6254 Configtool: added logic to generate thermistor temp tables.
Also enable editing of temperature sensors.
2015-04-21 02:51:32 +02:00
Markus Hitter 8408d8c294 Configtool: DEFINE_TEMP_SENSOR always wants four paramters.
Compilation with something else than a thermistor still doesn't
work, because temp.c insists on a thermistor table, but we're a
step closer.
2015-04-21 02:51:31 +02:00
Markus Hitter 29dd85a129 Configtool: also prettify writing heater definitions. 2015-04-21 02:51:31 +02:00
Markus Hitter 778af87102 Configtool: prettify writing sensor definitions.
This might look a bit oversensitive right now, but soon we'll also
write temperature table data, then it makes more sense.
2015-04-21 02:51:31 +02:00
Markus Hitter 6a93cbac64 Configtool: don't overwrite configtool.default.ini.
It's rarely a good idea to overwrite files coming with a
distribution. Not for users, because they can't reset to factory
values; not for developers, because Git would pick up such changed
files.

Instead we read from configtool.default.ini now, but write to
configtool.ini. If configtool.ini is already present, it's
prefered over configtool.default.ini.
2015-04-21 02:51:31 +02:00
Markus Hitter c7ef3b9ff9 Configtool: report save settings success directly in SettingsDlg.
There we have access to the actual file name.
2015-04-21 02:51:31 +02:00
jbernardis 20af64d780 Configtool: convert template for Teensy++ 2.0.
Note the "++", it's a Teensy 2.0 with bigger CPU and more I/O pins.
2015-04-21 02:51:31 +02:00
jbernardis bcf7691bdd Configtool: convert template for Teensy 2.0. 2015-04-21 02:51:31 +02:00
jbernardis 845804f182 Configtool: convert template for Sanguish. 2015-04-21 02:51:31 +02:00
jbernardis b491d122b3 Configtool: convert template for 3Drag Controller. 2015-04-21 02:51:30 +02:00
jbernardis 0a848fffc1 Configtool: convert template for RUMBA. 2015-04-21 02:51:30 +02:00
jbernardis f67ad76b3c Configtool: convert template for Gen6. 2015-04-21 02:51:30 +02:00
jbernardis face7c0dc7 Configtool: convert template for Gen3. 2015-04-21 02:51:30 +02:00
jbernardis 342e1c4df7 Configtool: convert template for Sanguinololu v1.2. 2015-04-21 02:51:30 +02:00
jbernardis 821e0c1295 Configtool: convert template for Sanguinololu v1.1. 2015-04-21 02:51:30 +02:00
jbernardis 7ebdb81ce7 Configtool: convert template for RAMPS v1.2. 2015-04-21 02:51:30 +02:00
jbernardis 31858b7082 Configtool: convert template for Gen7 v1.1-v1.3.
Also sort printers in config.default.h alphabetically and make
Mendel the default printer.
2015-04-21 02:51:30 +02:00
jbernardis ee8f5f9170 Configtool: some code prettifications.
Pure whitespace changes.
2015-04-21 02:51:30 +02:00
jbernardis 2436ac2865 Configtool: a few more apperance enhancements. 2015-04-21 02:51:30 +02:00
jbernardis cbc87fc526 Configtool: align labels and choices vertically.
wxPython apparently doesn't allow to do this automatically,
so do it kind of manually, with a constand in data.py.
--Traumflug
2015-04-21 02:51:30 +02:00
jbernardis 73f7e43227 Configtool: enforce correct configuration file names.
Previously one could save a board or printer configuration with
a name which wouldn't allow to load it again.
2015-04-21 02:51:30 +02:00
jbernardis 706ccf0637 Configtool: protect original config files.
Likely users don't care too much about the name of the saved file,
so they likely use the default ones. If they mess up, they also
likely want to return to the original, but, d'oh, it's overwritten.
Don't let this happen, enforce a non-original file name for user
saves.

In other words: don't let users shoot themselfs into their foot.
2015-04-21 02:51:27 +02:00
Markus Hitter 1cd21251d2 Get rid of STEP_INTERRUPT_INTERRUPTIBLE.
It was certainly a good idea, but also always a suspect of
malfunctions and as such, almost never used. Newer code
organisation moves most of the code behind it to dda_clock()
anyways, so it also became mostly obsolete.

Rest In Peace, STEP_INTERRUPT_INTERRUPTIBLE, you were matter
of quite a number of interesting discussions and investigations.

Changes for Configtool by jbernardis <jeff.bernardis@gmail.com>
2015-04-21 02:11:01 +02:00
Markus Hitter e2e77ae927 Configtool: remove version information.
Teacup doesn't do releases, it's a rolling release :-)
2015-04-21 02:11:01 +02:00
jbernardis 74f0c88df9 Configtool: added REPORT_TARGET_TEMPS ...
... in anticipation of it's being adopted.

This also nicely shows how simple it is to add (or remove) a
configurable option to the config tool.
2015-04-21 02:11:01 +02:00
jbernardis 9985c3936d Configtool: many changes.
1) If variables are missing from .h files, they are added.
2) Settings file now modifiable from within the program.
3) A few cosmetic fixes.
2015-04-21 02:11:01 +02:00
jbernardis b9f524d256 Configtool: add the ability to build and upload. 2015-04-21 02:11:01 +02:00
jbernardis d6b2a2293e Configtool: incorporate most of previous comments.
See discussion to Issue #111 on Github.
2015-04-21 02:10:58 +02:00
jbernardis d7789ee217 Configtool: major restructuring.
We distinguish between printers and boards now. Most of the
code was split into one file per tab/window and moved into
configtool/.
2015-04-21 02:07:12 +02:00