B4R Question Project Hardware: Need advice

Cableguy

Expert
Licensed User
Longtime 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?
 

rbghongade

Active Member
Licensed User
Longtime User
You can always use PCF8574/75 to get extra GPIOs with ESP8266, still keeping the project cost low.
 
Upvote 0

BillMeyer

Well-Known Member
Licensed User
Longtime 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.
 
Upvote 0

tigrot

Well-Known Member
Licensed User
Longtime 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.
 
Upvote 0

Cableguy

Expert
Licensed User
Longtime 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
 
Upvote 0

Cableguy

Expert
Licensed User
Longtime 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?
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)

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?
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
 
Upvote 0
Top