[Grande projeto] Preciso de alguns exclarecimentos

1,026 views
Skip to first unread message

Caio Salgado Nepomuceno

unread,
Dec 18, 2017, 10:39:49 AM12/18/17
to Lua BR
Bom dia, pessoal

Estou em vias de começar um grande projeto de aplicação para o POS (Point of Sale ou a famosa Maquininha de cartão) de modelo s920 da fabricante Pax (é a moderninha Pro do PagSeguro) e gostaria de realizar este projeto na linguagem Lua. Todo o projeto, não somente o "backend" da coisa mas também o "frontend" e para isso fiz o curso do Techiessse de Lua no Youtube e também li muito o livro de como programar em Lua, meu conhecimento é mediano, eu diria.

Porém, como foi dito acima, é um projeto para um dispositivo embarcado e tenho algumas grandes dúvidas em relação a isso:
  • Vi que existem diversas GUI's nas quais posso usar para fazer a interface gráfica da aplicação e gostaria de saber qual a mais recomendada para esse caso em especifico.
  • Qual o processo a ser feito para embarcar Lua e a GUI (a que vocês recomendarem) ? Já embarquei alguns exemplos em Qt e descobri que para o Qt detectar os eventos de tela, teclado e afins é necessario apontar os arquivos de keyboard, framebuffer e etc nele. No Lua isso também será necessário?

Coisas que eu sei:

  • O sistema operacional deste aparelho se chama Prolin e é baseado em Linux
  • A arquitetura é arm-linux
  • Possui TouchScreen, então eu preciso de uma GUI que suporte também

Este projeto é bem grande e nossa startup esta crescendo bem. Vocês podem nos ajudar com isso?

Uma call por Skype será de grande agrado.

Consultoria não está descartada, eu posso cotar e pleitear aqui dentro.


Aguardo respostas, um abraço.

Denis Dos Santos Silva

unread,
Dec 18, 2017, 10:56:43 AM12/18/17
to Lua BR
Caio eu trabalho com POS, porém, apenas Verfifone.

Recentemente recebi uma copia do sdk da pax* e vi que ela tem uma GUI especifica Xui** não saberia responder se funciona com Qt.
Lua é uma linguagem de script; E para ter acesso ao hardware ( touch, console, printer, buzzer, ... ) usando Lua será necessário você "integrar a coisa toda".
Se o projeto for pra ontem, MVP, eu recomendaria fazer em C uma vez que para esse propósito deve ser bem mais rápido.

sobre embarcar: a GUI já está disponível; e Lua basta integrar ao seu projeto.
sobre a questão de eventos e coisa do tipo: você terá que projetar seu código baseado em evento (event loop-like)



* apesar de ter emulador, to esperando o POS chegar.
** é um toolkit gráfico em C.

Augusto Rodrigues

unread,
Dec 18, 2017, 11:33:21 AM12/18/17
to lua...@googlegroups.com
Já participei de um projeto aonde toda a camada de negocio era
codificada em Lua (transações, operações de configuração, etc), e a
camada de hardware (acesso a tela, acesso ao teclado, acesso aos
periféricos de comunicação, acesso a bibliotecas específicas de TEF)
era codificada em C, usando o recurso de "conversor" descrito no livro
do Lua (acho que é aquele lance de fazer com que funções Lua possam
ter acesso a funções codificadas em C)

Como no projeto a camada de hardware era projetada para rodar em
vários fabricantes de POS, então esse framework roda em vários
fabricantes de terminais POS, não importando o tipo de SDK ou sistema
operacional disponibilizado pelo fabricante.

Nota: Claro que a camada de hardware era portada para os SDK e sistema
operacional disponibilizados pelos fabricantes. E no nesse framework a
tela era no modo texto e sem acesso a touchscreen. Entretanto isso
pode ser codificado a pedido do cliente.

Nota 2: Atualmente esse framework é utilizado em determinados projetos
que usam conceito de TEF como, por exemplo, correspondente bancário.

Se tiver interesse nesse tipo de framework, favor entrar em contato.

Em 18 de dezembro de 2017 13:56, Denis Dos Santos Silva
<de...@roo.com.br> escreveu:
> --
> Você recebeu essa mensagem porque está inscrito no grupo "Lua BR" dos Grupos
> do Google.
> Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie
> um e-mail para lua-br+un...@googlegroups.com.
> Acesse esse grupo em https://groups.google.com/group/lua-br.
> Para mais opções, acesse https://groups.google.com/d/optout.

Caio Salgado Nepomuceno

unread,
Dec 18, 2017, 12:08:56 PM12/18/17
to Lua BR
Augusto, obrigado pela resposta.

A XUI é ridicula. Eu trabalhava na Pax como desenvolvedor e fiz uma aplicação POS no XUI e é muito simples e lenta.
Exatamente por isso eu gostaria de usar uma GUI alternativa ao XUI.
O Qt funciona no s920, tanto que estavamos pensando em embarcar o componente QtWebKit para que a aplicação fosse desenvolvida em HTML, CSS e JS mas o WebKit é extremamente pesado e sobraria somente 1mb de RAM livre no equipamento, o que faz insuficiente para o resto da aplicação rodar.
Partindo disso, descobrimos o Lua e vimos essa alternativa como a melhor para fazer uma aplicação rápida e interpretada (o que facilita e muito nas atualizações pois não precisariamos fazer download da aplicação inteira para corrigir um pequeno bug).

