Author Topic: Arduino Module Wizard  (Read 6488 times)


  • Hero Member
  • *****
  • Posts: 2312
Arduino Module Wizard
« on: February 14, 2016, 06:51:19 am »
        Lamwino: Lazarus Arduino Module Wizard:

   Version 0.1      

   "A wizard to create Arduino loadable module (.hex) using Lazarus/Free Pascal"


   Key Features:
      1.Builder for FPC avr/arduino cross compiler

      2.New Project option:  "Arduino [avr] Module"

      3.Install ".hex" module in Arduino device

      Jose Marques Pessoa

   Acknowledgements [all teachings!]:

1. Prerequisites/Infrastructure

   Arduino IDE: [drives, binutils, toolchains, avrdude, serial monitor, etc...]

   SlikSvn: command line SVN client

   Optional: Serial-Monitor-Deluxe [Pure FPC/Lazarus app!!]

2. Lamwino Install

   lamwino_ide_tools.lpk     [..../ide-tools]

3. Lamwino Use

   3. 1. Settings:

      Lazarus IDE menu "Tools" ---> "[Lamwino] Arduino Module Wizard" -->  "Settings ..."

   3.2. Building FPC AVR/Arduino cross compiler

      Lazarus IDE menu "Tools" ---> "[Lamwino] Arduino Module Wizard" -->  "Build FPC Cross Arduino"   
         .Get FPC Source [if you do not have!]
            ::Note: Path do "FPC Source Code" is mandatory!

   3.3 New Project

      .Lazarus IDE select "Project" -> "New Project"
      .Arduino Avr Module [Lamwino]

      .Path to projects folder 
      .Project Name
      .Generad Code [to start]
  • Blinking     //<----  * LamwinoDemo1, thanks to @ykot!


      .Lazarus IDE menu "Run" ---> "Build"

      .check for usb/pc/arduino connection
      .check for arduino COM port used ***

      .Lazarus IDE menu "Run" ---> "[Lamwino] Install/Run"

      .Congratulations!!!  \o/ \o/ \o/ \o/
      1.Windows 10
         Start Menu
         Connected Devices

      2. All Windows:
         Controls Panel
         Device Manager
         Ports(COM & LPT)

   3.4 Using Demos [....\demos]

      .Go to project ".lpi" and [if needed] change: atmega328p [and avr5]
      according to you arduino device [and compiler!]      

         <Item0 Name="AVRCHIP" Value="atmega328p"/>
         <CustomOptions Value="-Cpavr5 -Wpatmega328p -a"/>

      Note: atmega328p and avr5 are "Arduino Uno" compatibles!

4. References:

   .FPC/Lazarus Arduino Tutorial

   .Arduino UNO Pinout Diagram

   .I/O Port Operations in AVR

   .Cduino: Arduino Programming with C and Make
      LamwinoDemo2  <<--- lesson3!

Thanks to All!
« Last Edit: February 14, 2016, 06:55:02 am by jmpessoa »
Lamw: Lazarus Android Module Wizard


  • Hero Member
  • *****
  • Posts: 2312
Re: Arduino Module Wizard
« Reply #1 on: February 22, 2016, 09:37:36 pm »
Hello All!

UPDATED! Lamwino: Arduino Module Wizard

Version 0.1 revision 02 - 22 Feb - 2016

   NEW! Added support to Serial [COM]

   NEW! LamwinoDemo3 [Serial demo] //<---- Please, use some "Serial Monitor" app to send and receive info...

   WARNING! Please, configure NEW "Path do code Templates"
      IDE menu "Tools" --> [Lamwino] Arduino Module Wizard --> Settings

   IMPROVED! Added support to commons Arduino chip

   IMPROVED! Usability

Thanks to All!
Lamw: Lazarus Android Module Wizard


  • Hero Member
  • *****
  • Posts: 8766
  • Programming + Glam Metal + Tae Kwon Do = Me
Re: Arduino Module Wizard
« Reply #2 on: March 20, 2016, 09:36:14 pm »
I'm starting Arduino programming, hopefully your package can help. My first task would be to create wrapper for, because my first project will involve IR transmitting to air conditioner to automatically adjust temperature by analyzing LM35 sensor output.


TinyPortal © 2005-2018