Help - Fastled Running Lights

Hello there,

i am new to coding on arduino and i am trying to teach myself some stuff here.
But i am stuck since some days because i can’t find the fault.

I am trying to drive 400 WS2812B LED’s with a running light made with the sin8 function.
It works till 255 LED’s, but i can’t get it to work with more.

i already tried to half the inputs for sin8() and i tried to make the maxbyte higher.
Everything went out the same= Lights go on but aren’t moving.

My next step would be to find out how to manipulate the length of each glowing trail.
But for now, it would be just enough to get some hints to get it to work with 400 LEDS.

Hardware:
Arduino Mega with Ethernet Shield
5V - 70 Ampere Power Source. Around each meter new feed.
Newest Arduino Software on mac.

Best regards and thanks in advance,
Boris

#include "FastLED.h"

FASTLED_USING_NAMESPACE


#define DATA_PIN    6
#define LED_TYPE    WS2812B
#define COLOR_ORDER GRB
#define NUM_LEDS    250

#define BRIGHTNESS         255
#define FRAMES_PER_SECOND  120

CRGB leds[NUM_LEDS];
byte sinus = 0;
byte sinusPlusInMilli = 20;
byte geschwindigkeit=1; 
byte maxByte = 255;

void setup() {
  delay(1000); // 1 second delay for recovery
  Serial.begin(9600);

  FastLED.addLeds<LED_TYPE, DATA_PIN, COLOR_ORDER>(leds, NUM_LEDS).setCorrection(TypicalLEDStrip);
  FastLED.setBrightness(BRIGHTNESS);
  Serial.println("Sinustest");
}

void loop()
{

  EVERY_N_MILLISECONDS(sinusPlusInMilli)
  {
    sinus += geschwindigkeit;
  }

  EVERY_N_MILLISECONDS(1000 / FRAMES_PER_SECOND)
  {
    sinustest();
    FastLED.show();
  }

}

void sinustest() {
  byte lHelligkeit;
  for (byte i = 0; i < NUM_LEDS; i++) {
    lHelligkeit = sin8(sinus + i * NUM_LEDS);
    leds[i] = CHSV(30, 255, lHelligkeit);
  }
  }

/*void sinustestback() {
  byte lHelligkeit;
  for (byte i = 0; i < NUM_LEDS; i++) {
    lHelligkeit = sin8(sinus - i * NUM_LEDS);
    leds[i] = CHSV(30, 255, lHelligkeit);
  }
}*/

A byte variable cannot hold a value >255

lg, couka