Ler string do Arduino via cartao SD.

Pessoal,
Sou leigo ainda na área do arduino e sua programação, mas estou me esforçando pra melhorar :slight_smile:
Gostaria de um auxilio dos experts aqui num caso que acredito ser simples.

Hoje já tenho um código que armazenado no arduino, permite por exemplo ligar e desligar uma televisâo via W5100 (Modulo Ethernet), onde clico ele lê a função do código IR e envia via IRSend.

Até ai legal ! Mas o problemas e que os códigos vâo ficando pesados conforme vou adicionando mais funções como alterar o canal ou aumentar o volume.

Como posso usar o cartão SD que vem no W5100, armazenar ali os códigos com chamadas e ao ter uma requisição o arduino ir no arquivo ler a linha com o comando especifico e utilizar?

Ex.

No cartâo ter assim o arquivo tv.txt

dentro dele ter:

ACIONATV = "unsigned int tv1[136] = {4500,4450,550,1650,600,1600,600,1650,550,550,600,500,600,550,550,550,600,550,550,1650,600,1600,600,1600,600,550,600,500,600,550,550,550,600,550,550,550,600,1600,600,550,550,550,600,550,550,550,600,500,600,550,550,1650,600,500,600,1650,550,1650,600,1600,600,1650,550,1650,600,1600,600,-19336,4450,4450,600,1650,550,1650,600,1600,600,550,550,550,600,500,600,550,550,550,600,1650,550,1650,600,1600,600,550,550,550,600,500,600,550,550,550,600,550,550,1650,600,500,600,550,550,550,600,550,550,550,600,500,600,1650,550,550,600,1600,600,1650,550,1650,600,1600,600,1650,550,1650,600,};"

O arduino por usa vez ao receber o comando lê o tv.txt busca por TVACIONAR e usa o que tiver entre as aspas.

if (recebido == "ACIONATV") { 
      irsend.sendRaw(tv1,136,38);
      }

Mas na string tv1 óbvio ele pega no arquivo dentro do SD.

Pondo no arduino diretamente principalmente o MEGA vai de boa ler, mas a questão é que o UNO não possui tanto espaço ai inviabiliza tudo.

Poderiam me auxiliar?

Obrigado :slight_smile:

Não será mais fácil gravares todos esses códigos usando a keyword progmem para armazenares isso na flash e não na ram …