Author Topic: Recommend a microcontroller  (Read 16858 times)

0 Members and 2 Guests are viewing this topic.

Offline mrunje96Topic starter

  • Newbie
  • Posts: 8
  • Country: hr
Recommend a microcontroller
« on: September 05, 2019, 08:44:11 pm »
Hi, can someone recommend me a microcontroller for project (im currently at rpi 3b+ just for prototyping) that uses ethernet ( UDP for OSC protocol/comunication), midi through USB, around 120 buttons (that i will handle through shift registers 165D, or you have better idea for this amount of buttons) and same number of leds (WS2812, so im just sending data to data in pin of led and it has +5v, gnd pin and data out..) + few slide potentiometers. Thanks in advance.  :-+ :-+
 

Online ledtester

  • Super Contributor
  • ***
  • Posts: 4248
  • Country: us
Re: Recommend a microcontroller
« Reply #1 on: September 05, 2019, 08:52:52 pm »
What's wrong with the Rpi? In other words, what other constraints are you trying to meet -- size, cost, power consumption, ...?


 

Online Kjelt

  • Super Contributor
  • ***
  • Posts: 6736
  • Country: nl
Re: Recommend a microcontroller
« Reply #2 on: September 05, 2019, 08:56:10 pm »
Any Arm Cortex M3, M4 uC or higher with MAC peripheral such as STM32F2x7, STM32F4x7  but it will take you quite some time to get everything working nicely together, while a rpi is set to go.
 

Offline mrunje96Topic starter

  • Newbie
  • Posts: 8
  • Country: hr
Re: Recommend a microcontroller
« Reply #3 on: September 05, 2019, 09:17:46 pm »
Im thinking if i make a product ( some kind of controller) it wouldnt be that profesional to sell if theres rpi sticked inside... or should i just copy rpi scheme in my pcb and do job like that...
 

Offline luiHS

  • Frequent Contributor
  • **
  • Posts: 612
  • Country: es
Re: Recommend a microcontroller
« Reply #4 on: September 05, 2019, 09:20:13 pm »
 
NXP ARM RT1020, Cortex M7 500Mhz, LQFP100 and LQFP144. Very cheap and very powerful.

After working for a few years with Kinetis MK66 and some designs with STM32, I decided to port it all to the NXP RT series.
« Last Edit: September 05, 2019, 09:22:27 pm by luiHS »
 

Online ledtester

  • Super Contributor
  • ***
  • Posts: 4248
  • Country: us
Re: Recommend a microcontroller
« Reply #5 on: September 05, 2019, 09:29:21 pm »
A fully assembled Rpi Zero costs $6 delivered. I doubt you'll be able to better than that.
 

Online Kjelt

  • Super Contributor
  • ***
  • Posts: 6736
  • Country: nl
Re: Recommend a microcontroller
« Reply #6 on: September 05, 2019, 09:59:05 pm »
Im thinking if i make a product ( some kind of controller) it wouldnt be that profesional to sell if theres rpi sticked inside... or should i just copy rpi scheme in my pcb and do job like that...
:-// I saw some high end audio manufacturer put an Olimex board of $50 in their 10k$+ "high end" apparatus.
But chances are higher with a pi that your device is copied 1:1 and sold for less on Ebay from Shenzen within a month.
 

Offline mrunje96Topic starter

  • Newbie
  • Posts: 8
  • Country: hr
Re: Recommend a microcontroller
« Reply #7 on: September 05, 2019, 10:11:38 pm »
 
Im thinking if i make a product ( some kind of controller) it wouldnt be that profesional to sell if theres rpi sticked inside... or should i just copy rpi scheme in my pcb and do job like that...
:-// I saw some high end audio manufacturer put an Olimex board of $50 in their 10k$+ "high end" apparatus.
But chances are higher with a pi that your device is copied 1:1 and sold for less on Ebay from Shenzen within a month.

They could copy hardware ( which would be regular rpi for example) but they could not access the code? And is there any code read protection for something like that?
 

Offline rsjsouza

  • Super Contributor
  • ***
  • Posts: 6199
  • Country: us
  • Eternally curious
    • Vbe - vídeo blog eletrônico
Re: Recommend a microcontroller
« Reply #8 on: September 05, 2019, 10:19:20 pm »
Can you buy the Broadcom IC at quantities of less than, say, 100.000? If not, then the RPi Zero mentioned above is unbeatable.
Vbe - vídeo blog eletrônico http://videos.vbeletronico.com

Oh, the "whys" of the datasheets... The information is there not to be an axiomatic truth, but instead each speck of data must be slowly inhaled while carefully performing a deep search inside oneself to find the true metaphysical sense...
 

Online Kjelt

  • Super Contributor
  • ***
  • Posts: 6736
  • Country: nl
Re: Recommend a microcontroller
« Reply #9 on: September 05, 2019, 10:32:43 pm »
They could copy hardware ( which would be regular rpi for example) but they could not access the code? And is there any code read protection for something like that?
Quite difficult to protect firmware, you need a processor with a special security peripheral to execute encrypted firmware.
 

