Atmowin/ Atmolight Plugin - System für SEDU und Arduino basiertes Ambilight (1 Viewer)

Schicksal

Portal Pro
February 7, 2010
800
29
Home Country
Germany Germany
Macht es einen Unterschied welchen Digital I/O ich für einen Atmoduino verwende?
Ich nutze PIN 11 und 13 und habe ab und zu blaues aufblitzen am unteren Rand.
Ich habe auch von einem Erdungsproblem gelesen und man soll die gleiche Erdung wie am Arduino verwenden.
Meine Erdung hab ich auf der anderen Seite neben den analogen PINs angeschlossen. Mag da evtl. der Fehler liegen?
Erde ist doch Erde oder nicht?

----------------

Is there any difference by using the digital I/O Pins?
I'm using PIN 11 and 13 but have ranon blue flashes on the bottom.
I read about a ground problem and those colour flashes an you should use the same ground on the arduino.
I'm using the ground Pins beside the analog PINs. Should i use the ground in on the other side near to the digital I/Os?
 

angie05

MP Donator
  • Premium Supporter
  • March 29, 2010
    141
    118
    Home Country
    Germany Germany
    @Schicksal: früher mit meinem Samsung Fernseher hatte ich auch das Problem mit aufblitzenden LEDs. Das lag bei mir an den kapazitiven Bedientasten. Diese erzeugen ein sehr starkes Störfeld, sodass die Datenkommunikation vom Ambilight durcheinander kommt. Das Protokoll benutzt leider keine Fehlerkorrektur. Behoben habe ich es damals mittels einer auf Erde gelegten und mit Alufolie bespannten Pappe, die ich im Bereich des Bedienfeldes an der Rückseite des TVs platziert habe.
    Dein Aufblitzen kann aber auch diverse andere Ursachen haben.

    @BassFan und @azzuro: bitte das Thema nicht mit für andere irrelevanten Git-/ Repo-/ Kompilierungsproblemen zuspammen. Das geht auch per PM.
     
    B

    BassFan

    Guest
    @BassFan und @azzuro: bitte das Thema nicht mit für andere irrelevanten Git-/ Repo-/ Kompilierungsproblemen zuspammen. Das geht auch per PM.
    Tut mir leid ..
    Hoffe du verzeihst mir nochmal. ;)

    Werde dann mit meiner Arbeit was AtmoWin und Ambilight angeht
    einen eigenen Thread erstellen wenn es an der zeit ist!

    Andererseits hätte es mich gefreut wenn du mir hier rüber ein paar Infos hättest geben können.
    Da ich deine Lib nicht kompilieren (Debuggen) kann, kann ich auch nicht ergründen wie ihr vorgeht.

    gruss
     
    Last edited by a moderator:
    B

    BassFan

    Guest
    Ich denke das einfachste sollte sein wenn @angie05 nach der 1.6 Final diese Möglichkeit zur Verfügung stellt soweit er zeit und Lust dazu hat.
    Es fehlen mir leider die nötigen Informationen um den Support für MP bereitzustellen.
    Zu dem kann ich hier mit meiner lokalen Branch TV\Video nicht debuggen.

    gruss
     

    Baserunner

    MP Donator
  • Premium Supporter
  • November 19, 2012
    229
    147
    Home Country
    Germany Germany
    Ich habe mal eine ganz Basic-Frage: "Wie finde ich denn heraus welche Firmware auf meinem SEDU Board läuft?" Auf meiner Platine steht es wäre ein Revision 2.0, deswegen traue ich mich nicht gemäß Anleitung upzugraden ... Aber evtl. muss ich das ja gar nicht??

    Ich hab's ja hier schon mal geschrieben, dass ich nicht weiß welche Firmware auf meinem SEDU Board aufgespielt ist. Leider lässt sich dies wohl auch nicht mehr nachträglich feststellen (hatte Kontakt zum Verkäufer aufgenommen).

    Wenn ich nun Ambi.alpha.07_package_core1.5.0.zip installiere, funktioniert das Ambilight nur sehr ruckelhaft mit etwa 500ms Verzögerung. Auch die Farbübergänge sind nicht "smooth". Ist dies nun der Beweis, dass ich tatsächlich die falsche Firmware auf dem Board habe, oder hat jemand noch andere Ideen woran es liegen könnte?

    PS: Mit der orginal AtmoWinA.exe und dem ursprünglichen Plugin läuft es problemlos. Nur mit dieser Kombination habe ich Re-Start Problem aus dem Stand-by und muss bei jeden System.Resume das MP neu starten, was ich mit dem alpha.07 Mod nicht müsste.
     

    angie05

    MP Donator
  • Premium Supporter
  • March 29, 2010
    141
    118
    Home Country
    Germany Germany
    @Baserunner: hast du die neue AtmowinA.exe registriert, wie das im Startpost beschrieben ist? Wenn ja, schick mir mal alle deine Eistellungsscreens (AtmowinA.exe und MP-Atmolight-Plugin) per PM. Bei deiner SEDU FW kann ich dir leider auch nicht helfen.
     

    montugar

    Portal Member
    May 23, 2011
    5
    0
    39
    Hallo ich habe das Problem wenn ich den Code für Fastspi2 hernehme auf meinen Arduino dann geht keine LED mehr an

    Arduino UNO
    LED Stripe LPD8806

    kann mir jemand helfen wo ich einen Fehler gemacht habe.

    vielen dank schon mal und einen guten Rutsch noch ins neue Jahr

    Code:
    #include <FastSPI_LED2.h>
    
    //Set the number of leds in the strip.
    #define NUM_LEDS 124
    
    // Sometimes chipsets wire in a backwards sort of way
    //struct CRGB {
    //  unsigned char g;
    //  unsigned char b;
    //  unsigned char r;
    // };
    // struct CRGB { unsigned char r; unsigned char g; unsigned char b; };
    //struct CRGB *leds; alt
    struct CRGB leds[NUM_LEDS];
    
    //#define PIN GND
    #define DATA_PIN 11
    #define CLOCK_PIN 13
    
    void setup(){
      Serial.begin(115200);
      //FastSPI_LED.setLeds(NUM_LEDS); alt
      //Change this to match your led strip
      LEDS.addLeds<LPD8806>(leds, NUM_LEDS);
    
      LEDS.show();
      clearLeds();
    }
    
    int readByte(){
      return Serial.read();
    }
    
    void clearLeds(){
      for(int tmpChannel=0; tmpChannel<NUM_LEDS; tmpChannel++){
        leds[tmpChannel].r = 0;
        leds[tmpChannel].b = 0;
        leds[tmpChannel].g = 0; 
      };
    }
    
    //For testing LEDS without RS232 just start this in loop()
    void FirstLight(){
          // Move a single white led
          for(int whiteLed = 124; whiteLed < NUM_LEDS; whiteLed = whiteLed + 1) {
          // Turn our current led on to white, then show the leds
          leds[whiteLed] = CRGB::White;
    
          // Show the leds (only one of which is set to white, from above)
          FastLED.show();
    
          // Wait a little bit
          delay(100);
    
          // Turn our current led back to black for the next loop around
          leds[whiteLed] = CRGB::Black;
      }
    } 
    
    void loop(){
      //FirstLight();
     
      if(readByte() == 0xFF){
        if(readByte() == 0x00){
          if(readByte() == 0x00){
            int channels = readByte();
            for(int channel=0; channel<channels; channel++){
              leds[channel].g = readByte();
              leds[channel].r = readByte();
              leds[channel].b = readByte();
            }
            FastSPI_LED.show();
          }
        }
      }
      else
      {
      }
    }
     

    RicoHTPC

    MP Donator
  • Premium Supporter
  • February 4, 2011
    1,441
    172
    Cuxhaven
    Home Country
    Germany Germany
    Hallo zusammen, ein Ambilight System hat mich schon immer fasziniert und mittelfristig will ich mein MP System damit auch ausstatten.
    Da ich demnächst aber erstmal meine Hardware auf Stand bringen muss, wollte ich mal fragen wie viel mehr CPU Last durch Atmowin verursacht wird.
    Wenn ich mit einem Core-i3 auskommen würde um zwei Displays und Atmowin zu befeuern, könnte ich mir nämlich ein neues Board sparen...
     

    Schicksal

    Portal Pro
    February 7, 2010
    800
    29
    Home Country
    Germany Germany
    @montugar
    Ist das der Code von olli123?
    Hab seinen an meine 8806 angepasst. Ich schau heute Abend mal nach.

    Probier es mal hiermit:
    Code:
    #include <FastSPI_LED2.h>
    
    //Set the number of leds in the strip.
    #define NUM_LEDS 166
    
    // Sometimes chipsets wire in a backwards sort of way
    //struct CRGB {
    //  unsigned char g;
    //  unsigned char r;
    //  unsigned char b;
    // };
    // struct CRGB { unsigned char r; unsigned char g; unsigned char b; };
    //struct CRGB *leds; alt
    struct CRGB leds[NUM_LEDS];
    
    #define PIN 4
    #define DATA_PIN 11
    #define CLOCK_PIN 13
    
    void setup(){
      Serial.begin(115200);
      //FastSPI_LED.setLeds(NUM_LEDS); alt
      LEDS.addLeds<LPD8806,BGR>(leds, NUM_LEDS);
    
      //Change this to match your led strip
      //FastSPI_LED.setChipset(CFastSPI_LED::SPI_WS2811);
     
    
      //If non-default SPI pins have been used change this.
      //FastSPI_LED.setPin(PIN,11,13);
      //FastSPI_LED.setPin(PIN);
      //FastSPI_LED.setDataRate(5);
    
      //LEDS.init();
      LEDS.show();
      //leds = (struct CRGB*)FastSPI_LED.getRGBData();
      clearLeds();
    }
    
    int readByte(){
      while(Serial.available()==0){
        //LEDS.clear();
    //    clearLeds();
      }
      //LEDS.show();
      return Serial.read();
    }
    
    void clearLeds(){
      for(int tmpChannel=0; tmpChannel<NUM_LEDS; tmpChannel++){
        leds[tmpChannel].b = 0;
        leds[tmpChannel].r = 0;
        leds[tmpChannel].g = 0; 
      };
      //FastSPI_LED.show();
    }
    
    void FirstLight(){
        // Move a single white led
      for(int whiteLed = 0; whiteLed < NUM_LEDS; whiteLed = whiteLed + 1) {
          // Turn our current led on to white, then show the leds
          leds[whiteLed] = CRGB::White;
    
          // Show the leds (only one of which is set to white, from above)
          FastLED.show();
    
          // Wait a little bit
          delay(100);
    
          // Turn our current led back to black for the next loop around
          leds[whiteLed] = CRGB::Black;
      }
    } 
    
    void loop(){
      //FirstLight();
     
      if(readByte() == 0xFF){
        if(readByte() == 0x00){
          if(readByte() == 0x00){
            int channels = readByte();
            for(int channel=0; channel<channels; channel++){
              leds[channel].g = readByte();
              leds[channel].r = readByte();
              leds[channel].b = readByte();
            }
            FastSPI_LED.show();
          }
        }
      }
      else
      {
        //clearLeds();
        //FastSPI_LED.stop();
      }
    }
     
    Last edited:

    Users who are viewing this thread

    Top Bottom