Wacky unknown pointer issues.

I do use new, but only in the constructor once. And I never get rid of it.

Here, I'll post all the code. I think Nick is right, something is devouring memory.

Started to realize that it is pervasive throughout the code.
Getting late. Most likely won't reply till tomorrow. Thanks in advance for the help.

I would look at the constructor in the CubeControl class. Maybe I am doing something wrong there.

Arduino Code:

#include <CubeControl.h>

byte numLayers = 4;
byte numRegisters = 2;

byte BottomRow = 0;
byte BottomMid = 1;
byte TopMid = 2;
byte TopRow = 3;

byte chipOneData = 4;
byte chipTwoData = 5;
byte chipOneClock = 6;
byte chipTwoClock = 7;
byte chipOneReset = 8;
byte chipTwoReset = 9;

byte layerPinData[4] = {0,1,2,3};
byte chipDataPinData[2] = {chipOneData, chipTwoData};
byte chipClockPinData[2] = {chipOneClock, chipTwoClock};
byte chipResetPinData[2] = {chipOneReset, chipTwoReset};

byte layerOff[2] = {0,0};
byte layerTest[2] = {12, 255};
byte layerTestDu[2] = {6, 200};
byte layerTestTres[2] = {19, 170};
byte layerTestQuaf[2] = {37, 90};

unsigned int oneSec = 1000;

cubeStep awesomeOne = {{{1,10},{2,20},{3,30},{4,40}},2,100};

CubeControl controller(numLayers, numRegisters,layerPinData, chipDataPinData, chipClockPinData, chipResetPinData);

void setup()
{
   pinMode(BottomRow, OUTPUT);
   pinMode(BottomMid, OUTPUT);
   pinMode(TopMid, OUTPUT);
   pinMode(TopRow, OUTPUT);
   pinMode(chipOneData, OUTPUT);
   pinMode(chipTwoData, OUTPUT);
   pinMode(chipOneClock, OUTPUT);
   pinMode(chipTwoClock, OUTPUT);
   pinMode(chipOneReset, OUTPUT);
   pinMode(chipTwoReset, OUTPUT);
  
  digitalWrite(chipOneReset, HIGH);
  digitalWrite(chipTwoReset, HIGH);
  
  digitalWrite(BottomRow, HIGH);
  digitalWrite(BottomMid, HIGH);
  digitalWrite(TopMid, HIGH);
  digitalWrite(TopRow, HIGH);
  
  Serial.begin(9600);
}

void loop()
{
  controller.writeCube(awesomeOne);
  //controller.makeItRain(10000, 1000, 16);
  delay(100);
}

The rest is attached. I can't put it all in. Lol.

CubeControl.h (1.85 KB)

CubeControl.cpp (6.33 KB)