Você disse: "sobre embarcar: a GUI já está disponível; e Lua basta integrar ao seu projeto."
Pelo que li no livro do Lua e vi nos vídeos do Techiesse, a linguagem Lua em si não vem com uma própria GUI, tanto é que os exemplos são só de prints no DOS do windows. Portanto, é necessário pegar alguma das GUI's do mercado como (wxLua, IUP, etc) e incluir junto do Lua, certo?

Você consegue me auxiliar melhor com isso?
Tem Skype ou alguma coisa para se comunicar melhor?

Um abraço

Caio Salgado Nepomuceno

unread,
Dec 18, 2017, 12:17:49 PM12/18/17
to Lua BR
Augusto não, e sim Denis******

Sobre o Augusto: eu não tenho interesse na tal plataforma e sim em como fazer o meu projeto.
Se puder me ajudar com isso, agradeço. Porém, não gostaria de embarcar um projeto pronto como o seu porque depois sempre tem que ajustar aqui e ali e acaba saindo pior do que se tivesse feito o nosso.

Eric Chiesse

unread,
Dec 18, 2017, 12:58:03 PM12/18/17
to lua...@googlegroups.com
Eu estava querendo recomendar uma olhada no projeto Lua-NCL que foi usado para applicações de TV Digital.

Mas não estou encontrando os links oficiais. Será que não é mais mantido ?

Talvêz eles já tenham pelo menos parte do que vc precisa.

---
Eric Chiesse

--
Você recebeu essa mensagem porque está inscrito no grupo "Lua BR" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para lua-br+unsubscribe@googlegroups.com.

Leonardo Ivo Neves da Silva

unread,
Dec 18, 2017, 1:02:42 PM12/18/17
to lua...@googlegroups.com
Bem lembrado Eric.
   Ali no middlware da TV Digital se usava o directfb. Ele gera ambiente gráfico para equipamentos embarcados e de baixo hardware. Vale a pena analisar a documentação.


Leonardo Ivo Neves da Silva

unread,
Dec 18, 2017, 1:04:04 PM12/18/17
to lua...@googlegroups.com
desculpe gente, não sabia que o site do Directfb tinha virado site pornô. Fui pego de surpresa. Peço desculpas pelo ocorrido.

Leonardo Ivo Neves da Silva

unread,
Dec 18, 2017, 1:07:08 PM12/18/17
to lua...@googlegroups.com
Aqui está o novo site do directfb: https://github.com/DirectFB/directfb

Leonardo Ivo Neves da Silva

unread,
Dec 18, 2017, 1:09:45 PM12/18/17
to lua...@googlegroups.com

Leonardo Ivo Neves da Silva

unread,
Dec 18, 2017, 1:10:43 PM12/18/17
to lua...@googlegroups.com
Pior que o endereço estava certo. Estranho isso. Um site técnico de tecnologia virar site de sexologia. Que doideira.

ßQUARKz

unread,
Dec 18, 2017, 1:10:45 PM12/18/17
to lua...@googlegroups.com
Caro Eric,

Acredito que sejam esses os links: https://github.com/gflima/nclua e http://www.ginga.org.br/pt-br

Caro Caio,

Pelo que andei vendo IUP me parece uma solucao interessante, pois ele funciona como um wrapper para alguns drivers entre eles GTK+ e Motif. A questao eh: o que esse Prolin disponibiliza? Motif pelo menos?

Abracos

ßQUARKz

unread,
Dec 18, 2017, 1:15:22 PM12/18/17
to lua...@googlegroups.com
Nao se preocupe faremos bom uso :)

Augusto Rodrigues

unread,
Dec 18, 2017, 1:20:24 PM12/18/17
to lua...@googlegroups.com
Sem problemas Caio,

Apenas quis contribuir com a lista informando de um projeto que é bem
similar ao que vc esta propondo, com algumas restrições como tela
gráfica e touch-screen. Com esse exemplo quis colaborar no sentido que
é possível sim codificar um framework que mescla C e Lua para POS, sem
usar Qt ou qualquer outra ferramenta (eu e os demais integrantes da
equipe de desenvolvimento da empresa fizemos na raça mesmo esse
framework :-) )

Porém, nada impede de que você elabore o seu próprio "framework",
atendendo diretamente as suas necessidades e usando outras ferramentas
como o Qt.

Boa sorte no seu projeto!

Em 18 de dezembro de 2017 15:17, Caio Salgado Nepomuceno
<csn....@gmail.com> escreveu:
> --
> Você recebeu essa mensagem porque está inscrito no grupo "Lua BR" dos Grupos
> do Google.
> Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie
> um e-mail para lua-br+un...@googlegroups.com.

ßQUARKz

