Skip to content

Commit

Permalink
Merge branch 'dev' into dev
Browse files Browse the repository at this point in the history
  • Loading branch information
discip authored Aug 24, 2024
2 parents 4b340c5 + 03e2ba1 commit 2679a79
Show file tree
Hide file tree
Showing 48 changed files with 243 additions and 83 deletions.
24 changes: 23 additions & 1 deletion Documentation/Logo.md
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ The model should be replaced by one of the following options:
- `miniware` for older Miniware Irons -> TS100, TS80, TS80P
- `pinecilv1` for the Pinecil V1
- `pinecilv2` for the Pinecil V2
- `ts101` for the Miniware TS101 [^1]
- `ts101` for the Miniware TS101 [^1] [^2]
- `s60` for the Squire S60 [^1]
- `mhp30` for the Miniware MHP30

Expand All @@ -50,6 +50,28 @@ After processing its expected to have a `.hex` and `.dfu` file created to be use
Note: make sure your image file is in the same folder as script files (img2logo.py, output_dfu.py, output_hex.py).

[^1] Note that these devices have larger resolution screens that the logo system supports right now. Fixes are coming for this soon, roughly scheduled for 2.23.
[^2] The TS101 requires extra steps, see below.

### TS101 Quirks

When Miniware designed the TS101 they cut cost by using an STM32 clone with some odd quirks. They also re-wrote their USB bootloader, which has introduced new bugs for us to deal with.
Their bootloader appears to have kept the existing limit of not being able to flash small hex files, but they no longer fall for the older "just repeat the content" trick and instead reject the file.
Additionally, while the MCU in use has 128K of flash, their bootloader (at least for me) fails to write to anything above 99K. It _looks_ like a watchdog reset or hard crash. Unsure.

This has flow on effects, where the settings can still be located in the upper ~28K of flash, but it cant be used for anything we flash over USB.
Of that 100K we can use, they waste 32K of it for their bootloader (Old bootloaders were 16K).
This means the main "app" of IronOS is limited to around 67K (100K-32K for bootloader, -1K for logo).

For this device the Logo is not located at the end of flash but instead at the last writable page (99K).

Additionally, as we need to do a large write, to avoid having to waste more flash space; the logo is merged with the normal firmware. This means that the firmware and logo are flashed together once.
Future updates can be done without merging as it will leave the logo data there as normal firmware doesnt touch that area of flash.

To do this, download the latest version of IronOS and merge it with the logo using the `--merge` command line argument.

To create the logo file for a TS101 the full command looks like `python3 img2logo.py <image file path> <output folder path> -m ts101 --merge <Path to main firmware>`.

For this reason, there are no TS101 logo's generated by the IronOS-Meta repo.

## Flashing the Logo