Offline jhpadjustable

  • Frequent Contributor
  • **
  • Posts: 295
  • Country: us
  • Salt 'n' pepper beard
Re: Recommend a microcontroller
« Reply #10 on: September 05, 2019, 11:08:08 pm »
The STM32F107 looks to have ample torque for a MIDI/OSC controller and does have two levels of code readout protection. If you're into that sort of thing, STM32duino has an Ethernet library.
"There are more things in heaven and earth, Arduino, than are dreamt of in your philosophy."
 

Offline brucehoult

  • Super Contributor
  • ***
  • Posts: 6464
  • Country: nz
Re: Recommend a microcontroller
« Reply #11 on: September 06, 2019, 03:08:07 am »
Im thinking if i make a product ( some kind of controller) it wouldnt be that profesional to sell if theres rpi sticked inside... or should i just copy rpi scheme in my pcb and do job like that...

How many are you planning to make?

If the answer is "one" or for that matter anything under 1000 then the right professional answer is almost certainly RPi or NanoPi Neo or something like that, not a bare chip.

Many of them can easily be mounted on a bigger PCB that has your own circuits (e.g. your shift registers). That's all perfectly professional. And economical on NRE, which is a very professional thing to do for your client.
 
The following users thanked this post: lucazader

Offline tglev

  • Contributor
  • Posts: 10
  • Country: nl
Re: Recommend a microcontroller
« Reply #12 on: September 06, 2019, 08:53:22 am »
A Raspberry Pi Compute Module could be a solution.
Gives you access to using a RPI while looking more professional on your own custom PCB.
 

Offline SiliconWizard

  • Super Contributor
  • ***
  • Posts: 17828
  • Country: fr
Re: Recommend a microcontroller
« Reply #13 on: September 06, 2019, 02:32:25 pm »
The "how many" question seems the most pressing point here.

But still, the OP may want to favor a pure MCU solution as opposed to one that requires a full OS to work, for a number of reasons. Sure you can always program an RPi or similar bare-metal, but good luck with that: it would be a lot more complex than doing the same on a typical MCU. So it all comes down to whether the OP accepts to use a system that REQUIRES an OS to function.

An additional potential issue with an RPi is that those boot from an SD card. I'm not too sure about the long-term reliability of such a solution frankly... (other SBCs use eMMC Flash which is already a lot better IMO.)

So that's 3 questions to ask themselves: 1/ quantity, 2/ OS or not OS and 3/ reliability of mass storage.



 

Offline Scrts

  • Frequent Contributor
  • **
  • Posts: 803
  • Country: lt
Re: Recommend a microcontroller
« Reply #14 on: September 06, 2019, 02:54:09 pm »
Check www.ucapps.de, seems like they've already done what you want. The latest Core was designed around STM32F4: http://ucapps.de/mbhp_core_stm32f4.html
 

Offline Sal Ammoniac

  • Super Contributor
  • ***
  • Posts: 1811
  • Country: us
Re: Recommend a microcontroller
« Reply #15 on: September 06, 2019, 02:57:58 pm »
NXP ARM RT1020, Cortex M7 500Mhz, LQFP100 and LQFP144. Very cheap and very powerful.

Are you sure a 500MHz M7 is enough power for this application? Perhaps he should go straight to an embedded Intel part at 3.5 GHz and 16GB of RAM...

/sarcasm mode off
"That's not even wrong" -- Wolfgang Pauli
 
The following users thanked this post: Howardlong, SiliconWizard

Online Kjelt

  • Super Contributor
  • ***
  • Posts: 6736
  • Country: nl
Re: Recommend a microcontroller
« Reply #16 on: September 06, 2019, 03:29:41 pm »
Check www.ucapps.de, seems like they've already done what you want. The latest Core was designed around STM32F4: http://ucapps.de/mbhp_core_stm32f4.html
Does not have ethernet or does it?
 

Offline Scrts

  • Frequent Contributor
  • **
  • Posts: 803
  • Country: lt
Re: Recommend a microcontroller
« Reply #17 on: September 06, 2019, 04:05:39 pm »
Check www.ucapps.de, seems like they've already done what you want. The latest Core was designed around STM32F4: http://ucapps.de/mbhp_core_stm32f4.html
Does not have ethernet or does it?

STM32F407 does have ethernet, but you would need a custom motherboard for the devkit with Ethernet port.
 

Online Kjelt

  • Super Contributor
  • ***
  • Posts: 6736
  • Country: nl
Re: Recommend a microcontroller
« Reply #18 on: September 06, 2019, 06:07:14 pm »
STM32F407 does have ethernet, but you would need a custom motherboard for the devkit with Ethernet port.
Yes I know that see my first reply.
The question was if that recommended USB to midi platform has it and more important the firmware supports it.
Supporting ethernet on the STM32F yourself from scratch is lets put it mildly a long challenge  ;)
 

Online nctnico

  • Super Contributor
  • ***
  • Posts: 30351
  • Country: nl
    • NCT Developments
