 |
By: DaveParker (offline) on Wednesday, April 22 2009 @ 10:54 AM PDT (Read 7340 times)
|
|
|
DaveParker |
| 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! 
|

Apprentice
Status: offline
Registered: 04/02/09 Posts: 13
|
|
|
|
|
|
|
solipsistnation |
| 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)
|

Apprentice
Status: offline
Registered: 03/02/09 Posts: 13
|
|
|
|
|
 |
By: DaveParker (offline) on Friday, April 24 2009 @ 04:41 PM PDT
|
|
|
DaveParker |
| DaveParker |
|
Thanks for the feedback solipsistnation 
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
|

Apprentice
Status: offline
Registered: 04/02/09 Posts: 13
|
|
|
|
|
|
|
solipsistnation |
| 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)
|

Apprentice
Status: offline
Registered: 03/02/09 Posts: 13
|
|
|
|
|
 |
By: rj44319 (offline) on Sunday, May 10 2009 @ 06:18 PM PDT
|
|
|
rj44319 |
| 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
|

Apprentice
Status: offline
Registered: 05/05/09 Posts: 5
|
|
|
|
|
 |
By: Anonymous: DaveParker () on Monday, May 11 2009 @ 09:08 AM PDT
|
|
|
Anonymous: DaveParker |
| Anonymous: DaveParker |
|
Quote by: rj44319hi, 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 |
| 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.
|

Apprentice
Status: offline
Registered: 04/02/09 Posts: 13
|
|
|
|
|
 |
By: DaveParker (offline) on Saturday, July 04 2009 @ 10:32 AM PDT
|
|
|
DaveParker |
| DaveParker |
|
|
|

Apprentice
Status: offline
Registered: 04/02/09 Posts: 13
|
|
|
|
|
 |
By: Anonymous: Chris () on Wednesday, June 15 2011 @ 10:12 AM PDT
|
|
|
Anonymous: Chris |
| 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 |
| 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/
|

Evil Scientist
 Status: offline
Registered: 06/15/06 Posts: 1932
Sunnyvale, CA
|
|
|
|
|
 |
By: Anonymous: chris () on Thursday, June 16 2011 @ 03:45 PM PDT
|
|
|
Anonymous: chris |
| 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& '
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& '
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& '
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& '
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& '
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& '
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& '
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& '
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& '
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& '
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 |
| 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/
|

Evil Scientist
 Status: offline
Registered: 06/15/06 Posts: 1932
Sunnyvale, CA
|
|
|
|
|
 |
By: Anonymous: chris () on Thursday, June 16 2011 @ 05:51 PM PDT
|
|
|
Anonymous: chris |
| Anonymous: chris |
|
Peggy scroller works fine. Its the writer that writes hello world that doesnt work but thanks anyway for your help
|
|
|
|
|
|