Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fixed RMT frame corruption issue due to interactions with the UART. #444

Merged
merged 18 commits into from Dec 16, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
18 commits
Select commit Hold shift + click to select a range
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
3 changes: 3 additions & 0 deletions ESPixelStick/src/GPIO_Defs.hpp
Expand Up @@ -72,6 +72,7 @@ typedef enum
} uart_port_t;
#endif // def ARDUINO_ARCH_ESP8266

// #define BOARD_ESP01S
// #define BOARD_ESPS_V3
// #define ESP32_CAM
// #define ESP32_TTGO_T8
Expand All @@ -87,6 +88,8 @@ typedef enum
# include "GPIO_Defs_ESP32_generic.hpp"
#elif defined (ESP32_D1_MINI)
# include "GPIO_Defs_ESP32_D1_MINI.hpp"
#elif defined (BOARD_ESP01S)
# include "GPIO_Defs_ESP8266_ESP01S.hpp"
#elif defined (BOARD_ESPS_V3)
# include "GPIO_Defs_ESP8266_ESPS_V3.hpp"
#elif defined (ARDUINO_ARCH_ESP8266)
Expand Down
29 changes: 29 additions & 0 deletions ESPixelStick/src/GPIO_Defs_ESP8266_ESP01S.hpp
@@ -0,0 +1,29 @@
#pragma once
/*
* GPIO_Defs_ESP8266_ESP01S.hpp - Output Management class
*
* Project: ESPixelStick - An ESP8266 / ESP32 and E1.31 based pixel driver
* Copyright (c) 2021 Shelby Merrick
* http://www.forkineye.com
*
* This program is provided free for you to use in any way that you wish,
* subject to the laws and regulations where you are using it. Due diligence
* is strongly suggested before using this code. Please give credit where due.
*
* The Author makes no warranty of any kind, express or implied, with regard
* to this program or the documentation contained in this document. The
* Author shall not be liable in any event for incidental or consequential
* damages in connection with, or arising out of, the furnishing, performance
* or use of these programs.
*
*/

//Output Manager
#define DEFAULT_UART_1_GPIO gpio_num_t::GPIO_NUM_2
#define UART_LAST OutputChannelId_UART_1

// File Manager
#define SD_CARD_MISO_PIN gpio_num_t::GPIO_NUM_12
#define SD_CARD_MOSI_PIN gpio_num_t::GPIO_NUM_13
#define SD_CARD_CLK_PIN gpio_num_t::GPIO_NUM_14
#define SD_CARD_CS_PIN gpio_num_t::GPIO_NUM_15
2 changes: 1 addition & 1 deletion ESPixelStick/src/input/InputFPPRemotePlayFileFsm.cpp
Expand Up @@ -478,7 +478,7 @@ void fsm_PlayFile_state_Stopping::Init (c_InputFPPRemotePlayFile* Parent)
p_Parent = Parent;
Parent->pCurrentFsmState = &(Parent->fsm_PlayFile_state_Stopping_imp);

p_Parent->SyncControl.LastRcvdElapsedSeconds;
p_Parent->SyncControl.LastRcvdElapsedSeconds = 0;
p_Parent->FrameControl.ElapsedPlayTimeMS = 0;

// DEBUG_END;
Expand Down
2 changes: 1 addition & 1 deletion ESPixelStick/src/output/OutputCommon.hpp
Expand Up @@ -70,7 +70,7 @@ class c_OutputCommon
OTYPE_t OutputType; ///< Type to report for this driver
OID_t OutputChannelId;
bool HasBeenInitialized = false;
uint32_t FrameMinDurationInMicroSec = 0;
uint32_t FrameMinDurationInMicroSec = 20000;
uint8_t * pOutputBuffer = nullptr;
uint16_t OutputBufferSize = 0;
uint32_t FrameCount = 0;
Expand Down
3 changes: 2 additions & 1 deletion ESPixelStick/src/output/OutputMgr.hpp
Expand Up @@ -128,7 +128,8 @@ class c_OutputMgr
void InstantiateNewOutputChannel (e_OutputChannelIds ChannelIndex, e_OutputType NewChannelType, bool StartDriver = true);
void CreateNewConfig ();

c_OutputCommon * pOutputChannelDrivers[uint32_t(e_OutputChannelIds::OutputChannelId_End)]; ///< pointer(s) to the current active output drivers
// pointer(s) to the current active output drivers
c_OutputCommon * pOutputChannelDrivers[uint32_t(e_OutputChannelIds::OutputChannelId_End)];

// configuration parameter names for the channel manager within the config file

Expand Down