configs.h 22 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812
  1. #ifndef configs_h
  2. #define configs_h
  3. #define POLISH_POTATO
  4. //Indicates that it must redirect the stream with the captured packets to serial (1)
  5. //If not defined, will write packages to SD card if supported
  6. //#define WRITE_PACKETS_SERIAL
  7. //// BOARD TARGETS
  8. //#define MARAUDER_M5STICKC
  9. //#define MARAUDER_MINI
  10. //#define MARAUDER_V4
  11. //#define MARAUDER_V6
  12. //#define MARAUDER_KIT
  13. //#define GENERIC_ESP32
  14. #define MARAUDER_FLIPPER
  15. //#define ESP32_LDDB
  16. //#define MARAUDER_DEV_BOARD_PRO
  17. //#define XIAO_ESP32_S3
  18. //// END BOARD TARGETS
  19. #define MARAUDER_VERSION "v0.12.0"
  20. //// BOARD FEATURES
  21. #ifdef MARAUDER_M5STICKC
  22. //#define FLIPPER_ZERO_HAT
  23. #define HAS_BATTERY
  24. #define HAS_BUTTONS
  25. #define HAS_NEOPIXEL_LED
  26. #define HAS_PWR_MGMT
  27. #define HAS_SCREEN
  28. #define HAS_SD
  29. #define USE_SD
  30. #define HAS_TEMP_SENSOR
  31. //#define HAS_GPS
  32. #endif
  33. #ifdef MARAUDER_MINI
  34. //#define FLIPPER_ZERO_HAT
  35. #define HAS_BATTERY
  36. #define HAS_BT
  37. #define HAS_BUTTONS
  38. #define HAS_NEOPIXEL_LED
  39. //#define HAS_PWR_MGMT
  40. #define HAS_SCREEN
  41. #define HAS_SD
  42. #define USE_SD
  43. #define HAS_TEMP_SENSOR
  44. //#define HAS_GPS
  45. #endif
  46. #ifdef MARAUDER_V4
  47. //#define FLIPPER_ZERO_HAT
  48. #define HAS_BATTERY
  49. #define HAS_BT
  50. //#define HAS_BUTTONS
  51. #define HAS_NEOPIXEL_LED
  52. //#define HAS_PWR_MGMT
  53. #define HAS_SCREEN
  54. #define HAS_SD
  55. #define USE_SD
  56. #define HAS_TEMP_SENSOR
  57. #define HAS_GPS
  58. #endif
  59. #ifdef MARAUDER_V6
  60. //#define FLIPPER_ZERO_HAT
  61. #define HAS_BATTERY
  62. #define HAS_BT
  63. //#define HAS_BUTTONS
  64. #define HAS_NEOPIXEL_LED
  65. //#define HAS_PWR_MGMT
  66. #define HAS_SCREEN
  67. #define HAS_SD
  68. #define USE_SD
  69. #define HAS_TEMP_SENSOR
  70. #define HAS_GPS
  71. #endif
  72. #ifdef MARAUDER_KIT
  73. //#define FLIPPER_ZERO_HAT
  74. #define HAS_BATTERY
  75. #define HAS_BT
  76. //#define HAS_BUTTONS
  77. #define HAS_NEOPIXEL_LED
  78. //#define HAS_PWR_MGMT
  79. #define HAS_SCREEN
  80. #define HAS_SD
  81. #define USE_SD
  82. #define HAS_TEMP_SENSOR
  83. #define HAS_GPS
  84. #endif
  85. #ifdef GENERIC_ESP32
  86. //#define FLIPPER_ZERO_HAT
  87. //#define HAS_BATTERY
  88. #define HAS_BT
  89. //#define HAS_BUTTONS
  90. //#define HAS_NEOPIXEL_LED
  91. //#define HAS_PWR_MGMT
  92. //#define HAS_SCREEN
  93. //#define HAS_SD
  94. //#define HAS_TEMP_SENSOR
  95. //#define HAS_GPS
  96. #endif
  97. #ifdef MARAUDER_FLIPPER
  98. //#define FLIPPER_ZERO_HAT
  99. //#define HAS_BATTERY
  100. //#define HAS_BT
  101. //#define HAS_BUTTONS
  102. //#define HAS_NEOPIXEL_LED
  103. //#define HAS_PWR_MGMT
  104. //#define HAS_SCREEN
  105. #define DISABLE_RGB_LED
  106. //#define HAS_GPS
  107. #ifndef WRITE_PACKETS_SERIAL
  108. #define HAS_SD
  109. #define USE_SD
  110. #endif
  111. //#define HAS_TEMP_SENSOR
  112. #endif
  113. #ifdef ESP32_LDDB
  114. //#define FLIPPER_ZERO_HAT
  115. //#define HAS_BATTERY
  116. //#define HAS_BT
  117. //#define HAS_BUTTONS
  118. #define HAS_NEOPIXEL_LED
  119. //#define HAS_PWR_MGMT
  120. //#define HAS_SCREEN
  121. #define HAS_SD
  122. #define USE_SD
  123. //#define HAS_TEMP_SENSOR
  124. //#define HAS_GPS
  125. #endif
  126. #ifdef MARAUDER_DEV_BOARD_PRO
  127. //#define FLIPPER_ZERO_HAT
  128. //#define HAS_BATTERY
  129. #define HAS_BT
  130. //#define HAS_BUTTONS
  131. #define HAS_NEOPIXEL_LED
  132. //#define HAS_PWR_MGMT
  133. //#define HAS_SCREEN
  134. #define HAS_SD
  135. #define USE_SD
  136. //#define HAS_TEMP_SENSOR
  137. #define HAS_GPS
  138. #endif
  139. #ifdef XIAO_ESP32_S3
  140. #define FLIPPER_ZERO_HAT
  141. //#define HAS_BATTERY
  142. #define HAS_BT
  143. //#define HAS_BUTTONS
  144. //#define HAS_NEOPIXEL_LED
  145. //#define HAS_PWR_MGMT
  146. //#define HAS_SCREEN
  147. //#define HAS_SD
  148. //#define HAS_TEMP_SENSOR
  149. //#define HAS_GPS
  150. #endif
  151. //// END BOARD FEATURES
  152. //// FLIPPER ZERO HAT SETTINGS
  153. #ifdef FLIPPER_ZERO_HAT
  154. //#ifdef MARAUDER_FLIPPER
  155. // #define USE_FLIPPER_SD
  156. //#endif
  157. #ifdef XIAO_ESP32_S3
  158. #define USE_FLIPPER_SD
  159. #endif
  160. #endif
  161. //// END FLIPPER ZERO HAT SETTINGS
  162. //// POWER MANAGEMENT
  163. #ifdef HAS_PWR_MGMT
  164. #ifdef MARAUDER_M5STICKC
  165. #include "AXP192.h"
  166. #endif
  167. #endif
  168. //// END POWER MANAGEMENT
  169. //// BUTTON DEFINITIONS
  170. #ifdef HAS_BUTTONS
  171. #ifdef MARAUDER_MINI
  172. #define L_BTN 13
  173. #define C_BTN 34
  174. #define U_BTN 36
  175. #define R_BTN 39
  176. #define D_BTN 35
  177. #endif
  178. #ifdef MARAUDER_M5STICKC
  179. #define L_BTN -1
  180. #define C_BTN 37
  181. #define U_BTN -1
  182. #define R_BTN -1
  183. #define D_BTN 39
  184. #endif
  185. #endif
  186. //// END BUTTON DEFINITIONS
  187. //// DISPLAY DEFINITIONS
  188. #ifdef HAS_SCREEN
  189. #ifdef MARAUDER_M5STICKC
  190. #define SCREEN_CHAR_WIDTH 40
  191. //#define TFT_MISO 19
  192. #define TFT_MOSI 15
  193. #define TFT_SCLK 13
  194. #define TFT_CS 5
  195. #define TFT_DC 23
  196. #define TFT_RST 18
  197. #define TFT_BL 10
  198. #define TOUCH_CS 10
  199. //#define SD_CS 1
  200. #define SCREEN_BUFFER
  201. #define MAX_SCREEN_BUFFER 9
  202. #define BANNER_TEXT_SIZE 1
  203. #ifndef TFT_WIDTH
  204. #define TFT_WIDTH 135
  205. #endif
  206. #ifndef TFT_HEIGHT
  207. #define TFT_HEIGHT 240
  208. #endif
  209. #define CHAR_WIDTH 6
  210. #define SCREEN_WIDTH TFT_HEIGHT // Originally 240
  211. #define SCREEN_HEIGHT TFT_WIDTH // Originally 320
  212. #define HEIGHT_1 TFT_WIDTH
  213. #define WIDTH_1 TFT_WIDTH
  214. #define STANDARD_FONT_CHAR_LIMIT (TFT_WIDTH/6) // number of characters on a single line with normal font
  215. #define TEXT_HEIGHT (TFT_HEIGHT/10) // Height of text to be printed and scrolled
  216. #define BOT_FIXED_AREA 0 // Number of lines in bottom fixed area (lines counted from bottom of screen)
  217. #define TOP_FIXED_AREA 48 // Number of lines in top fixed area (lines counted from top of screen)
  218. #define YMAX TFT_HEIGHT // Bottom of screen area
  219. #define minimum(a,b) (((a) < (b)) ? (a) : (b))
  220. //#define MENU_FONT NULL
  221. #define MENU_FONT &FreeMono9pt7b // Winner
  222. //#define MENU_FONT &FreeMonoBold9pt7b
  223. //#define MENU_FONT &FreeSans9pt7b
  224. //#define MENU_FONT &FreeSansBold9pt7b
  225. #define BUTTON_ARRAY_LEN 12
  226. #define STATUS_BAR_WIDTH (TFT_HEIGHT/16)
  227. #define LVGL_TICK_PERIOD 6
  228. #define FRAME_X 100
  229. #define FRAME_Y 64
  230. #define FRAME_W 120
  231. #define FRAME_H 50
  232. // Red zone size
  233. #define REDBUTTON_X FRAME_X
  234. #define REDBUTTON_Y FRAME_Y
  235. #define REDBUTTON_W (FRAME_W/2)
  236. #define REDBUTTON_H FRAME_H
  237. // Green zone size
  238. #define GREENBUTTON_X (REDBUTTON_X + REDBUTTON_W)
  239. #define GREENBUTTON_Y FRAME_Y
  240. #define GREENBUTTON_W (FRAME_W/2)
  241. #define GREENBUTTON_H FRAME_H
  242. #define STATUSBAR_COLOR 0x4A49
  243. #endif
  244. #ifdef MARAUDER_V4
  245. #define SCREEN_CHAR_WIDTH 40
  246. #define HAS_ILI9341
  247. #define BANNER_TEXT_SIZE 2
  248. #ifndef TFT_WIDTH
  249. #define TFT_WIDTH 240
  250. #endif
  251. #ifndef TFT_HEIGHT
  252. #define TFT_HEIGHT 320
  253. #endif
  254. #define TFT_SHIELD
  255. #define SCREEN_WIDTH TFT_WIDTH
  256. #define SCREEN_HEIGHT TFT_HEIGHT
  257. #define HEIGHT_1 TFT_WIDTH
  258. #define WIDTH_1 TFT_HEIGHT
  259. #define STANDARD_FONT_CHAR_LIMIT (TFT_WIDTH/6) // number of characters on a single line with normal font
  260. #define TEXT_HEIGHT 16 // Height of text to be printed and scrolled
  261. #define BOT_FIXED_AREA 0 // Number of lines in bottom fixed area (lines counted from bottom of screen)
  262. #define TOP_FIXED_AREA 48 // Number of lines in top fixed area (lines counted from top of screen)
  263. #define YMAX 320 // Bottom of screen area
  264. #define minimum(a,b) (((a) < (b)) ? (a) : (b))
  265. //#define MENU_FONT NULL
  266. #define MENU_FONT &FreeMono9pt7b // Winner
  267. //#define MENU_FONT &FreeMonoBold9pt7b
  268. //#define MENU_FONT &FreeSans9pt7b
  269. //#define MENU_FONT &FreeSansBold9pt7b
  270. #define BUTTON_ARRAY_LEN 12
  271. #define STATUS_BAR_WIDTH 16
  272. #define LVGL_TICK_PERIOD 6
  273. #define FRAME_X 100
  274. #define FRAME_Y 64
  275. #define FRAME_W 120
  276. #define FRAME_H 50
  277. // Red zone size
  278. #define REDBUTTON_X FRAME_X
  279. #define REDBUTTON_Y FRAME_Y
  280. #define REDBUTTON_W (FRAME_W/2)
  281. #define REDBUTTON_H FRAME_H
  282. // Green zone size
  283. #define GREENBUTTON_X (REDBUTTON_X + REDBUTTON_W)
  284. #define GREENBUTTON_Y FRAME_Y
  285. #define GREENBUTTON_W (FRAME_W/2)
  286. #define GREENBUTTON_H FRAME_H
  287. #define STATUSBAR_COLOR 0x4A49
  288. #define KIT_LED_BUILTIN 13
  289. #endif
  290. #ifdef MARAUDER_V6
  291. #define SCREEN_CHAR_WIDTH 40
  292. #define HAS_ILI9341
  293. #define BANNER_TEXT_SIZE 2
  294. #ifndef TFT_WIDTH
  295. #define TFT_WIDTH 240
  296. #endif
  297. #ifndef TFT_HEIGHT
  298. #define TFT_HEIGHT 320
  299. #endif
  300. #define TFT_DIY
  301. #define SCREEN_WIDTH TFT_WIDTH
  302. #define SCREEN_HEIGHT TFT_HEIGHT
  303. #define HEIGHT_1 TFT_WIDTH
  304. #define WIDTH_1 TFT_HEIGHT
  305. #define STANDARD_FONT_CHAR_LIMIT (TFT_WIDTH/6) // number of characters on a single line with normal font
  306. #define TEXT_HEIGHT 16 // Height of text to be printed and scrolled
  307. #define BOT_FIXED_AREA 0 // Number of lines in bottom fixed area (lines counted from bottom of screen)
  308. #define TOP_FIXED_AREA 48 // Number of lines in top fixed area (lines counted from top of screen)
  309. #define YMAX 320 // Bottom of screen area
  310. #define minimum(a,b) (((a) < (b)) ? (a) : (b))
  311. //#define MENU_FONT NULL
  312. #define MENU_FONT &FreeMono9pt7b // Winner
  313. //#define MENU_FONT &FreeMonoBold9pt7b
  314. //#define MENU_FONT &FreeSans9pt7b
  315. //#define MENU_FONT &FreeSansBold9pt7b
  316. #define BUTTON_ARRAY_LEN 12
  317. #define STATUS_BAR_WIDTH 16
  318. #define LVGL_TICK_PERIOD 6
  319. #define FRAME_X 100
  320. #define FRAME_Y 64
  321. #define FRAME_W 120
  322. #define FRAME_H 50
  323. // Red zone size
  324. #define REDBUTTON_X FRAME_X
  325. #define REDBUTTON_Y FRAME_Y
  326. #define REDBUTTON_W (FRAME_W/2)
  327. #define REDBUTTON_H FRAME_H
  328. // Green zone size
  329. #define GREENBUTTON_X (REDBUTTON_X + REDBUTTON_W)
  330. #define GREENBUTTON_Y FRAME_Y
  331. #define GREENBUTTON_W (FRAME_W/2)
  332. #define GREENBUTTON_H FRAME_H
  333. #define STATUSBAR_COLOR 0x4A49
  334. #define KIT_LED_BUILTIN 13
  335. #endif
  336. #ifdef MARAUDER_KIT
  337. #define SCREEN_CHAR_WIDTH 40
  338. #define HAS_ILI9341
  339. #define BANNER_TEXT_SIZE 2
  340. #ifndef TFT_WIDTH
  341. #define TFT_WIDTH 240
  342. #endif
  343. #ifndef TFT_HEIGHT
  344. #define TFT_HEIGHT 320
  345. #endif
  346. #define TFT_DIY
  347. #define KIT
  348. #define SCREEN_WIDTH TFT_WIDTH
  349. #define SCREEN_HEIGHT TFT_HEIGHT
  350. #define HEIGHT_1 TFT_WIDTH
  351. #define WIDTH_1 TFT_HEIGHT
  352. #define STANDARD_FONT_CHAR_LIMIT (TFT_WIDTH/6) // number of characters on a single line with normal font
  353. #define TEXT_HEIGHT 16 // Height of text to be printed and scrolled
  354. #define BOT_FIXED_AREA 0 // Number of lines in bottom fixed area (lines counted from bottom of screen)
  355. #define TOP_FIXED_AREA 48 // Number of lines in top fixed area (lines counted from top of screen)
  356. #define YMAX 320 // Bottom of screen area
  357. #define minimum(a,b) (((a) < (b)) ? (a) : (b))
  358. //#define MENU_FONT NULL
  359. #define MENU_FONT &FreeMono9pt7b // Winner
  360. //#define MENU_FONT &FreeMonoBold9pt7b
  361. //#define MENU_FONT &FreeSans9pt7b
  362. //#define MENU_FONT &FreeSansBold9pt7b
  363. #define BUTTON_ARRAY_LEN 12
  364. #define STATUS_BAR_WIDTH 16
  365. #define LVGL_TICK_PERIOD 6
  366. #define FRAME_X 100
  367. #define FRAME_Y 64
  368. #define FRAME_W 120
  369. #define FRAME_H 50
  370. // Red zone size
  371. #define REDBUTTON_X FRAME_X
  372. #define REDBUTTON_Y FRAME_Y
  373. #define REDBUTTON_W (FRAME_W/2)
  374. #define REDBUTTON_H FRAME_H
  375. // Green zone size
  376. #define GREENBUTTON_X (REDBUTTON_X + REDBUTTON_W)
  377. #define GREENBUTTON_Y FRAME_Y
  378. #define GREENBUTTON_W (FRAME_W/2)
  379. #define GREENBUTTON_H FRAME_H
  380. #define STATUSBAR_COLOR 0x4A49
  381. #define KIT_LED_BUILTIN 13
  382. #endif
  383. #ifdef MARAUDER_MINI
  384. #define SCREEN_CHAR_WIDTH 40
  385. #define TFT_MISO 19
  386. #define TFT_MOSI 23
  387. #define TFT_SCLK 18
  388. #define TFT_CS 27
  389. #define TFT_DC 26
  390. #define TFT_RST 5
  391. #define TFT_BL 32
  392. #define TOUCH_CS 21
  393. #define SD_CS 4
  394. #define SCREEN_BUFFER
  395. #define MAX_SCREEN_BUFFER 9
  396. #define BANNER_TEXT_SIZE 1
  397. #ifndef TFT_WIDTH
  398. #define TFT_WIDTH 128
  399. #endif
  400. #ifndef TFT_HEIGHT
  401. #define TFT_HEIGHT 128
  402. #endif
  403. #define CHAR_WIDTH 6
  404. #define SCREEN_WIDTH TFT_WIDTH // Originally 240
  405. #define SCREEN_HEIGHT TFT_HEIGHT // Originally 320
  406. #define HEIGHT_1 TFT_WIDTH
  407. #define WIDTH_1 TFT_WIDTH
  408. #define STANDARD_FONT_CHAR_LIMIT (TFT_WIDTH/6) // number of characters on a single line with normal font
  409. #define TEXT_HEIGHT (TFT_HEIGHT/10) // Height of text to be printed and scrolled
  410. #define BOT_FIXED_AREA 0 // Number of lines in bottom fixed area (lines counted from bottom of screen)
  411. #define TOP_FIXED_AREA 48 // Number of lines in top fixed area (lines counted from top of screen)
  412. #define YMAX TFT_HEIGHT // Bottom of screen area
  413. #define minimum(a,b) (((a) < (b)) ? (a) : (b))
  414. //#define MENU_FONT NULL
  415. #define MENU_FONT &FreeMono9pt7b // Winner
  416. //#define MENU_FONT &FreeMonoBold9pt7b
  417. //#define MENU_FONT &FreeSans9pt7b
  418. //#define MENU_FONT &FreeSansBold9pt7b
  419. #define BUTTON_ARRAY_LEN 12
  420. #define STATUS_BAR_WIDTH (TFT_HEIGHT/16)
  421. #define LVGL_TICK_PERIOD 6
  422. #define FRAME_X 100
  423. #define FRAME_Y 64
  424. #define FRAME_W 120
  425. #define FRAME_H 50
  426. // Red zone size
  427. #define REDBUTTON_X FRAME_X
  428. #define REDBUTTON_Y FRAME_Y
  429. #define REDBUTTON_W (FRAME_W/2)
  430. #define REDBUTTON_H FRAME_H
  431. // Green zone size
  432. #define GREENBUTTON_X (REDBUTTON_X + REDBUTTON_W)
  433. #define GREENBUTTON_Y FRAME_Y
  434. #define GREENBUTTON_W (FRAME_W/2)
  435. #define GREENBUTTON_H FRAME_H
  436. #define STATUSBAR_COLOR 0x4A49
  437. #endif
  438. #endif
  439. //// END DISPLAY DEFINITIONS
  440. //// MENU DEFINITIONS
  441. #ifdef MARAUDER_V4
  442. #define BANNER_TIME 100
  443. #define COMMAND_PREFIX "!"
  444. // Keypad start position, key sizes and spacing
  445. #define KEY_X 120 // Centre of key
  446. #define KEY_Y 50
  447. #define KEY_W 240 // Width and height
  448. #define KEY_H 22
  449. #define KEY_SPACING_X 0 // X and Y gap
  450. #define KEY_SPACING_Y 1
  451. #define KEY_TEXTSIZE 1 // Font size multiplier
  452. #define ICON_W 22
  453. #define ICON_H 22
  454. #define BUTTON_PADDING 22
  455. //#define BUTTON_ARRAY_LEN 5
  456. #endif
  457. #ifdef MARAUDER_V6
  458. #define BANNER_TIME 100
  459. #define COMMAND_PREFIX "!"
  460. // Keypad start position, key sizes and spacing
  461. #define KEY_X 120 // Centre of key
  462. #define KEY_Y 50
  463. #define KEY_W 240 // Width and height
  464. #define KEY_H 22
  465. #define KEY_SPACING_X 0 // X and Y gap
  466. #define KEY_SPACING_Y 1
  467. #define KEY_TEXTSIZE 1 // Font size multiplier
  468. #define ICON_W 22
  469. #define ICON_H 22
  470. #define BUTTON_PADDING 22
  471. //#define BUTTON_ARRAY_LEN 5
  472. #endif
  473. #ifdef MARAUDER_KIT
  474. #define BANNER_TIME 100
  475. #define COMMAND_PREFIX "!"
  476. // Keypad start position, key sizes and spacing
  477. #define KEY_X 120 // Centre of key
  478. #define KEY_Y 50
  479. #define KEY_W 240 // Width and height
  480. #define KEY_H 22
  481. #define KEY_SPACING_X 0 // X and Y gap
  482. #define KEY_SPACING_Y 1
  483. #define KEY_TEXTSIZE 1 // Font size multiplier
  484. #define ICON_W 22
  485. #define ICON_H 22
  486. #define BUTTON_PADDING 22
  487. //#define BUTTON_ARRAY_LEN 5
  488. #endif
  489. #ifdef MARAUDER_MINI
  490. #define BANNER_TIME 50
  491. #define COMMAND_PREFIX "!"
  492. // Keypad start position, key sizes and spacing
  493. #define KEY_X (TFT_WIDTH/2) // Centre of key
  494. #define KEY_Y (TFT_HEIGHT/4.5)
  495. #define KEY_W TFT_WIDTH // Width and height
  496. #define KEY_H (TFT_HEIGHT/12.8)
  497. #define KEY_SPACING_X 0 // X and Y gap
  498. #define KEY_SPACING_Y 1
  499. #define KEY_TEXTSIZE 1 // Font size multiplier
  500. #define ICON_W 22
  501. #define ICON_H 22
  502. #define BUTTON_PADDING 10
  503. #endif
  504. #ifdef MARAUDER_M5STICKC
  505. #define BANNER_TIME 50
  506. #define COMMAND_PREFIX "!"
  507. // Keypad start position, key sizes and spacing
  508. #define KEY_X (TFT_WIDTH/2) // Centre of key
  509. #define KEY_Y (TFT_HEIGHT/5)
  510. #define KEY_W TFT_HEIGHT // Width and height
  511. #define KEY_H (TFT_HEIGHT/17)
  512. #define KEY_SPACING_X 0 // X and Y gap
  513. #define KEY_SPACING_Y 1
  514. #define KEY_TEXTSIZE 1 // Font size multiplier
  515. #define ICON_W 22
  516. #define ICON_H 22
  517. #define BUTTON_PADDING 10
  518. #endif
  519. //// END MENU DEFINITIONS
  520. //// SD DEFINITIONS
  521. #ifdef FLIPPER_ZERO_HAT
  522. #ifdef USE_FLIPPER_SD
  523. #define WRITE_PACKETS_SERIAL
  524. #endif
  525. #elif defined(USE_SD)
  526. #ifdef MARAUDER_V4
  527. #define SD_CS 12
  528. #endif
  529. #ifdef MARAUDER_V6
  530. #define SD_CS 12
  531. #endif
  532. #ifdef MARAUDER_KIT
  533. #define SD_CS 12
  534. #endif
  535. #ifdef MARAUDER_MINI
  536. #define SD_CS 4
  537. #endif
  538. #ifdef MARAUDER_M5STICKC
  539. #define SD_CS 10
  540. #endif
  541. #ifdef MARAUDER_FLIPPER
  542. #define SD_CS 10
  543. #endif
  544. #ifdef ESP32_LDDB
  545. #define SD_CS 4
  546. #endif
  547. #ifdef MARAUDER_DEV_BOARD_PRO
  548. #define SD_CS 4
  549. #endif
  550. #ifdef XIAO_ESP32_S3
  551. #define SD_CS 3
  552. #endif
  553. #endif
  554. //// END SD DEFINITIONS
  555. //// SCREEN STUFF
  556. #ifndef HAS_SCREEN
  557. #define TFT_WHITE 0
  558. #define TFT_CYAN 0
  559. #define TFT_BLUE 0
  560. #define TFT_RED 0
  561. #define TFT_GREEN 0
  562. #define TFT_GREY 0
  563. #define TFT_GRAY 0
  564. #define TFT_MAGENTA 0
  565. #define TFT_VIOLET 0
  566. #define TFT_ORANGE 0
  567. #define TFT_YELLOW 0
  568. #define STANDARD_FONT_CHAR_LIMIT 40
  569. #define FLASH_BUTTON -1
  570. #include <FS.h>
  571. #include <functional>
  572. #include <LinkedList.h>
  573. #include "SPIFFS.h"
  574. #include "Assets.h"
  575. #endif
  576. //// END SCREEN STUFF
  577. //// MEMORY LOWER LIMIT STUFF
  578. // These values are in bytes
  579. #ifdef MARAUDER_M5STICKC
  580. #define MEM_LOWER_LIM 20000
  581. #elif defined(MARAUDER_MINI)
  582. #define MEM_LOWER_LIM 20000
  583. #elif defined(MARAUDER_V4)
  584. #define MEM_LOWER_LIM 20000
  585. #elif defined(MARAUDER_V6)
  586. #define MEM_LOWER_LIM 20000
  587. #elif defined(MARAUDER_KIT)
  588. #define MEM_LOWER_LIM 20000
  589. #elif defined(GENERIC_ESP32)
  590. #define MEM_LOWER_LIM 20000
  591. #elif defined(MARAUDER_FLIPPER)
  592. #define MEM_LOWER_LIM 20000
  593. #elif defined(ESP32_LDDB)
  594. #define MEM_LOWER_LIM 20000
  595. #elif defined(MARAUDER_DEV_BOARD_PRO)
  596. #define MEM_LOWER_LIM 20000
  597. #elif defined(XIAO_ESP32_S3)
  598. #define MEM_LOWER_LIM 20000
  599. #endif
  600. //// END MEMORY LOWER LIMIT STUFF
  601. //// NEOPIXEL STUFF
  602. #ifdef HAS_NEOPIXEL_LED
  603. #if defined(ESP32_LDDB)
  604. #define PIN 17
  605. #elif defined(MARAUDER_DEV_BOARD_PRO)
  606. #define PIN 16
  607. #else
  608. #define PIN 25
  609. #endif
  610. #endif
  611. //// END NEOPIXEL STUFF
  612. //// BOARD PIN OVERRIDES
  613. #ifdef XIAO_ESP32_S3
  614. #ifdef USE_FLIPPER_SD
  615. #define XIAO_RX1 1
  616. #define XIAO_TX1 2
  617. #endif
  618. #endif
  619. //// END BOARD PIN OVERRIDES
  620. //// EVIL PORTAL STUFF
  621. #ifdef MARAUDER_M5STICKC
  622. #define MAX_HTML_SIZE 11400
  623. #elif defined(MARAUDER_MINI)
  624. #define MAX_HTML_SIZE 11400
  625. #elif defined(MARAUDER_V4)
  626. #define MAX_HTML_SIZE 11400
  627. #elif defined(MARAUDER_V6)
  628. #define MAX_HTML_SIZE 11400
  629. #elif defined(MARAUDER_KIT)
  630. #define MAX_HTML_SIZE 11400
  631. #elif defined(GENERIC_ESP32)
  632. #define MAX_HTML_SIZE 20000
  633. #elif defined(MARAUDER_FLIPPER)
  634. #define MAX_HTML_SIZE 20000
  635. #elif defined(ESP32_LDDB)
  636. #define MAX_HTML_SIZE 20000
  637. #elif defined(MARAUDER_DEV_BOARD_PRO)
  638. #define MAX_HTML_SIZE 20000
  639. #elif defined(XIAO_ESP32_S3)
  640. #define MAX_HTML_SIZE 20000
  641. #else
  642. #define MAX_HTML_SIZE 20000
  643. #endif
  644. //// END EVIL PORTAL STUFF
  645. //// GPS STUFF
  646. #ifdef HAS_GPS
  647. #ifdef MARAUDER_V6
  648. #define GPS_SERIAL_INDEX 2
  649. #define GPS_TX 4
  650. #define GPS_RX 13
  651. #define mac_history_len 512
  652. #elif defined(MARAUDER_V4)
  653. #define GPS_SERIAL_INDEX 2
  654. #define GPS_TX 4
  655. #define GPS_RX 13
  656. #define mac_history_len 512
  657. #elif defined(MARAUDER_KIT)
  658. #define GPS_SERIAL_INDEX 2
  659. #define GPS_TX 4
  660. #define GPS_RX 13
  661. #define mac_history_len 512
  662. #elif defined(MARAUDER_DEV_BOARD_PRO)
  663. #define GPS_SERIAL_INDEX 2
  664. #define GPS_TX 21
  665. #define GPS_RX 17
  666. #define mac_history_len 512
  667. #elif defined(MARAUDER_FLIPPER)
  668. #define GPS_SERIAL_INDEX 1
  669. #define GPS_TX 9
  670. #define GPS_RX 21
  671. #define mac_history_len 512
  672. #endif
  673. #else
  674. #define mac_history_len 512
  675. #endif
  676. //// END GPS STUFF
  677. //// MARAUDER TITLE STUFF
  678. #ifdef MARAUDER_V4
  679. #define MARAUDER_TITLE_BYTES 13578
  680. #elif defined(MARAUDER_V6)
  681. #define MARAUDER_TITLE_BYTES 13578
  682. #elif defined(MARAUDER_KIT)
  683. #define MARAUDER_TITLE_BYTES 13578
  684. #elif defined(MARAUDER_MINI)
  685. #define MARAUDER_TITLE_BYTES 13578
  686. #else
  687. #define MARAUDER_TITLE_BYTES 13578
  688. #endif
  689. //// END MARAUDER TITLE STUFF
  690. #endif