Re: Recommend a microcontroller
« Reply #19 on: September 06, 2019, 06:42:17 pm »
If you want network support then I strongly suggest to use one of the Wiznet chips.
There are small lies, big lies and then there is what is on the screen of your oscilloscope.
 

Offline mrunje96Topic starter

  • Newbie
  • Posts: 8
  • Country: hr
Re: Recommend a microcontroller
« Reply #20 on: September 06, 2019, 08:18:53 pm »
Thank you guys for answers, now i have direction to go...

How many? I dont know yet, im in test mode still and in meanwhile i'll be looking for some feedback from people is it worth to build it for selling in large quantities :D

Os/ no Os = no os, probably there will be some simple pc app for configuration of buttons

storage = i think i dont need 16gb sd memory for that kind of controller :D
 

Offline maginnovision

  • Super Contributor
  • ***
  • Posts: 1967
  • Country: us
Re: Recommend a microcontroller
« Reply #21 on: September 06, 2019, 08:59:32 pm »
I'd also add something like an xcore xe216/232 as an option.
 

Online nctnico

  • Super Contributor
  • ***
  • Posts: 30351
  • Country: nl
    • NCT Developments
Re: Recommend a microcontroller
« Reply #22 on: September 06, 2019, 09:22:53 pm »
NXP ARM RT1020, Cortex M7 500Mhz, LQFP100 and LQFP144. Very cheap and very powerful.
Are you sure a 500MHz M7 is enough power for this application?
If the microcontroller fits the budget then you better take the microcontroller which has lots of performance. Having room for extensions is always good especially for a startup company. The last thing you want to deal with is endless code optimisation because the microcontroller doesn't have enough resources. That will cost more money in lost revenue than using a cheaper microcontroller can ever make up for. Optimising purely on component costs and not thinking ahead about software development costs is a costly mistake which is often made.
There are small lies, big lies and then there is what is on the screen of your oscilloscope.
 

Offline Sal Ammoniac

  • Super Contributor
  • ***
  • Posts: 1811
  • Country: us
Re: Recommend a microcontroller
« Reply #23 on: September 06, 2019, 09:40:27 pm »
NXP ARM RT1020, Cortex M7 500Mhz, LQFP100 and LQFP144. Very cheap and very powerful.
Are you sure a 500MHz M7 is enough power for this application?
If the microcontroller fits the budget then you better take the microcontroller which has lots of performance. Having room for extensions is always good especially for a startup company. The last thing you want to deal with is endless code optimisation because the microcontroller doesn't have enough resources. That will cost more money in lost revenue than using a cheaper microcontroller can ever make up for. Optimising purely on component costs and not thinking ahead about software development costs is a costly mistake which is often made.

I agree with you on that, but only up to a point. Sometimes massive overkill is counterproductive for reasons that are not related to budget. A complex microcontroller can me more prone to failure, both as a result of coding errors and the simple fact that the more complex something is, the more failure paths there'll be.
"That's not even wrong" -- Wolfgang Pauli
 

Offline mariush

  • Super Contributor
  • ***
  • Posts: 5354
  • Country: ro
  • .
Re: Recommend a microcontroller
« Reply #24 on: September 06, 2019, 10:20:37 pm »
You should consider if it may be better to make it a bit more modular, even if it may cost a bit more.

For example, you could have a 50 cent  microcontroller read the state of up to 16-32 buttons and send the data for up to 16-32 leds.
Each of these microcontrollers would use I2C or SPI or RS-485 or RS-232 (2 wires) and use another IO line as ENABLE (or give each a unique address through some jumpers on the board if you use i2c for example .. note i2c may have limit of up to 8 devices on one i2c bus, but in your case 8 devices x 32 buttons/led = 256 so you'd be fine even with i2c)

The microcontroller is fast enough that it can read the state of buttons tens of times a second and could even multiplex the detection of buttons to use less pins ... ex use 8 i/o pins to read the state of 16 buttons, or 12 IO pins to read state of 32 buttons (by reading 8 buttons at a time) ... and 2 outputs would be used for the led strip with 16-32 leds, and 2-3 wires for the hardware SPI/UART etc

ex a 60 cent ATTiny 406 with 18 IO pins would work just fine to control 32 buttons and a strip with 32 leds... and you don't need shift registers or whatever you thought of.  https://www.digikey.com/product-detail/en/microchip-technology/ATTINY406-MNR/ATTINY406-MNRCT-ND/8536649

So then you're left with a controller that needs USB and Ethernet and way less pins... worse case scenario 2-3 pins for spi/uart + 1 enable pin for each "module", some ADC inputs for the sliders (but you could make a separate module for those if you want to)

It would allow you to use lower pin count microcontrollers... for example maybe something as simple as a PIC32MX may be enough : https://www.digikey.com/product-detail/en/microchip-technology/PIC32MX664F128H-I-PT/PIC32MX664F128H-I-PT-ND/2601589
 
« Last Edit: September 06, 2019, 10:30:26 pm by mariush »
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf

 

- - -
-->