Forum Index > Projects > LED Pegboard and Matrix Projects
 New Peggy2 software: Peggyboard
 |  Printable Version
By: DaveParker (offline) on Wednesday, April 22 2009 @ 10:54 AM PDT (Read 7327 times)  
DaveParker

Greetings,

I've written my first app for the peggy2. It's a simple message board app that lets you write and save a message using the navigation buttons. The characters are 3x5 pixels each allowing for 6x4 characters on the board. The message is stored in EEPROM so it can be redisplayed when you turn the peggy back on.

http://www.daveparker42.com/peggy2_peggyboard_10.zip

Please let me know if you have any suggestions/feedback! Smile


Forum Apprentice
Apprentice


Status: offline

Registered: 04/02/09
Posts: 13

Profile Email    
   
By: solipsistnation (offline) on Friday, April 24 2009 @ 04:05 PM PDT  
solipsistnation


Neat! That's a cute (and potentially very useful) little character set, too.

The one thing I notice is that every time you finish changing a character and hit select to stop editing that character, it writes to eeprom. This seems like you could easily shorten the useful lifespan of the chip... Would it maybe make more sense to have a Save function, or only save when you exit from edit mode, and then go through and compare and only write characters that have changed? Conceivably, if I were editing a message and went back and forth and had to, say, insert a character somewhere early on, I'd end up having to rewrite the whole message into the eeprom as I go, with extra writes if I made mistakes along the way or something. On the other hand, writing as you go makes it MUCH more user-friendly. It's a nice use of the eeprom. Probably I'm overreacting, since 100,000 is a pretty large number of writes...

Cool program. 8)


Forum Apprentice
Apprentice

Status: offline

Registered: 03/02/09
Posts: 13

Profile Email    
   
By: DaveParker (offline) on Friday, April 24 2009 @ 04:41 PM PDT  
DaveParker

Thanks for the feedback solipsistnation Smile

I thought about your suggestion for a while about reducing eeprom writes by only writing back all changed characters at once when exiting edit mode. While it would potentially reduce the number of writes a little, I think the impact to usability would be too severe. Once a character is edited, I expect it to be changed....perhaps I've gotten too used to changing app preferences on a mac?

I think it would take quite a bit of effort to burn through the specked 100,000 writes with manual edits. I'd be more worried if the writes happened in every loop() or on a short duration internal. However, one change I should make for is to only write back updated characters to the EEPROM if the character has actually been changed. I'll do a point release in a week or so.

Best,
Dave


Forum Apprentice
Apprentice


Status: offline

Registered: 04/02/09
Posts: 13

Profile Email    
   
By: solipsistnation (offline) on Friday, April 24 2009 @ 10:46 PM PDT  
solipsistnation

Yeah, I bet not updating unless that position has actually changed will help some.

I also think that your way makes it much more usable, and I bet you're right that it won't cause problems unless people do something so weird it would almost have to be intentional. (Although you know, I've run into all kinds of things that people didn't know would be bad...) I do like that changes are immediately persistent. That's something I wouldn't have thought to do. (And checking location by location and only updating things that have changed is actually a good idea. I should roll that into MeggySeq, along with a bunch of other bug fixes, like fixing the fencepost error when you start it playing.)

Did I mention your thing here is cool? It's cool. 8)


Forum Apprentice
Apprentice

Status: offline

Registered: 03/02/09
Posts: 13

Profile Email    
   
By: rj44319 (offline) on Sunday, May 10 2009 @ 06:18 PM PDT  
rj44319

hi, i would like to help you develup your code ther to scroling mesages and mabe on multiple lines? i think with tweking it would work


Forum Apprentice
Apprentice

Status: offline

Registered: 05/05/09
Posts: 5

Profile Email    
   
By: Anonymous: DaveParker () on Monday, May 11 2009 @ 09:08 AM PDT  
Anonymous: DaveParker

Quote by: rj44319

hi, i would like to help you develup your code ther to scroling mesages and mabe on multiple lines? i think with tweking it would work


Great! It would be fun to collaborate on this.

