Mirror and Don't mirror - problem

by Kama on Sun Jul 18, 2010 2:48 pm

Hi,

Why at mirror inclusion to the programmed image the shone strip is added? Look the attached screenshot. At normal inclusion (not mirror) everything is all right. How to get rid of it?

Regards
Attachments
555.JPG
555.JPG (61.73 KiB) Viewed 3153 times
Kama
 
Posts: 6
Joined: Sat May 30, 2009 12:02 am
Location: Rus

Re: Mirror and Don't mirror - problem

by Kama on Mon Jul 19, 2010 11:31 pm

Nobody knows? What can be? In pictures of users the same problem - look. On the mirror party there is a parasitic luminescence of LEDs.
Attachments
22.JPG
22.JPG (10.38 KiB) Viewed 3139 times
Kama
 
Posts: 6
Joined: Sat May 30, 2009 12:02 am
Location: Rus

Re: Mirror and Don't mirror - problem

by adafruit on Sat Jul 24, 2010 11:02 am

hmm, thats a bug we havent heard of before. does it move if you change the magnet position?
User avatar
adafruit
 
Posts: 11642
Joined: Thu Apr 06, 2006 3:21 pm
Location: nyc

Re: Mirror and Don't mirror - problem

by Kama on Sun Jul 25, 2010 10:55 pm

Position of a magnet does not correct a question. If the image is located on all area - then this luminescence is not visible. If the image is located not on all area - then there is a parasitic luminescence :(
Kama
 
Posts: 6
Joined: Sat May 30, 2009 12:02 am
Location: Rus

Re: Mirror and Don't mirror - problem

by matajumotors on Tue Jul 27, 2010 10:07 am

There already was solution for this bug on forum, cant find it now. That "line" is last line of previous image or first of next image cant tell for shure =]

But You must change this (in main.c):
Code: Select all | TOGGLE FULL SIZE
  if (sensor_timer < ((F_CPU/NUM_PIXELS)/256 * STANDBY_TIMEOUT)) {   
    // less than ~5 seconds since last sensor
    PORTA |= 0x1;
    eepromaddr %= NUM_PIXELS * 4;
    spieeprom_read_into_leds(eepromaddr + anim_eeprom_offset, FRONT);
    if (mirror) {
      spieeprom_read_into_leds(anim_eeprom_offset + (1024UL-eepromaddr), BACK);
    } else {
      LATCH_SELECT_PORT |= _BV(BACK);
      NOP; NOP; NOP; NOP;
      LATCH_SELECT_PORT &= ~_BV(BACK);
    }


to this:
Code: Select all | TOGGLE FULL SIZE
  if (sensor_timer < ((F_CPU/NUM_PIXELS)/256 * STANDBY_TIMEOUT)) {   
    // less than ~5 seconds since last sensor
    PORTA |= 0x1;
    eepromaddr %= NUM_PIXELS * 4;
    spieeprom_read_into_leds(eepromaddr + anim_eeprom_offset, FRONT);
    if (mirror) {
      spieeprom_read_into_leds(anim_eeprom_offset + (1024UL-eepromaddr)-4, BACK);
    } else {
      LATCH_SELECT_PORT |= _BV(BACK);
      NOP; NOP; NOP; NOP;
      LATCH_SELECT_PORT &= ~_BV(BACK);
    }
Some of my projects here -> http://kaspars.id.lv
User avatar
matajumotors
 
Posts: 46
Joined: Sun Jul 09, 2006 1:00 pm
Location: Latvia

Re: Mirror and Don't mirror - problem

by Kama on Tue Jul 27, 2010 6:18 pm

Thanks. I will try.
Last edited by Kama on Wed Jul 28, 2010 5:10 pm, edited 1 time in total.
Kama
 
Posts: 6
Joined: Sat May 30, 2009 12:02 am
Location: Rus

Re: Mirror and Don't mirror - problem

by Kama on Wed Jul 28, 2010 5:07 pm

matajumotors wrote:There already was solution for this bug on forum, cant find it now. That "line" is last line of previous image or first of next image cant tell for shure =]

But You must change this (in main.c):
Code: Select all | TOGGLE FULL SIZE
  if (sensor_timer < ((F_CPU/NUM_PIXELS)/256 * STANDBY_TIMEOUT)) {   
    // less than ~5 seconds since last sensor
    PORTA |= 0x1;
    eepromaddr %= NUM_PIXELS * 4;
    spieeprom_read_into_leds(eepromaddr + anim_eeprom_offset, FRONT);
    if (mirror) {
      spieeprom_read_into_leds(anim_eeprom_offset + (1024UL-eepromaddr), BACK);
    } else {
      LATCH_SELECT_PORT |= _BV(BACK);
      NOP; NOP; NOP; NOP;
      LATCH_SELECT_PORT &= ~_BV(BACK);
    }


to this:
Code: Select all | TOGGLE FULL SIZE
  if (sensor_timer < ((F_CPU/NUM_PIXELS)/256 * STANDBY_TIMEOUT)) {   
    // less than ~5 seconds since last sensor
    PORTA |= 0x1;
    eepromaddr %= NUM_PIXELS * 4;
    spieeprom_read_into_leds(eepromaddr + anim_eeprom_offset, FRONT);
    if (mirror) {
      spieeprom_read_into_leds(anim_eeprom_offset + (1024UL-eepromaddr)-4, BACK);
    } else {
      LATCH_SELECT_PORT |= _BV(BACK);
      NOP; NOP; NOP; NOP;
      LATCH_SELECT_PORT &= ~_BV(BACK);
    }




Only I have not understood - how to make these changes? Where to make changes? The special program is necessary? Help, please :|

Regards
Kama
 
Posts: 6
Joined: Sat May 30, 2009 12:02 am
Location: Rus

Re: Mirror and Don't mirror - problem

by matajumotors on Wed Jul 28, 2010 11:50 pm

Personaly i am using AVR Studio, but the easiest way i think, is to download firmware, there will be source files, make file and hex file. edit the main.c in notepad (add "-4"), save and compile it with the make file, search site for tutorial using make files. Then upload new hex to spokepov.
Some of my projects here -> http://kaspars.id.lv
User avatar
matajumotors
 
Posts: 46
Joined: Sun Jul 09, 2006 1:00 pm
Location: Latvia

Re: Mirror and Don't mirror - problem

by Kama on Thu Aug 05, 2010 4:48 am

Thanks. If I make changes - all will earn normally? And not the mirror party also will be normal to work?
P.S. How with you to communicate? I have a question concerning your project on a site http://kaspars.id.lv (a lantern for a bicycle). My server gives out an error at letter sending :-( My address kama95@rambler.ru
P.P.S. Do you speak in Russian? :wink:
Last edited by Kama on Thu Aug 12, 2010 12:31 pm, edited 1 time in total.
Kama
 
Posts: 6
Joined: Sat May 30, 2009 12:02 am
Location: Rus

Re: Mirror and Don't mirror - problem

by matajumotors on Fri Aug 06, 2010 1:00 pm

If you will change that, everything will work as it should. =] Da, ja govorju po russki =] mail is working.
Some of my projects here -> http://kaspars.id.lv
User avatar
matajumotors
 
Posts: 46
Joined: Sun Jul 09, 2006 1:00 pm
Location: Latvia

Re: Mirror and Don't mirror - problem

by tony18183 on Sat Feb 25, 2012 10:36 pm

Hi

May I know how to upload the new firmware into Spokepov with USBtiny?
tony18183
 
Posts: 28
Joined: Mon Dec 19, 2011 10:19 pm