|
1 | 1 | # SETUP APPLICATION
|
2 |
| -# SHOWN ON FIRST BOOT |
| 2 | +# v2 by Thomas Roos |
| 3 | +# v1 by Renze Nicolai |
3 | 4 |
|
4 |
| -import ugfx, badge, appglue, dialogs, utime |
| 5 | +import ugfx, badge, appglue, dialogs |
5 | 6 |
|
6 |
| -def load_settings(): |
7 |
| - return badge.nvs_get_str("owner", "name", "") |
| 7 | +def asked_nickname(value): |
| 8 | + if value: |
| 9 | + badge.nvs_set_str("owner", "name", value) |
8 | 10 |
|
9 |
| -def store_settings(nickname): |
10 |
| - badge.nvs_set_str("owner", "name", nickname) |
| 11 | + # Do the firstboot magic |
| 12 | + newState = 1 if badge.nvs_get_u8('badge', 'setup.state', 0) == 0 else 3 |
| 13 | + badge.nvs_set_u8('badge', 'setup.state', newState) |
11 | 14 |
|
12 |
| -def is_developer(nickname): |
13 |
| - if (nickname==""): |
| 15 | + # Show the user that we are done |
| 16 | + ugfx.clear(ugfx.WHITE) |
| 17 | + ugfx.string(0, 0, "Hi, " + value, "PermanentMarker22", ugfx.BLACK) |
| 18 | + ugfx.string(0, 25, "Your nick is stored to flash!", "Roboto_Regular12", ugfx.BLACK) |
| 19 | + ugfx.flush(ugfx.LUT_FASTER) |
| 20 | + else: |
14 | 21 | badge.nvs_set_u8('badge', 'setup.state', 2) # Skip the sponsors
|
15 |
| - return True |
16 |
| - return False |
17 | 22 |
|
18 |
| -def action_home(pressed): |
19 |
| - if (pressed): |
20 |
| - appglue.start_app("") |
21 |
| - |
22 |
| -def set_setup_state(): |
23 |
| - s_old = badge.nvs_get_u8('badge', 'setup.state', 0) |
24 |
| - s_new = 2 |
25 |
| - if (s_old==0): |
26 |
| - s_new = 1 |
27 |
| - badge.nvs_set_u8('badge', 'setup.state', s_new) |
28 |
| - |
29 |
| -def draw_setup_completed(): |
30 |
| - ugfx.clear(ugfx.WHITE) |
31 |
| - ugfx.string(0, 0, "Setup", "PermanentMarker22", ugfx.BLACK) |
32 |
| - ugfx.string(0, 25, "Settings stored to flash!", "Roboto_Regular12", ugfx.BLACK) |
33 |
| - ugfx.set_lut(ugfx.LUT_FASTER) |
34 |
| - ugfx.flush() |
35 |
| - |
36 |
| -def return_to_home(): |
37 | 23 | badge.eink_busy_wait()
|
38 | 24 | appglue.start_app("")
|
39 | 25 |
|
40 |
| -def program_main(): |
41 |
| - ugfx.init() |
42 |
| - nickname = load_settings() |
43 |
| - |
44 |
| - def asked_nickname(value): |
45 |
| - nickname = value if value else nickname |
46 |
| - if not is_developer(nickname): |
47 |
| - store_settings(nickname) |
48 |
| - # Do the firstboot magic |
49 |
| - set_setup_state() |
50 |
| - # Show the user that we are done |
51 |
| - draw_setup_completed() |
52 |
| - utime.sleep(2) |
53 |
| - return_to_home() |
54 |
| - |
55 |
| - dialogs.prompt_text("Nickname", nickname, cb=asked_nickname) |
56 |
| - |
57 |
| -# Start main application |
58 |
| -program_main() |
59 |
| - |
| 26 | +ugfx.init() |
| 27 | +nickname = badge.nvs_get_str("owner", "name", "") |
| 28 | +dialogs.prompt_text("Nickname", nickname, cb=asked_nickname) |
0 commit comments