I recently tried out the example code from the Peggy Writer library written by Gareth Lloyd (http://code.google.com/p/peggy/). The larger font and scrolling text is easier to read from a distance, plus it looks pretty cool. Perhaps we could figure out how to use his library to display messages written using the peggyboard edit mode?

I'll send you a separate message and we can discuss ideas and details.

-Dave





       
   
By: DaveParker (offline) on Saturday, July 04 2009 @ 10:11 AM PDT  
DaveParker

The code for this app has moved. I also made the fix mentioned earlier to only update the eeprom if a character has actually been changed.

sites dot google dot com slash site slash daveparker slash source-code slash peggy2_peggyboard_101.zip

Darn. The message above was flagged as a canned meat product enjoyed by Hawaiians . Perhaps by adding this sentence I'll be able to submit it?

No. That wasn't it. Perhaps I should lower-case the word 'eeprom'?

No. That wasn't it either. Random rewrite time.....

Maybe I can't link to a zip file. But I could before. I'll try unlinking it.

Ok, this is turning out to be quite a game. I wish I knew what the rules were.

Let's write out the url in english.


Forum Apprentice
Apprentice


Status: offline

Registered: 04/02/09
Posts: 13

Profile Email    
   
By: DaveParker (offline) on Saturday, July 04 2009 @ 10:32 AM PDT  
DaveParker

Ah, ha. google sites is unloved by the spam filter....lets try circumventing that:

Here is the code:

http://bit.ly/peggyboard101


Forum Apprentice
Apprentice

Status: offline

Registered: 04/02/09
Posts: 13

Profile Email    
   
By: Anonymous: Chris () on Wednesday, June 15 2011 @ 10:12 AM PDT  
Anonymous: Chris

I recently tried out the example code from the Peggy Writer library written by Gareth Lloyd (http://code.google.com/p/peggy/). The larger font and scrolling text is easier to read from a distance, plus it looks pretty cool. Perhaps we could figure out how to use his library to display messages written using the peggyboard edit mode?

I just tried that about 20 minutes ago and edited the message to say dont step on the grass

then i uploaded to peggy and when i went to change it again it stoped working so i deleted the file and re downloaded. now when i try to upload i get this:

PeggyWriter_Hello.cpp:6:25: error: PeggyWriter.h: No such file or directory
PeggyWriter_Hello:8: error: 'PeggyWriter' does not name a type
PeggyWriter_Hello.cpp: In function 'void loop()':
PeggyWriter_Hello:20: error: 'myWriter' was not declared in this scope

i didnt change anything and put it where the old writer was. I am new to programing so any help would be greatly appreciated.






       
   
By: Windell (offline) on Wednesday, June 15 2011 @ 11:31 AM PDT  
Windell

Not sure what the problem is. You may just need to restart Arduino for it to find the library again.


Windell H. Oskay
drwho(at)evilmadscientist.com
http://www.evilmadscientist.com/

Forum Evil Scientist
Evil Scientist

Status: offline

Registered: 06/15/06
Posts: 1932
Sunnyvale, CA

Profile Email Website  
   
By: Anonymous: chris () on Thursday, June 16 2011 @ 03:45 PM PDT  
Anonymous: chris

I restarted Arduino and saved writer to its required place and now im getting this
i know its a lot but i just dont have a clue what to do!










PeggyWriter_Hello.cpp: In function 'void loop()':
PeggyWriter_Hello:20: error: no matching function for call to 'PeggyWriter::drawCharacter(char, Peggy2&, byte&, byte&Wink'
C:\Users\Mack\Documents\Arduino\arduino-0022\libraries\PeggyWriter_Hello/PeggyWriter.h:64: note: candidates are: void PeggyWriter::drawCharacter(char, Peggy2*, uint8_t, uint8_t)
PeggyWriter_Hello:22: error: no matching function for call to 'PeggyWriter::drawCharacter(char, Peggy2&, byte&, byte&Wink'
C:\Users\Mack\Documents\Arduino\arduino-0022\libraries\PeggyWriter_Hello/PeggyWriter.h:64: note: candidates are: void PeggyWriter::drawCharacter(char, Peggy2*, uint8_t, uint8_t)
PeggyWriter_Hello:24: error: no matching function for call to 'PeggyWriter::drawCharacter(char, Peggy2&, byte&, byte&Wink'
C:\Users\Mack\Documents\Arduino\arduino-0022\libraries\PeggyWriter_Hello/PeggyWriter.h:64: note: candidates are: void PeggyWriter::drawCharacter(char, Peggy2*, uint8_t, uint8_t)
PeggyWriter_Hello:26: error: no matching function for call to 'PeggyWriter::drawCharacter(char, Peggy2&, byte&, byte&Wink'
C:\Users\Mack\Documents\Arduino\arduino-0022\libraries\PeggyWriter_Hello/PeggyWriter.h:64: note: candidates are: void PeggyWriter::drawCharacter(char, Peggy2*, uint8_t, uint8_t)
PeggyWriter_Hello:28: error: no matching function for call to 'PeggyWriter::drawCharacter(char, Peggy2&, byte&, byte&Wink'
C:\Users\Mack\Documents\Arduino\arduino-0022\libraries\PeggyWriter_Hello/PeggyWriter.h:64: note: candidates are: void PeggyWriter::drawCharacter(char, Peggy2*, uint8_t, uint8_t)
PeggyWriter_Hello:31: error: no matching function for call to 'PeggyWriter::drawCharacter(char, Peggy2&, byte&, byte&Wink'
C:\Users\Mack\Documents\Arduino\arduino-0022\libraries\PeggyWriter_Hello/PeggyWriter.h:64: note: candidates are: void PeggyWriter::drawCharacter(char, Peggy2*, uint8_t, uint8_t)
PeggyWriter_Hello:33: error: no matching function for call to 'PeggyWriter::drawCharacter(char, Peggy2&, byte&, byte&Wink'
C:\Users\Mack\Documents\Arduino\arduino-0022\libraries\PeggyWriter_Hello/PeggyWriter.h:64: note: candidates are: void PeggyWriter::drawCharacter(char, Peggy2*, uint8_t, uint8_t)
PeggyWriter_Hello:35: error: no matching function for call to 'PeggyWriter::drawCharacter(char, Peggy2&, byte&, byte&Wink'
C:\Users\Mack\Documents\Arduino\arduino-0022\libraries\PeggyWriter_Hello/PeggyWriter.h:64: note: candidates are: void PeggyWriter::drawCharacter(char, Peggy2*, uint8_t, uint8_t)
PeggyWriter_Hello:37: error: no matching function for call to 'PeggyWriter::drawCharacter(char, Peggy2&, byte&, byte&Wink'
C:\Users\Mack\Documents\Arduino\arduino-0022\libraries\PeggyWriter_Hello/PeggyWriter.h:64: note: candidates are: void PeggyWriter::drawCharacter(char, Peggy2*, uint8_t, uint8_t)
PeggyWriter_Hello:39: error: no matching function for call to 'PeggyWriter::drawCharacter(char, Peggy2&, byte&, byte&Wink'
C:\Users\Mack\Documents\Arduino\arduino-0022\libraries\PeggyWriter_Hello/PeggyWriter.h:64: note: candidates are: void PeggyWriter::drawCharacter(char, Peggy2*, uint8_t, uint8_t)






       
   
By: Windell (offline) on Thursday, June 16 2011 @ 04:34 PM PDT  
Windell

It's clear enough that the library isn't installed correctly. Telling us that the same error happens dozens of times won't change that fact.


Windell H. Oskay
drwho(at)evilmadscientist.com
http://www.evilmadscientist.com/

Forum Evil Scientist
Evil Scientist

Status: offline

Registered: 06/15/06
Posts: 1932
Sunnyvale, CA

Profile Email Website  
   
By: Anonymous: chris () on Thursday, June 16 2011 @ 05:51 PM PDT  
Anonymous: chris

Peggy scroller works fine. Its the writer that writes hello world that doesnt work but thanks anyway for your help





       
   



 All times are PDT. The time is now 08:15 AM.
Normal Topic Normal Topic
Locked Topic Locked Topic
Sticky Topic Sticky Topic
New Post New Post
Sticky Topic W/ New Post Sticky Topic W/ New Post
Locked Topic W/ New Post Locked Topic W/ New Post
View Anonymous Posts 
Able to Post 
Filtered HTML Allowed 
Censored Content 

Evil Mad Scientist Forum Archives — Read only!

Please visit our new forums for new discussions.


DIY Hardware for Electronic Art


The Original Egg-Bot Kit


Octolively
Interactive LED kits


Meggy Jr RGB
LED matrix game
development kit.


Business-card sized
AVR target boards


Peggy 2
LED Pegboard kits

My Account






Lost your password?