Can Arduino recive a bitmap via xbee and store in external memory?

Is there an easy way to save data to a bitmap and store it in Arduino external memory?
I'm using Arduino leonado.

I am hoping to write a program that receive bitmap form xbee then store it in external memory that will eventually be display on epaper screen.

the bitmap is 37KB so I will need an external memory.

thanks.

How big do you expect the bitmap to be?

Why do you want to store the bitmap as a text file?

38KB

I dont know how to sent bitmap via xbee. At the moment I can only sent bits. Please give me some advise.
What I really want is to receive bitmap form xbee then display it on the Epaper display. I assume that the bitmap have to be store in RAM first.

watanya:
38KB

The Uno has 2K SRAM.

The Mega has 8K SRAM.

So are you rocking the Due?

Arrch:

watanya:
38KB

The Uno has 2K SRAM.

The Mega has 8K SRAM.

I'm Planing to use external memory. But no idea yet how will i do it

Kiwibird:
I'm Planing to use external memory.

But you're not going to tell us which external memory that is, nor are you going to give us a link to the device you want to display this bitmap on?

Arrch:

Kiwibird:
I'm Planing to use external memory.

But you're not going to tell us which external memory that is, nor are you going to give us a link to the device you want to display this bitmap on?

I'm so sorry. :cold_sweat: here.

I download the ready made library and Every thing work fine. ATM I want to link this with xbee.
Also I am worry that they might use some same pin.

A cursory look suggests that under the hood, that library sends images line by line. You could probably build something around the EPD_Class::line function that does away with the need to hold all the image data - just send each line as you get it from the xBee.

Are you using a PC to send the bitmap and if so do you have the software in place for sending from that?
I would suggest that you start by sorting out the hardware, select devices that will co-exist happily, if you use I2C or SPI you can put multiple devices onto a single bus, which helps.

Kiwibird:

[quote author=Coding Badly link=topic=163974.msg1224478#msg1224478 date=1367437777]

How big do you expect the bitmap to be?

Why do you want to store the bitmap as a text file?

38KB

I dont know how to sent bitmap via xbee. At the moment I can only sent bits. Please give me some advise.
What I really want is to receive bitmap form xbee then display it on the Epaper display. I assume that the bitmap have to be store in RAM first.

[/quote]

Well, it would help you to understand the bitmap format that the E-Ink display wants. According to their documentation it is xbm format. I saved a sample image out of gimp to xbm (found there is regular and X10 format, check with the panel people to see which version is preferred), and found that xbm is an ASCII encoded bitmap. Because the images will be larger than the memory available on most Arduino boards, you should look into any one of the many SD card shields to use the SD card as external (and non-volatile) memory.

My suggestion for your learning process:

  • First work with learning how to write and read files on a SD card.
  • Learn how to transmit ASCII files over xbee and save them to a SD card.
  • Learn how to read a file and send it to the E-Ink display.
  • Figure out how to connect both the SD shield and the E-Ink display simultaneously to your Arduino. (Note: you may have to get creative with pins for the SPI interface. Both can (and should) share the MOSI, MISO, and SCK pins, but each should have separate CS/SSEL pins. If any of this note doesn't make sense to you, reasearch SPI interfaces.)
  • Use what you have learned from the above steps to build your master plan. Muahahaha! :wink: