All Projects → loboris → RePhone_on_Linux

loboris / RePhone_on_Linux

Licence: other
RePhone develpment on Linux with Eclipse, IoT oriented Lua implementation

Programming Languages

c
50402 projects - #5 most used programming language
python
139335 projects - #7 most used programming language
lua
6591 projects

RePhone development on Linux

This repository contains RePhone application projects configured for Eclipse. The main purpose of this repository is Lua implementation on RePhone (Xadow GSM+BLE).

Guide for installation/configuration on Linux

RePhone on Linux guide

Links:

🔹 Lua on RePhone 🔹

Lua programming language implementation on RePhone (Xadow GSM+BLE).

"Lua is a powerful, efficient, lightweight, embeddable scripting language. It supports procedural programming, object-oriented programming, functional programming, data-driven programming, and data description.

Lua combines simple procedural syntax with powerful data description constructs based on associative arrays and extensible semantics. Lua is dynamically typed, runs by interpreting bytecode with a register-based virtual machine, and has automatic memory management with incremental garbage collection, making it ideal for configuration, scripting, and rapid prototyping"

This implementation is specially oriented to IoT applications building.

Main features:

  • Complete Lua 5.1 implementation
  • Memory available to Lua programs 650~700 KB + heap for c functions ~64 KB
  • os module expanded with many new functions ( copy, mkdir, rmdir, list, compile )
  • sys module added with many RePhone related functions, non-volatile system parameters & variables
  • Watchdog implemented for maximum security with variable timeout.
  • Full RTC support with scheduled shut down / wake up / alarm
  • Lua shell is available on USB port (/dev/ttyACM0), on RePhone hardware UART and over Bluetooth
  • Many new/RePhone specific modules (written in c)
    • gpio, with added fonctions for gpio toggle and EINT on any eint capable pin
    • pwm module (part of gpio module)
    • adc module (part of gpio module)
    • eint external interrupt; Lua callback function (part of gpio module)
    • wt2812 module; WT2812 - NeoPixel support (part of gpio module)
    • https, with added post mode (capable of sending file or params from table)
    • gsm module, with complete SMS functionality (read,write,list,delete,callbacks,...)
    • mqtt module, complete mqtt client
    • email module, only smtp client for now (send email)
    • ftp module, all basic ftp client commands available
    • audio module, playback and recording
    • timer module
    • i2c hw i2c module
    • spi hw spi module
    • net module, tcp & udp support, ntp support (set RTC time from NTP server)
    • bt Bluetooth module with possible Lua shell redirect
    • uart Hardware UART (two ports) module with possible Lua shell redirect
    • sensor module: DS18B20, DS18S20, DS1822 and DS28EA00, DHT-11, DHT-22, BME280 sensors
    • hash modules: md5, SHA1, SHA2
    • complete json module (cjson)
    • struct module (python struct library Lua implementation)
    • bit module, adds bitwise operations on numbers
    • lcd module; full support for Xadow 1.54" Touchscreen V0/V1 (with touch support) and ILI9341 & ST7735 based TFT modules in 4-wire SPI mode. Supported are many graphics elements, fixed width and proportional fonts (unlimited number of fonts, loaded from file), jpeg, bmp and raw bitmap images. Does not require frame buffer memory, very fast.
    • term module; operations for ansi/vt100 terminals; console file editior, ymodem file transfer
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].