unread,
Dec 18, 2017, 1:23:02 PM12/18/17
to lua...@googlegroups.com

Caio Salgado Nepomuceno

unread,
Dec 18, 2017, 1:45:24 PM12/18/17
to Lua BR
Mano, não sei muito bem o que é MOTIF

Mas da pra meter o GTK+ nativo nele, da pra meter o Qt com os forms e tudo mais também.
Então, eu suponho que seja bem completinho.

E o motivo de eu não usar Qt e nem GTK+ é o que eu disse acima, o plano é usar uma linguagem interpretada porque quando uma atualização for feita vai ser feito o download de um pacote minimo de scripts de no maximo 100k e não 7mb no GPRS como hoje acontece e só da dor de cabeça.

Um abraço

---
Eric Chiesse

Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para lua-br+un...@googlegroups.com.

Acesse esse grupo em https://groups.google.com/group/lua-br.
Para mais opções, acesse https://groups.google.com/d/optout.

--
Você recebeu essa mensagem porque está inscrito no grupo "Lua BR" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para lua-br+un...@googlegroups.com.

Denis Dos Santos Silva

unread,
Dec 18, 2017, 10:39:26 PM12/18/17
to Lua BR
O tópico rendeu... q bom!

Claro que há diversas abordagens que podem ser usadas em um projeto embed.

Eu só tenho experiência com Verifone. A PAX  assim que chegar vou dar uma olhada; O que vi até até agora foi as especificações do hardware e olhei superficialmente o SDK.
O que me chamou a atenção na PAX foi justamente o gcc pois o armcc é meio canseira.

Linux é apenas um kernel; E imagino que o prolin não use X11.

Imagino que você terá que portar quase tudo, imagine só, Qualquer toolkit gráfico (Qt, UIP, tekui, ...) que venha a escolher, via de regra, funciona no windows, mac e linux* - porém - o linux tem apenas o framebuffer* como algo nátivo, tirando isso, é a SVGALib e X11

<hardware> --- <kernel linux/prolin> --- <aplicação*>
*no userspace você poderá usar uma linguagem de script lua e prover acesso via bindinds a funções em C.


NOTAS: 
* o framebuffer é apenas o modo gráfico não vem com widgets e do meu ponto de vista não é nem de longe um toolkit gráfico

- X11 é um servidor gráfico para aplicações unix no geral (linux, freebsd, ...)
- motif é um toolkit e uma GUI para X11

Em segunda-feira, 18 de dezembro de 2017 12:39:49 UTC-3, Caio Salgado Nepomuceno escreveu:

Caio Salgado Nepomuceno

unread,
Dec 19, 2017, 6:52:25 AM12/19/17
to Lua BR
Bom dia, pessoal

Sim, o tópico está rendendo horrores e isso é ótimo.
Sim, o Linux (SO da Pax) trabalha somente com Framebuffer e a partir daí é "só" colocar o toolkit gráfico que sabe trabalhar com o framebuffer e referenciar a ele onde o mesmo está.

Galera, o debate está muito bom e tudo mais mas minhas dúvidas ainda não foram respondidas.
  • Qual GUI do Lua eu devo usar para fazer este projeto?
  • Onde eu consigo fazer referencia aos arquivos de framebuffer, touch, keyboard e etc nessa GUI?


É obvio que eu não quero copiar o layout da moderninha pró, mas se tiver os mesmos recursos gráficos que ela tiver, já será interessantissimo.

