B4R Question Project Hardware: Need advice

Discussion in 'B4R Questions' started by Cableguy, Apr 30, 2018.

  1. Cableguy

    Cableguy Expert Licensed User

    Hi guys,

    I am in the designing stage (specs definition and hardware selection) of the most ambitious project I have ever managed.
    It will basically be a GSM controlled laser controller.
    So there will be a GSM board, a LCD Display, a basic 5 key keyboard and 24 5mw lasers.
    For development purposes, I already have the GSM board (A6), the Display, SH1106 1.30", and the lasers are in the mail.
    I've come to realise that the GSM code module takes up a huge amount of memory, so the UNI is out of question.
    I have an ESP2866 wemos board, but not enough I/O...
    So, i'm left with a Mega and a nano...
    The choice would be simple but...
    I started googling and found the STM32 based boards...
    What would you advise, knowing that I will need to make a "clean" prototype (no dev boards like a full size mega)...
    I found a few interesting versions of the Mega, like the 2560 pro mini, and equivalent STM32 Boards...
    What should I go for?
  2. rbghongade

    rbghongade Active Member Licensed User

    You can always use PCF8574/75 to get extra GPIOs with ESP8266, still keeping the project cost low.
  3. BillMeyer

    BillMeyer Active Member Licensed User

    In my opinion the MEGA would do the trick because of 2 things:

    1. Your LCD - depending on type - these consume IO's muchly
    2. Your Keyboard - Also needs a few IO's
    3. Your Lasers - 24 !!

    but size now has the upper hand because of the "clean" prototype so to make your size smaller again (Honey - I shrunk the Boards...) you could use two controllers and a mux board for the lasers. In Other Words, your ESP8266 doing some functions and connected serially to an Arduino Mini on which is running this board https://www.adafruit.com/product/2717 controlling your lasers. Look at this tutorial: https://www.maxphi.com/arduino-serial-communication-tutorial

    And finally if your LCD is running on i2c and your keyboard - then with the muxboard - you could possibly get away with only the ESP8266.

    I trust I have added to your confusion even more.
    Cableguy likes this.
  4. Cableguy

    Cableguy Expert Licensed User

    Indeed you have
  5. tigrot

    tigrot Well-Known Member Licensed User

    I have put on mega 2560 a big pjt, ram is to the limit but flash space is 30% used. The I/O is rich an you can connect a lot of signals. Processing power is not high, but if I have understood your needs you can get good results. Or use Arduino Due a similar device but with powerful micro.
  6. Cableguy

    Cableguy Expert Licensed User

    To clarify things a bit, what I think I will need I/O wise:
    - SCL and SDA for the Display (working)
    - TX and RX for the GSM board (Haven't managed to get the softwareSerial working, and the HardWare serial is yet to be tested) plus 1 I/O for Power Key(?)
    - 5 Digital Pins for basic Keyboard
    - 5 Digital Pins for 5 to 24 decoder
    - 2 Analogic pins for Battery control
  7. tigrot

    tigrot Well-Known Member Licensed User

    For power use a switch. No need to put device to sleep. And one GPIO less. Do you want to use a port expander for lasers?
  8. tigrot

    tigrot Well-Known Member Licensed User

    Use a analog input for keyboard. Use the schematic for the keyboard + 16x2 lcd which is sold in China. They use a serie of resistors.
  9. tigrot

    tigrot Well-Known Member Licensed User

  10. Cableguy

    Cableguy Expert Licensed User

    in order to save pins, I am considering a Decoder (ABCDE to 24) and a timer, so that even if all lasers are to be "On", only one at a time will really be on, by using a timer to control (A sort of multiplexed PWM)

    I had though of that, but for ease of coding, and since I will be creating my own Keyboard, I will be using 5 pins
  11. tigrot

    tigrot Well-Known Member Licensed User

    Nice idea. Do you use a sort of 74HC154?
    Last edited: Apr 30, 2018