Expand Down
2 changes: 2 additions & 0 deletions Translations/translation_BE.json
Original file line number Diff line number Diff line change
Expand Up @@ -233,6 +233,8 @@
"displayText": "Эфект Хола\nадчувальнасць",
"description": "Узровень адчувальнасці датчыка хола ў рэжыме сну (1=Мін. | ... | 9=Макс.)"
},
"HallEffSleepTimeout": { "displayText": "HallSensor\nSleepTime", "description": "Interval before \"sleep mode\" starts when hall effect is above threshold"
},
"TemperatureUnit": {
"displayText": "Адзінкі\nтэмпературы",
"description": "Адзінкі вымярэння тэмпературы (C=Цэльcія | F=Фарэнгейта)"
Expand Down
2 changes: 2 additions & 0 deletions Translations/translation_BG.json
Original file line number Diff line number Diff line change
Expand Up @@ -233,6 +233,8 @@
"displayText": "Датчик\nна Хол",
"description": "Чувствителност на сензора към магнитно поле (1=Слабо | ... | 9=Силно)"
},
"HallEffSleepTimeout": { "displayText": "HallSensor\nSleepTime", "description": "Interval before \"sleep mode\" starts when hall effect is above threshold"
},
"TemperatureUnit": {
"displayText": "Единици за\nтемпературата",
"description": "Единици за температурата (C=Целзии | F=Фаренхайт)"
Expand Down
2 changes: 2 additions & 0 deletions Translations/translation_CS.json
Original file line number Diff line number Diff line change
Expand Up @@ -233,6 +233,8 @@
"displayText": "Citlivost\nHall. čidla",
"description": "Citlivost Hallova čidla pro detekci spánku (1=nejméně citlivé | ... | 9=nejvíce citlivé)"
},
"HallEffSleepTimeout": { "displayText": "HallSensor\nSleepTime", "description": "Interval before \"sleep mode\" starts when hall effect is above threshold"
},
"TemperatureUnit": {
"displayText": "Jednotka\nteploty",
"description": "C=Celsius | F=Fahrenheit"
Expand Down
2 changes: 2 additions & 0 deletions Translations/translation_DA.json
Original file line number Diff line number Diff line change
Expand Up @@ -233,6 +233,8 @@
"displayText": "Hall sensor\nfølsomhed",
"description": "følsomhed overfor magneten (1=Mindst følsom | ... | 9=Mest følsom)"
},
"HallEffSleepTimeout": { "displayText": "HallSensor\nSleepTime", "description": "Interval before \"sleep mode\" starts when hall effect is above threshold"
},
"TemperatureUnit": {
"displayText": "Temperatur\nEnhed",
"description": "Temperatur Enhed (C=Celsius | F=Fahrenheit)"
Expand Down
2 changes: 2 additions & 0 deletions Translations/translation_DE.json
Original file line number Diff line number Diff line change
Expand Up @@ -233,6 +233,8 @@
"displayText": "Empfindlichkeit\nder Hall-Sonde",
"description": "Empfindlichkeit der Hall-Sonde um den Ruhemodus auszulösen (1=minimal | ... | 9=maximal)"
},
"HallEffSleepTimeout": { "displayText": "HallSensor\nSleepTime", "description": "Interval before \"sleep mode\" starts when hall effect is above threshold"
},
"TemperatureUnit": {
"displayText": "Temperatur-\neinheit",
"description": "C=°Celsius | F=°Fahrenheit"
Expand Down
2 changes: 2 additions & 0 deletions Translations/translation_EL.json
Original file line number Diff line number Diff line change
Expand Up @@ -233,6 +233,8 @@
"displayText": "Ευαισθ. αισθ. \nφαιν. Hall",
"description": "Ευαισθησία του αισθητήρα φαινομένου Hall για εντοπισμό αδράνειας (1=λιγότερο ευαίσθητο | ... | 9=περισσότερο ευαίσθητο)"
},
"HallEffSleepTimeout": { "displayText": "HallSensor\nSleepTime", "description": "Interval before \"sleep mode\" starts when hall effect is above threshold"
},
"TemperatureUnit": {
"displayText": "Μονάδες\nθερμοκρασίας",
"description": "C=Κελσίου | F=Φαρενάιτ"
Expand Down
4 changes: 4 additions & 0 deletions Translations/translation_EN.json
Original file line number Diff line number Diff line change
Expand Up @@ -233,6 +233,10 @@
"displayText": "Hall sensor\nsensitivity",
"description": "Sensitivity to magnets (1=least sensitive | ... | 9=most sensitive)"
},
"HallEffSleepTimeout": {
"displayText": "HallSensor\nSleepTime",
"description": "Interval before \"sleep mode\" starts when hall effect is above threshold"
},
"TemperatureUnit": {
"displayText": "Temperature\nunit",
"description": "C=°Celsius | F=°Fahrenheit"
Expand Down
2 changes: 2 additions & 0 deletions Translations/translation_ES.json
Original file line number Diff line number Diff line change
Expand Up @@ -233,6 +233,8 @@
"displayText": "Hall Eff\nSensibilidad",
"description": "Sensibilidad del sensor de efecto Hall en la detección de reposo (1=menos sensible | ... | 9=más sensible)"
},
"HallEffSleepTimeout": { "displayText": "HallSensor\nSleepTime", "description": "Interval before \"sleep mode\" starts when hall effect is above threshold"
},
"TemperatureUnit": {
"displayText": "Unidad de\ntemperatura",
"description": "Unidad de temperatura (C=entígrados | F=Fahrenheit)"
Expand Down
2 changes: 2 additions & 0 deletions Translations/translation_ET.json
Original file line number Diff line number Diff line change
Expand Up @@ -233,6 +233,8 @@
"displayText": "Halli anduri\ntundlikkus",
"description": "Tundlikkus magnetite suhtes (1=vähetundlikum | ... | 9=kõige tundlikum)"
},
"HallEffSleepTimeout": { "displayText": "HallSensor\nSleepTime", "description": "Interval before \"sleep mode\" starts when hall effect is above threshold"
},
"TemperatureUnit": {
"displayText": "Temperatuuri\nühik",
"description": "C=°Celsius | F=°Fahrenheit"
Expand Down
Loading

0 comments on commit 2679a79

Please sign in to comment.