Commit Graph

86 Commits

Author SHA1 Message Date
DaOfficialWizard
90a17d6e6f
feat: improve the initial USB implementation, increase the XCLK clock for S3 boards - higher framerate over usb
* refactor: begin cleaning up USB impl

* refactor: factor out the unneeded header

- use USB envs instead of a header
- use ifndef for one define

* fix: disable Observer on wifi handler

* refactor: rename wrovers3 environments

- add naming convention for QIO PSRAM

* ci(ci-fix): fix gh action environments

* Increase XCLK frequency to 24MHz for higher frame rates on ESP32-S3 boards (#49)

* feat: increase OV2640 clock freq to yield ~70FPS

* fix: cleanup comments

---------

Co-authored-by: Sebastian Fitt <9294002+Blu3u@users.noreply.github.com>
2023-04-19 23:55:52 +02:00
Zdzislaw Goik
8e34e31a2a
feat: usb support for esp32s3 (#47)
* fix: completed esp32s3 boards config

* feat: enable usb cdc on boot
* fix: memory_type has to be octal qio_opi for psram to init
* fix: cannot flash from platformio without --no-stub flag

* fix: fixed pinouts copy paste issues

* feat: add system header to unify future traits

* feat: add rudimentary usb cdc video streaming impl

* feat: add rudimentary impl for usb tracker in main

* fix: revert wrovers3 board names

* feat: disable radio to reduce power usage

* feat: add v2 serial comms with packet headers

---------

authored-by: Sebastian Fitt <sebastian.fitt@sebastianfitt.pl>
2023-04-10 20:36:12 +02:00
DaOfficialWizard
17e3049be1
feat: Code cleanup and initial implementation of improv
* feat: add improv

- add version to build flags
- add improv
- remove byte pointers from config calls

* ´fix: improve not initilizing in ADHOC mode

* feat: add wifihandler to observers

* refactor: move improv handler to top of loop

* refactor: minor refactor to callback

* refactor: minor refactor to callback

* refactor: trying to weed out the timeout issue

* refactor: trying to weed out the timeout issue

* refactor: total refactor to clean up code

-  clean up statemanagers
- fix observer
- fix bugs introducted by fixing the observer

BREAKING CHANGES

* refactor: minor logging refactor

* fix: add config save to delete method

* fix: improv provisioning error

* refactor: simplify library interface

- implement pass by reference for all objects
- implement get by reference for all objects
- remove passing state to classes
- migrate to range based for loops

BREAKING CHANGES

* fix: esp crash on wifi updates

- figure out why esp crashes sometimes when wifi config changes

* fix: add warning about clang-format to baseAPI.hpp

* refactor: update improv

* ci(ci-test): setup prerelease

- use ci to merge binaries for testing in etvr app

* fix: compile time error

* fix: compile time error

* fix folder names

* fix folder names

* fix: compile time error

* fix: compile time error

* feat: remove improv from main

- keep improv code, incase we fix issue later on
- comment out improv includes

* fix: remove pre-release from release cycle

* fix: resolve wifiState manager state in config

* fix: file name casing

* fix: file name casing

* feat: add custom string_view header

- it is the intention to implement string_view
- vastly reduce heap allocations and improve performance of strings

* refactor: move improv class to new branch

* fix: file name casing

* feat: add newer esp cam driver

* Cleanup after merge

---------

Co-authored-by: lorow <smykupyka@gmail.com>
2023-04-02 17:44:38 +02:00
Zdzislaw Goik
58989b4567 feat: Initial implementation of Elegant OTA with support for API server (#41)
---------

Co-authored-by: ZanzyTHEbar <pyr0ndet0s97@gmail.com>
2023-03-24 22:27:58 +01:00
ZanzyTHEbar
50168a824b refactor: minor refactor just to trigger action 2023-03-21 14:53:35 +00:00
ZanzyTHEbar
2ef8b7428d fix: prepareCMD rename zip files before release 2023-03-21 14:28:23 +00:00
Zdzislaw Goik
0b3950dc86
DRAFT: Feature/leds (#40)
* WIP Remove unnecessary state, refactor led manager to be able to display more complex states, cleanup the code, document stuff

* fix: fix wifiHandler

- fixed wifiHandler instance issue
- added automatic mapping of WiFi Status to internal WifiState_e enum
- removed shaencoder util function
- removed serial manager

* Add a way of preventing the led from being continously displayed if its not ment to

* Further improvements to LED management

* fix: compile errors

---------

Co-authored-by: ZanzyTHEbar <pyr0ndet0s97@gmail.com>
Co-authored-by: DaOfficialWizard <45744329+ZanzyTHEbar@users.noreply.github.com>
2023-03-16 16:21:55 +00:00
ZanzyTHEbar
3eeae182ee feat: add esp32s3 support
- add beta simulator environment
2023-03-09 20:21:10 +00:00
ZanzyTHEbar
c96e3f7108 fix: fix current OTA stack
- update board.ini to clean it up
- minor update to OTA.cpp
2023-03-05 18:48:25 +00:00
ZanzyTHEbar
4af73d0377 fix: bug in MDNS handler 2023-03-03 13:04:53 +00:00
Zdzislaw Goik
58d0f26602
Add tasks for restarting the esp (#37) 2023-02-26 10:28:38 +00:00
ZanzyTHEbar
5fbe5a358b feat: clean up config for users
- added custom ini files for configurations
-  created user config file for easier access
- added formatting to codebase
2023-01-31 10:35:22 +00:00
ZanzyTHEbar
4d3a67baa3 update
- fix bug where ADHOC mode stream pointed to localhost IP
2023-01-01 22:40:50 +00:00
ZanzyTHEbar
27fc62a43f remove experimental code 2022-12-31 02:44:49 +00:00
ZanzyTHEbar
9a6bdc3549 update environment variable usage 2022-12-15 02:57:09 +00:00
ZanzyTHEbar
74d09fb1f8 update
- add GitHub OTA Handler to API
2022-12-14 23:33:12 +00:00
ZanzyTHEbar
a862e54d4a update
- implement autodiscovery class
2022-12-13 22:46:07 +00:00
ZanzyTHEbar
061e3cb8d3 update
- setup default mDNS hostname to be user configurable
2022-12-03 05:17:30 +00:00
ZanzyTHEbar
70c8d1697b update
- fix bug in mDNS handler
2022-12-03 04:49:08 +00:00
ZanzyTHEbar
09bfc2c964 add back-in missing break statement 2022-12-03 02:30:48 +00:00
ZanzyTHEbar
74f3f27b56 fix mDNS handler not starting bug 2022-12-03 02:27:59 +00:00
lorow
6a2f003761 Extract queryMDNS to feature/mdns-query 2022-11-23 00:06:25 +01:00
ZanzyTHEbar
656f8e80f5 update
- basic formatting
2022-11-17 21:38:13 +00:00
ZanzyTHEbar
1fec7f6e3e update
- add cpu clock setting
2022-11-17 21:29:55 +00:00
ZanzyTHEbar
326ec8e4cd Major Update
- migrate the rest of the toRepresentation methods out of header file
- optimize toRepresentation methods
- add query service to set up service name and hostname
2022-11-01 22:12:16 +00:00
ZanzyTHEbar
88f5cf29b7 Major Update
- fixed Hostname issue with ArduinoOTA and mDNS
- fix flashing binary issue on Unix systems
2022-11-01 18:32:05 +00:00
Lorow
ce8b27dee4 Fix MDNS not starting properly and always having the same service name 2022-10-02 18:49:05 +02:00
ZanzyTHEbar
69d2666f20 Update
- Added LED debugging to cameraHandler setup method
2022-09-25 13:38:03 +01:00
ZanzyTHEbar
40ca34c382 update
- Add one new state to LEDStates enum
- Added proper lookup-table based state mapping for led states
- created a handleLED method to call in the loop
2022-09-25 13:12:03 +01:00
Lorow
01f04fee86 Refactor camera to that it's initialization is signal based, depending on config loading successfully 2022-09-19 23:49:37 +02:00
ZanzyTHEbar
711905a1f4 large update
- Added auto-versioning system to firmware name
- Formatted ini file
- setup OTA enabled state to be controllable by the user
2022-09-10 17:25:29 +01:00
Lorow
6a33cb450d Simplify baseAPI - replace calls to projectManager through hardware managers with a pointer to said manager
Fix a bug - saving camera settings was triggering networksConfigUpdated event

Hookup camera update

TODO:
- simplify APi utilities - consider replacing inheritance with composition
- Add brightness control setting to API
2022-09-08 00:38:09 +02:00
Lorow
dd5c6454a6 Update comments with explanation as to why we're setting false to loaded networks
add printing of the stream address
2022-09-05 23:38:25 +02:00
ZanzyTHEbar
27ece435cd Revert "Large Update"
This reverts commit 4812ba5f35.
2022-09-05 13:46:42 +01:00
ZanzyTHEbar
4812ba5f35 Large Update
- Clean up main
- Change handling of APIServer start & StreamServer start
to the WiFiHandler
- Call the setupWifi in the WiFiHandler begin method
- Remove WiFiHandler from APIServer and pass in ProjectConfig directly
2022-09-05 13:11:59 +01:00
ZanzyTHEbar
6217195248 update
- Added debug-mode support
- to disable DebugOutput change debug_mode to 0
2022-09-05 12:37:57 +01:00
Lorow
8bb1eccd12 Add cameraReset endpoint, move logo from apiutils to separate package, fix emplace_back - missing param for adhoc
Known issues: doesn't compile, linker can't seem to find a definition of setCameraConfig
2022-09-01 22:50:14 +02:00
ZanzyTHEbar
7a06a8da5c update
- Add user-configured wifi channel to constructor
2022-08-31 16:25:53 +01:00
ZanzyTHEbar
b26f7d7a22 oopsie update
- Forgot to add constructor for WiFiConfig_t struct. Woops.
2022-08-31 00:51:37 +01:00
ZanzyTHEbar
583a2545f8 Update
- Finally fix preferences lib
- Setup API to use the preferences lib
- Setup the WiFiHandler to use the preferences lib
- Remove the triggerWifiConfigWrite
in favour of handling that in the setWiFi method itself
2022-08-31 00:45:30 +01:00
ZanzyTHEbar
a5820c674a update
- Revert Constructors for now to fix APIServer not working
- Begin implementation of the Preferences Lib
2022-08-28 17:14:10 +01:00
ZanzyTHEbar
2ea338d0cd update
- Disable Brownout detection
- Begin adding camera settings handlers to API
- fix ADHOC stream server issue
2022-08-24 18:24:41 +01:00
ZanzyTHEbar
3d6f8827a8 hehe update
- Fix pathing issues with Utilities classes
- Adding really nice ASCII art for boot image :)
2022-08-23 00:04:25 +01:00
ZanzyTHEbar
a18129faf7 update
- Fix some formatting issues
2022-08-20 14:57:34 +01:00
ZanzyTHEbar
78cc161e45 minor update
- Changed formatting from 2 spaces to 4 for indents
2022-08-20 14:14:58 +01:00
ZanzyTHEbar
687be8afb7 large update
- Fully reworked the API code, wifi handler, and serial manager
- Added proper APIServer
2022-08-20 14:02:10 +01:00
ZanzyTHEbar
8ce0ea0860 update
- Fix preferences lib
- Fix ADHOC
- Optimize API
- Implement full preferences lib
- Implement API with preferences lib
2022-08-15 05:54:06 +01:00
ZanzyTHEbar
c426688eb2 update
- refactoring wifi handler
2022-08-14 13:04:44 +01:00
ZanzyTHEbar
652a1775b3 update
- Create typedefs for the StateManager
2022-08-13 01:36:47 +01:00
ZanzyTHEbar
e0ddf4697d update
- implement full ADHOC
- implement WiFi class config usage with ADHOC
- implement API usage with WiFi class config struct
2022-08-13 00:37:36 +01:00