Go Down

Topic: Pervasive Displays [no power displays - e-paper] (Read 19608 times) previous topic - next topic

skyjumper

Awesome thread! I did notice this:

http://www.embeddedartists.com/support/faq.php?id=29

It seems that these displays are not suitable for production, which of course makes me wonder what they are suitable for.

suxxer

#46
Apr 01, 2013, 02:25 pm Last Edit: Apr 01, 2013, 02:51 pm by suxxer Reason: 1
@ThunderFT:
I've been thinking about this problem. What about solving it by using a I2C-EEprom to store the matrix? Or use a Sdcard-shield on arduino? I think the only way of getting the necessary data for the xbm-files is to use an expansion. Arduino's mem is just too small.

I finally got the LLC from Sparkfun. Now I can try to talk to the display at last.

Currently I'm stuck with the I2C-Temperature sensor on the EA-Board. The sensor is a LM75B temp sensor and is using 3,3V on the I2C lines (so we need the Sparkfun LLC to talk to it from Arduino's 5V-I2C). The slave address of the LM75B is 1|0|0|1|A2|A1|A0 (where A2, A1, A0 can be set by the user). On my board, A2, A1, A0 are 0,0,1 - so the address is 1|0|0|1|0|0|1 (equals 73 DEC or 0x49 HEX).

But I cannot talk to the sensor. I tried with some easy code to get the values, but I don't receive anything. Anyone has more luck??
Quote
#include <Wire.h>
int t,l;
void setup()
{
Wire.begin();
Serial.begin(9600);
}
void loop()
{
Wire.requestFrom(0x49, 2);
while(Wire.available())
{
t = Wire.read();
l = Wire.read();      
Serial.print("temperature = ");
Serial.println(t);
Serial.print("lsb = ");
Serial.println(l);
}
delay(500);
}


As I already mentioned in my last post is that the temperature reading seems to be set to 25 in EPD.h. I'll just leave out all the temp sensor stuff and try to focus on the display.

I'll report as soon as i have more results.

@ThunderFT: Maybe you could post some code&infos on how you managed to get the display to live. I guess that would be very usefull for a lot of us ;) Thnx.

EDIT: Got it to work using the gratis-master from the repaper site. It turns out that the temperature sensor is really not relevant for the code to run ;)


emueyes

I've been eagerly waiting for a real e-Ink display, so am eager to find out more on this. From what I can gather, an SD card reader is pretty much needed for a lot of Arduino projects, and should have been included onboard in the first place. Between suxxer and ThunderFT, you guys seem to have a pretty good grasp of what this display does. It might not be ready for 'production', but how much of that original library is useable? Any chance of a writeup on just how to wire it up and talk to it, even with text only ?

ThunderFT

For temperature I did that:
Quote

#include "Wire.h"
#define address 0x49
#define delayC 1000
#define baudrate 9600

void setup()
{
  Wire.begin();
  Serial.begin(baudrate);
}

void loop()
{
  Serial.print("temperature in Celsius: ");
  int temperature;
  Wire.beginTransmission(address);


  Wire.write(0x00);

  Wire.requestFrom(address, 1);
  if (Wire.available())
   {
      temperature = Wire.read();
      Serial.println(temperature);
   }
  else
  {
    Serial.println("---");
  }
  Wire.endTransmission();
//end the transmission

  delay(delayC);
}

And it worked, the temperature was around 24°C in a classroom.

But afterwards I used the code from repaper and it doesn't need any temperature.

For my matrix problem, I already got a NFC shield, because I'm sending data with an Android Application by the NFC transmission to Arduino, and I'm trying to display those information. And if I get a new shield, I will have problems with my chip selects.
Do you think there are no other possibilities?
Is it possible to write on an .xbm file?

emueyes

I wish I could be of more help. I don't have my SD reader yet to play with, but since they only uses 4 digital pins it may work as well as the NFC reader? With the NVRAM being R/O at runtime, it looks like the SD card would be the only option.

The temperature sensor had me confused; it's not intrinsic to the displays operation I imagine. So, would this work, with an SPI interface and their library? I only want to display text, and it doesn't have to be updated that often.

suxxer

Quote
And it worked, the temperature was around 24°C in a classroom.

But afterwards I used the code from repaper and it doesn't need any temperature.


Well the repaper-code is setting the temp fix to 25.

I tried your code, but i don't get any readings from my sensor. A look into the datasheet of the lm75b revealed that temperature is stored in two bytes. Your line of code " Wire.requestFrom(address, 1);" cannot work as it should request two bytes. Maybe you have another temp chip on your board??

I managed to squeeze three custom .xbm pictures onto my Leonardo. I'll have to get me a sd shield (https://www.sparkfun.com/products/544) for more space ;( This means i have to multiplex the ssel pin, cause i'm running out of pins free...

Quote
For my matrix problem, I already got a NFC shield, because I'm sending data with an Android Application by the NFC transmission to Arduino, and I'm trying to display those information. And if I get a new shield, I will have problems with my chip selects.
Do you think there are no other possibilities?
Is it possible to write on an .xbm file?


I guess this needs a lot of changes in the current code. The image is stored at the beginning of the code with the PROGMEM statement. You could try to overwrite the .xbm file on runtime and see what happens. I'm not familiar with the progmem stuff - so I have to trial and error my way ;)


suxxer

Good news! I just saw that the github code was updated some days ago (https://github.com/repaper/gratis/tree/master/Sketches).

There are two new examples:
1. amslide -> shows pictures that are stored on sd card using an index file stored on the card.

2. thermo -> Draw a temperature bar on the screen using Adafruit_GFX Library functions.


suxxer

#52
Apr 14, 2013, 12:08 pm Last Edit: Apr 14, 2013, 12:09 pm by suxxer Reason: 1
More good news:

EA just released demo code for the 2.7"-EA-Board:
http://www.embeddedartists.com/products/displays/lcd_27_epaper.php

Instructions: http://www.embeddedartists.com/sites/default/files/support/displays/epaper/Epaper_arduino.pdf
Demo code: http://www.embeddedartists.com/sites/default/files/support/displays/epaper/epaper_arduino_130412.zip

Edit: They also provide a library for the LM75A temp. sensor. Let's see if this works...

Go Up