Segue um vídeo de referencia onde a pessoa usa a moderninha pró e é possivel ver a Interface Gráfica dela.(https://www.youtube.com/watch?v=uRnoL3SRWL8)


Obrigado

Denis Dos Santos Silva

unread,
Dec 19, 2017, 7:18:51 AM12/19/17
to Lua BR
  • Qual GUI do Lua eu devo usar para fazer este projeto?
Lua não possui GUI - nativa.

  • Onde eu consigo fazer referencia aos arquivos de framebuffer, touch, keyboard e etc nessa GUI?
Você tem certeza que o Prolin tem framebuffer - ou o acesso é DIRETO (* a maioria dos controladores LCD é assim *) ?
A captura de eventos (teclado, touch) devem ser tratados usando callback.


Em segunda-feira, 18 de dezembro de 2017 12:39:49 UTC-3, Caio Salgado Nepomuceno escreveu:

Caio Salgado Nepomuceno

unread,
Dec 19, 2017, 7:28:08 AM12/19/17
to Lua BR
O que seria o acesso direto?

Abraço

Denis Dos Santos Silva

unread,
Dec 19, 2017, 7:31:36 AM12/19/17
to Lua BR
Caio eu liguei la na PAX agora... a interface gráfica  moderninha pro usa XUI !!!  


Em segunda-feira, 18 de dezembro de 2017 12:39:49 UTC-3, Caio Salgado Nepomuceno escreveu:

Caio Salgado Nepomuceno

unread,
Dec 19, 2017, 7:31:54 AM12/19/17
to Lua BR
Eu também sei que Lua não possui GUI nativa, falei sobre isso na primeira postagem.
O que eu quero saber é qual a melhor GUI para fazer uma aplicação de POS em Lua.

Obs: eu sei que todas as GUIs são bem legais e tal mas eu quero saber mais a fundo sobre. Coisas como: "O wxLua é melhor porque o wxWidgets tem mais recursos e é mais fácil de trabalhar e bla bla bla" Argumentos!

Obrigado, abraço


Em segunda-feira, 18 de dezembro de 2017 13:39:49 UTC-2, Caio Salgado Nepomuceno escreveu:

Caio Salgado Nepomuceno

unread,
Dec 19, 2017, 7:38:25 AM12/19/17
to Lua BR
Mano, eu sai de lá não tem um mês ...

Eu falei com o pessoal da Setis (que foi quem fez a aplicação) e disseram que usaram outra GUI.
Quem foi que te falou isso? Vinicius, Leonardo, Wellinton, Douglas, Rafael ou Paulo?

Eu tenho certeza do que estou falando. Se o XUI fosse uma maravilha eu não estava procurando por vocês!

Um abraço

Denis Dos Santos Silva

unread,
Dec 19, 2017, 7:46:35 AM12/19/17
to Lua BR
Eu não perguntei o nome, liguei no suporte e o cara depois de trocar uma ideia respondeu.

Se fosse para indicar alguma, Qt Embedded ou GTK+. 



Em segunda-feira, 18 de dezembro de 2017 12:39:49 UTC-3, Caio Salgado Nepomuceno escreveu:

Gabriel Duarte

unread,
Dec 19, 2017, 7:49:15 AM12/19/17
to lua...@googlegroups.com
Se vc for usar qt ou gtk, pode usar os binds deles pra Lua. Nao sei se esses binds funcionam em framebuffer, caso esse fosse usado.

--
Você recebeu essa mensagem porque está inscrito no grupo "Lua BR" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para lua-br+unsubscribe@googlegroups.com.

Leonardo Ivo Neves da Silva

unread,
Dec 19, 2017, 7:51:55 AM12/19/17
to lua...@googlegroups.com
Se ele quer algo leve para equipamento embarcado, o DirecfFB resolve. E leve e trabalha em cima do framebuffer do kernel do Linux. Inclusive ele é feito pra rodar embarcado e com equipamentos de baixissímo hardware.

Leonardo Ivo Neves da Silva

unread,
Dec 19, 2017, 8:27:44 AM12/19/17
to lua...@googlegroups.com

Leonardo Ivo Neves da Silva

unread,
Dec 19, 2017, 8:32:36 AM12/19/17
to lua...@googlegroups.com

Gabriel Duarte

unread,
Dec 19, 2017, 8:58:24 AM12/19/17
to lua...@googlegroups.com

Gabriel Duarte

unread,
Dec 19, 2017, 8:58:26 AM12/19/17
to lua...@googlegroups.com

Leonardo Ivo Neves da Silva

unread,
Dec 19, 2017, 10:27:05 AM12/19/17
to lua...@googlegroups.com
Prezados, 

   Gostei muito dessa thread (não sou muito fã de estrangeirismos, mas é isso ai) falando do Lua aplicado a automação. Sempre fui aficcionado na área de automação, pois antes de atuar como desenvolvedor web que sou hoje, eu trabalhei com automação e eletrônica, pois minha profissão inicial era essa e continua sendo também. Sou técnico em eletrônica de formação assim como Analista de Sistemas. Bem, ver esses assuntos de automação me cativa muito e gostei da iniciativa do rapaz, gestor de startup, de abrir esse canal aqui. Quero dar meus parabens a ele por abrir esse canal aqui. Gostaria de ver discussões como essa aqui no grupo. Usos do Lua em Arduino, raspberry, PIC e 8051 e AVR. Bem, é isso.


Leonardo Ivo Neves da Silva

unread,
Dec 19, 2017, 10:33:20 AM12/19/17
to lua...@googlegroups.com
Foi citado aqui o caso da TV Digital. Algo onde o Lua é aplicado. O interessante nesse projeto é que o middleware Ginga morreu mesmo. E morreu junto com o seu criador, o Prof. Luiz Fernando Soares. Hoje você pega as caixas que são vendidas nas lojas e camelôs e os do Bolsa Família e nenhum vem com o Ginga embarcado. Acho que nas TV's também não deve está mais vindo, uma vez que os fabricantes devem está priorizando seus aplicativos nativos de smartTV.

Caio Salgado Nepomuceno

unread,
Dec 19, 2017, 11:19:42 AM12/19/17
to Lua BR
Leonardo, obrigado pela resposta.

Nós gostariamos de fazer algo atual, então o Ginga não serviria para o propósito.

Vi algumas pessoas insistindo em dizer para usar Qt embedded ou GTK+ direto.
Galera, gostaria de dizer a vocês pela enésima vez que nós queremos trabalhar com alguma linguagem de script interpretado e que seja o mais flexível possivel (multiplataforma) porque isso facilita muito em termos de atualização de app com inclusão de novos recursos e etc pois o que será incluso e/ou atualizado dentro da maquina são mizeros scripts e não toda a aplicação novamente.

Eu ainda não parei pra ver o directFB, mas o equipamento no qual eu vou desenvolver também não é um PC de 1990 que fazia comercial da Mappin com o Emilio surita. Ele aguenta umas porradinhas.

Obrigado e espero mais discussões

Eric Chiesse

unread,
Dec 19, 2017, 12:02:18 PM12/19/17
to lua...@googlegroups.com
2017-12-19 14:19 GMT-02:00 Caio Salgado Nepomuceno <csn....@gmail.com>:
Leonardo, obrigado pela resposta.

Nós gostariamos de fazer algo atual, então o Ginga não serviria para o propósito.

Vi algumas pessoas insistindo em dizer para usar Qt embedded ou GTK+ direto.
Galera, gostaria de dizer a vocês pela enésima vez que nós queremos trabalhar com alguma linguagem de script interpretado e que seja o mais flexível possivel (multiplataforma) porque isso facilita muito em termos de atualização de app com inclusão de novos recursos e etc pois o que será incluso e/ou atualizado dentro da maquina são mizeros scripts e não toda a aplicação novamente.

Me parece que para você a única solução é escolher algum sistema que vc quer rodando para montar as UIs e criar os bindings para lua para conseguir manipular.

Acho que o que o pessoal tá apontando é que talvez seja mais fácil implementar direto em Qt ou GTK ou directfb ou outro recurso que a máquina ofereça.
Nada te impede de usar lua com qualquer um deles mas vai ter o trabalho de criar os acessos para que o Lua consiga usar as APIs.

Sobre o ginga (Lua + NCL), eu pelo menos, sugeri olhar o projeto para você ter uma referência e talvez algumas boas idéias. Eu já vi aplicações ginga rodando que parecem ser bem o que vc quer.
Eu mesmo já ajudei a escrever um zapper para TV Digital usando C++ e Lua+NCL (e não era ginga). Mas tinha camadas de porting layer já prontas para vários equipamentos feitos por uma equipe relativamente grande.

Então, ao que parece até o momento, vc vai ter que escolher algum sistema para desenhar teus elementos e começar a criar os pontos de acesso (APIs) para que o Lua para usá-los.

Uma coisa que me ocorreu agora e que talvez te interesse é que vc pode desenhar as telas usando directfb por exemplo mas delegar o handlers de eventos para o Lua. Isso não funciona, é claro, se seu objetivo for ter um toolkit completo em Lua.

---
Eric Chiesse

Eric Chiesse

unread,
Dec 19, 2017, 12:04:46 PM12/19/17
to lua...@googlegroups.com
Bom isso hein! Se o hardware aceitar deirctfb isso é um bom começo.

---
Eric

2017-12-19 11:58 GMT-02:00 Gabriel Duarte <confu...@gmail.com>:


Denis Dos Santos Silva

unread,
Dec 19, 2017, 10:14:57 PM12/19/17
to Lua BR
bem, so pra complementar.

sim PAX tem framebuffer !!!

sobre qual a melhor GUI:
-  via de regra, o suporte a eventos são teclado/mouse ( nem todas tem suporte a touchscreen )
-  integração de todas que procurei a maioria tem integração com Lua !
- a melhor? bem vai depender dos componentes (widgets) que pretende usar / dependências do sistema / e se é feita em C ou C++
- e nenhuma vem com "shell" (ambiente pronto para apenas dar start na aplicação)

sobre a telecarga:
- não há nenhum problema, sendo que o script lua pode estar embudito dentro da aplicação C bem como pode estar no sistema de arquivos

Caio Salgado Nepomuceno

unread,
Dec 20, 2017, 8:29:47 AM12/20/17
to Lua BR
Denis e/ou pessoal, bom dia

Vocês sabem de alguma GUI que tem suporte a TouchScreen?

christian vieira

unread,
Jan 5, 2018, 9:59:28 AM1/5/18
to Lua BR
Boa tarde Caio, tudo bem?

Andei lendo o tópico e penso que a tua aplicação é muito interessante. Lua é uma linguagem de programação fantástica que infelizmente sofre muito preconceito por ser sul-americana e se não fosse ao seminal jogo desenvolvido: Grim Fandango, provavelmente ainda estaria sendo relegada a somente projetos nacionais de nichos bem restritos, o que seria realmente uma pena.

Ano passado, tive a oportunidade de assistir uma breve palestra do Prof. Ierusalimschy dada no Dept. de Computação da UFMG quando o mesmo participava de uma banca. Foi muito interessante a palestra pela descrição dos detalhes dados quando na criação e sobretudo quando houve a tomada de decisão do pessoal da empresa que produziu o Grim Fandango de utilizar Lua no projeto.

Atualmente, trabalho com Lua como hobby, desenvolvendo projetos de jogos básicos tais como esse:
https://drive.google.com/open?id=1ipz_PgfBJgRccKwITNZd50zVd7DQdC6m

No meu caso, optei por usar diretamente um framework de jogos, o Löve2D. O Löve2D foi construído sobre o SDL2D, sendo uma espécie de "wrapper", tendo todos os elementos necessários para a criação de aplicações gráficas não muito complexas, inclusive, há suporte para touchscreen: https://love2d.org/wiki/love.touch

Ainda não tive necessidade de realizar alterações no SDL, mas creio que não seja tão traumático alterar para que o mesmo suporte algumas novas funcionalidades e também seja portado para um novo hardware. Como disse em alguns posts anteriores que tua máquina usa GNU/Linux, penso que isso possa ser feito de forma convencional, alterando o target e compilando para uma nova arquitetura (provavelmente ARM).

Outra possibilidade é o uso do miniGUI: http://www.minigui.org/en/ caso o teu target tenha séria restrição de processamento e memória. Assim como no caso do Lua Löve2D, um wrapper pode ser feito em Lua.

No mais, caso necessite de mais um "braço" para o projeto, estou à disposição e seria muito interessante "embarcar" Lua em um sistema POS.

Augusto Rodrigues

unread,
Jan 8, 2018, 8:40:57 AM1/8/18
to lua...@googlegroups.com
Christian,

No caso de usar o miniGUI para POS, especialmente para aplicativos
comerciais desenvolvidos para POS, é necessário adquirir licença
comercial. Pelo menos foi isso que entendi do link abaixo:

http://www.minigui.org/en/about/licensing-policy/

No caso do Lua2d teria essa restrição? Ou seja, caso seja optado o
porte do Lua2d para POS, é necessário adquirir licença comercial ? Dei
uma rápida vasculhada no site mas não encontrei algo específico ao uso
da licença do Lua2d para aplicações comerciais.


Att
Augusto de Miranda Rodrigues
> --
> Você recebeu essa mensagem porque está inscrito no grupo "Lua BR" dos Grupos
> do Google.
> Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie
> um e-mail para lua-br+un...@googlegroups.com.

Augusto Rodrigues

unread,
Jan 8, 2018, 9:10:26 AM1/8/18
to lua...@googlegroups.com
Christian,

Encontrei a licença do Lua2d.

https://love2d.org/


Pelo jeito não existem restrições para uso comercial o uso do Lua2d.

Att

Augusto de Miranda Rodrigues

Em 8 de janeiro de 2018 11:40, Augusto Rodrigues
<guto.rodr...@gmail.com> escreveu:

christian vieira

unread,
Jan 9, 2018, 11:02:43 AM1/9/18
to Lua BR
Olá augusto, tudo bem?

-- MiniGUI:

Realmente, para fins comerciais, infelizmente a miniGUI requer licença para uso (como bem alertou):
http://www.minigui.org/en/about/licensing-policy/

-- Löve2D:

Entretanto, a Löve2D é bem permissiva, uma vez que é possível encontrar logo na página principal:

LÖVE is licensed under the liberal zlib/libpng license. This means that:

  • It costs nothing.
  • You can use it freely for commercial purposes with no limitations.

Aproveito o tópico para postar uma pequena aplicação de uma slot-machine (caça "míquei") utilizando o Löve2D -- obviamente trata-se de um protótipo para fins "educacionais"!!!

https://drive.google.com/open?id=1ipz_PgfBJgRccKwITNZd50zVd7DQdC6m


Pesquisando outras bibliotecas, encontrei:

-- uGUI:
http://embeddedlightning.com/ugui/
https://github.com/achimdoebler/UGUI
Trata-se de uma biblioteca para sistemas embarcados do tipo "bare-metal", ou seja, sistemas embarcados que possuem recursos computacionais escassos. Entretanto, pode ser usado para a aplicação desejada, desde que um wrapper seja feito, promovendo a integração entre C e Lua.

-- Lua e Fltk no Damn Small Linux:
Em um livro sobre a pequena distribuição Damn Small Linux, um dos mantenedores relata de forma sucinta as principais razões pelas quais houve adoção da linguagem Lua e do ambiente Fltk:
" We are constantly looking for the best of breed, small is beautiful applications and utilities -- for example, Lua. We heavily use Lua and Fltk and create many of our own GUIs. We are not only a small distro; we run well on small resources." The Official Damn Small Linux Book -- The Tiny Adaptable Linux That Runs on Anything.

http://www.fltk.org/index.php
http://lua-fltk.sourceforge.net/
https://luarocks.org/modules/siffiejoe/fltk4lua
https://github.com/siffiejoe/lua-fltk4lua
https://stetre.github.io/moonfltk/doc/index.html
https://github.com/stetre/moonfltk

Um comentário interessante acerca do tamanho da aplicação (murgaLua) poderá ser encontrada no final do tópico de discussão encontrado aqui:
https://www.reddit.com/r/lua/comments/cwir5/lua_gui_for_a_beginner/?st=jc6spffq&sh=56ce68a5
Well, you might take a look at http://www.murga-projects.com/murgaLua/index.html which contains an fltk binding for a gui, and a whole lot more (basic cryptography, sqlite, luasocket, xml parsing, some windows specific stuff, interfacing to libraries with alien, audio, ... ), and everything packs into a +- 500Kb executable. The most recent beta you can find here: http://jpjacobs.ulyssis.org/progs/murgaLua-snapshot.tar.gz

-- Moai-SDK:
Mais um SDK baseado no SDL com um wrapper em C++ para Lua:
https://github.com/moai/moai-dev

São várias as opções, basicamente utilizando o SDL, um wrapper em C/C++ e Lua.

--- # ---

Puxando sardinha para a própria brasa, caso precisem de um code monkey para o projeto, estou à disposição. O meu curriculum poderá ser encontrado em:
https://drive.google.com/open?id=0B-Pdm2pTRjoTUlRDS0M2czFDTEU

Um dos meus últimos trabalhos envolveu Qt5 (Qml) + uma plataforma embarcada para testes: Raspberry Pi3:
https://drive.google.com/open?id=1w9FbmoIwexTJvxbq4Ccp8aBynazyZ8Hb

Um outro sistema projetado (hardware e software) é utilizado na cidade de São Paulo, em cerca de 1000 ônibus utilizados no transporte urbano de passageiros (validador eletrônico Empresa1 - 5^a geração - modelo: SPXWG7), o sistema é executado initerruptamente, processando débito e crédito em cartões do tipo NFC utilizado por passageiros. Esse sistema foi desenvolvido desde 2012 à 2015, quando fazia parte do time de colaboradores da Empresa1, na cidade de Belo Horizonte. Algumas fotos do validador podem ser encontradas em:

Augusto Rodrigues

unread,
Jan 9, 2018, 3:46:26 PM1/9/18
to lua...@googlegroups.com
Christian,

Tava lendo a sua resposta e vi os seus anexos e.......

Meus parabéns! Seu currículo, além de ser muito bom, é bastante criativo!!!

E em relação aos links fornecidos, realmente são muitos bons. Acredito
que podem fornecer subsídios para responder a pergunta original do
Caio.

Duvida: É uma pulga comendo um disquete a figura no canto esquerdo do
seu currículo? (Só curiosidade mesmo!)

Att
Augusto de Miranda Rodrigues.

Caio Salgado Nepomuceno

unread,
Jan 15, 2018, 9:43:37 AM1/15/18
to Lua BR
Galera, eu estava muito interessado em utilizar o Lua no meu projeto mas tive problemas em conseguir utilizar uma GUI.
Para instalar o Lua no meu ambiente POS e faze-lo funcionar foi trabalho de 30 minutos, porém ao escolher uma GUI e coloca-la em meu ambiente, não consegui até hoje.
Eu tinha optado pelo IUP porque é uma GUI brasileira e eu teoricamente teria um suporte melhor caso necessário, mas empacou na instalação do GTK+ em meu ambiente, porque como dito anteriormente, o sistema é Linux e o correto seria utilizar o GTK para ele. Porém eu fiquei com muitas duvidas para instalar o GTK e particularmente não consegui nada de ajuda para tal.

Eu ainda tenho tempo de definir o ambiente para escolher no que vou desenvolver, então ...
Se alguém de coração bom quiser me ajudar a instalar o GTK em meu ambiente para que o IUP possa ser compilado, eu agradeço e muito.
Eu estava pedindo ajuda diretamente ao resposável do IUP (Antonio Scuri) e o mesmo estava atarefado com lançamento do novo IUP e enfim ...

Muito obrigado e aguardo respostas.

christian vieira

unread,
Jan 15, 2018, 10:17:47 AM1/15/18
to Lua BR
Boa tarde Caio e demais pessoas do tópico!

Caio, eu penso que para que o pessoal possa te ajudar, primeiramente é necessário que forneça mais detalhes como:
1). Hardware (processador, memória principal, memória de massa
1). kernel
2). sistema de arquivos
3). Toolchain utilizada

Melhor ainda se tivesse pronta uma mesma máquina virtual que está desenvolvendo o teu sistema (obviamente não necessita fornecer detalhes da tua aplicação -- segredo de negócio). Ou então, alguma forma de "rodar" o teu sistema em um emulador, por exemplo o qemu.

Como estou de férias, e sem trampo, tenho condições e disposição para ajudá-lo, mas preciso que forneça mais informações (como as passadas acima), para que possa compilar o Gtk para a tua plataforma.

E por último, não desista! Dificuldades são inerentes em grandes projetos...

Att.
Christian

Caio Salgado Nepomuceno

unread,
Jan 15, 2018, 11:13:34 AM1/15/18
to Lua BR
Christian, boa tarde

Segue abaixo as respostas solicitadas:

1) Hardware:
            - Processador: ARM11, 400M
            - Memória (RAM e Armazenamento): Flash de 128mb sendo eles 64mb de RAM e 61mb para arquivos.
            - Kernel: Estou esperando uma resposta do pessoal da Pax a respeito disso. Mas, o que sei é que se for usar Qt nesse equipamento, a versão maxima suportada é a 4.8.7 do Qt porque maior que isso o Kernel teria que ser atualizado e eles não querem fazer isso.
            - Toolchain: Arm 4.4.1
            - Sistema de arquivos: Também preciso confirmar com o pessoal da Pax, mas o que eu sei é que quando entro em modo Debug consigo navegar pelas pastas deles assim como no console do Linux via ls, cd e etc. (Há uma maneira de eu saber qual o sistema de arquivos por comando ou por alguma caracteristica em especifico?)

Sobre emular esse S.O em uma maquina virtual ou algo do tipo, eu acho que é impossivel porque o pessoal da Pax só disponibiliza o S.O dentro da maquina.
Só para ficar esclarecido para todos, eu não desenvolvo a aplicação no mesmo sistema operacional dela, o que eles disponibilizam pra mim é um SDK pra Windows chamado Prolin SDK que nada mais é que um eclipse com as modificações necessárias para compilar uma aplicação para esse POS.

Consegue me mandar seu Skype por MP?

Um abraço

christian vieira

unread,
Jan 15, 2018, 12:05:29 PM1/15/18
to Lua BR

Olá Caio. Teria como executar os comandos abaixo e postar os resultados?
Meus contatos: Telegram: +5531993044099  Skype: chris.dcvieira

1). Como descobrir o sistema de arquivos:
..$ lsblk -f

2). Compilador C:
..$ gcc -v

3). Compilador C++:
..$ g++ -v

4). Verificar versao da glibc:
..$ ldd --version

5). informacoes do nome da distribuicao:
..$ cat /etc/*-release
..$ cat /proc/version
..$ uname -a

7). informacoes do processador:
..$ cat /proc/cpuinfo

8). informacoes da memoria:
..$ cat /proc/meminfo

9). Uma dica para criar uma 'imagem' do sistema, seria atraves do ssh e dd, veja se consegue fazer isso


Caio Salgado Nepomuceno

unread,
Jan 18, 2018, 11:50:24 AM1/18/18
to Lua BR
Christian, boa tarde

Consegui mais algumas informações com a fabricante, segue abaixo:

Sistema de arquivos: UBI
Kernel Linux: linux-3.0.56

Todas essas outras informações eu já disse acima (processador arm11 e memória) ou acho um tanto quanto desnecessário de saber.
Se realmente houver algum motivo real para tal, me diga que eu posso correr atrás.

Sobre seu Skype, acho que esse nome de usuário está errado porquê não encontro aqui na busca.

Atenciosamente,

christian vieira

unread,
Jan 18, 2018, 1:08:08 PM1/18/18
to Lua BR
Olá Caio,

Solicitei as informações anteriores como parte do processo para criação da toolchain, necessária para compilar e instalar o Gtk. Creio que as informações serão necessárias em algum momento!

Mande o teu skype-id para o meu e-mail: chr...@gmail.com ou então, use o Telegram: +55 31 99304 4099

O sistema de arquivos utilizado é o típico para sistemas embarcados... Ubi flash file system. A versão do kernel não é uma das mais antigas. Tinha alguns dispositivos que prestei manutenção de código que rodava a 2.4 para ter idéia! :)

Rodrigo Sanguanini

unread,
Jan 18, 2018, 1:11:56 PM1/18/18
to lua...@googlegroups.com
Christian, [offtopic] recomendo criar um usuário no Telegram para poder passar seu contato de forma mais simples, sem ter que expor seu número de celular.
Abraço

--
Você recebeu essa mensagem porque está inscrito no grupo "Lua BR" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para lua-br+unsubscribe@googlegroups.com.

Acesse esse grupo em https://groups.google.com/group/lua-br.
Para mais opções, acesse https://groups.google.com/d/optout.



--
Att, Rodrigo Sanguanini

Rodrigo Jaques

unread,
Apr 3, 2019, 8:43:15 PM4/3/19
to Lua BR
Denis.. sei q não é assunto pra esse tópico, porém aproveitando o teu conhecimento..

Estou iniciando a trabalhar com Verifone e estou com dificuldade de conseguir o SDK.
Recebi a demanda de um projeto simples pra rodar em VX680 mas após vasculhar a internet, estou apanhando e não sei por onde começar.

Pode me dar uma luz?

Desde já agradeço.

Rodrigo.

Denis Dos Santos Silva

unread,
Apr 4, 2019, 3:28:36 AM4/4/19
to Lua BR
Rodrigo, antes de mais nada quero deixar claro que não trabalho para nenhuma das empresas citadas abaixo.

Estou iniciando a trabalhar com Verifone e estou com dificuldade de conseguir o SDK.

no Brasil temos a paytec e skytef como distribuidores oficiais da america latina
até onde tenho conheco:
- a payec oferece: venda de pos, treinamento e o sdk
- a skytef oferece: venda de pos, venda do navs (que é um "browser" xml, onde o pagamento é mensal)
- a verifone é só pra coisa tipo banco e adquiriente (5mil+ terminais)

Recebi a demanda de um projeto simples pra rodar em VX680 mas após vasculhar a internet, estou apanhando e não sei por onde começar.
- caso haja interesse, posso, te recomendar um freelancer que faz trampo

Pode me dar uma luz?
- essas maquininhas são cheias de detalhe, começar do zero pode ser algo complexo.
Reply all
Reply to author
Forward
0 new messages