Author Topic: Why Arduino users so agressive?  (Read 47673 times)

0 Members and 2 Guests are viewing this topic.

Offline sokoloff

  • Super Contributor
  • ***
  • Posts: 1799
  • Country: us
Re: Why Arduino users so agressive?
« Reply #375 on: September 01, 2019, 07:29:25 pm »
Some advice please?  I'm a hardware engineer (retired) who has some mixed software / firmware experience.  I've coded in assembler for early uCs, coded in basic, pascal, and c for pre-Windows PCs, coded in vbasic and c# on modern PCs, done a little c work on RPis and arduinos and Pics, and played with python.  I really like the small / cheap arduino-style boards from Adafruit (etc), and most of my little projects can easily run on  one of these or a RPi.

So my question is, what toolchain would you recommend for my hobby projects?  Preferably c-based, but I'm not adverse to learning something else.  I would like to be methodical about this.  I do like to do some real-time stuff, so good ISR support would be nice.
As a few others have said (and others argued strenuously against), I'd spend my first $40 and 20 hours with Arduino (clone) straight as it comes out of the box.

That is a very easy learning curve as you get back into it, tons of examples, easy installation, 5 minutes to blinking LED, etc. That little bit of investment will give you reasonably clear guidance whether to continue down that path or deviate (and if deviate, in which direction is most important to you). I don't consider that time or money "wasted" by any means.
 

Offline legacy

  • Super Contributor
  • ***
  • !
  • Posts: 4415
  • Country: ch
Re: Why Arduino users so agressive?
« Reply #376 on: September 01, 2019, 08:24:11 pm »
awww yeah, 600MHz arduino, for ...

It might be interesting for an IMU, or for dynamically calculating the curve distance between two GPS points. This stuff consumes a lot of quaternions in the first case and trigonometric and hyperbolic functions in the second case. IMU's sensors can be all SPI as well a GPS can stay on a second serial line.


I am still too busy with my B+tree filesystem at the moment to play with these two ideas  :D
 

Offline rstofer

  • Super Contributor
  • ***
  • Posts: 9889
  • Country: us
Re: Why Arduino users so agressive?
« Reply #377 on: September 01, 2019, 09:30:46 pm »
awww yeah, 600MHz arduino, for ...

It might be interesting for an IMU, or for dynamically calculating the curve distance between two GPS points. This stuff consumes a lot of quaternions in the first case and trigonometric and hyperbolic functions in the second case. IMU's sensors can be all SPI as well a GPS can stay on a second serial line.


I am still too busy with my B+tree filesystem at the moment to play with these two ideas  :D

Did I mention that the ARM M7 chip in the Teensy 4 also has an FPU?  600 MHz PLUS a FPU.  What's not to like?

https://www.pjrc.com/store/teensy40.html

ETA:  It's $20

« Last Edit: September 01, 2019, 10:09:05 pm by rstofer »
 

Offline rstofer

  • Super Contributor
  • ***
  • Posts: 9889
  • Country: us
Re: Why Arduino users so agressive?
« Reply #378 on: September 01, 2019, 09:47:27 pm »
As a few others have said (and others argued strenuously against), I'd spend my first $40 and 20 hours with Arduino (clone) straight as it comes out of the box.

That is a very easy learning curve as you get back into it, tons of examples, easy installation, 5 minutes to blinking LED, etc. That little bit of investment will give you reasonably clear guidance whether to continue down that path or deviate (and if deviate, in which direction is most important to you). I don't consider that time or money "wasted" by any means.

The Arduino Uno R3 is the latest standard platform BUT it isn't easily compatible with a breadboard.  The Nano version is perfect to plug right in to the board.  Either way...

Education has never been free.  I buy something related to each family as soon as they are announced.  I have a drawer full of demo boards.  Some I will play with, others I will abandon.  Even those that I abandon have provided something toward my education.

Perhaps those who advocate against the Arduino have forgotten how they got started.  One thing I believe is absolutely true:  The Arduino with libraries is the best documented system on the market.  Furthermore, everything that can possibly be done with the chip has already been done and out on the Internet.  There is a lot of help.  Help can be useful when starting out.

Everybody has to start somewhere.  A multicore ARM isn't the place.  In my view, neither is the STM32F or any similar mid to high range ARM.

In the end, it's just a decision.  Some are in favor, some opposed.  I don't think I would relegate the decision to a coin-toss.  It's far too important because early success keep a person interested.
 

Offline legacy

  • Super Contributor
  • ***
  • !
  • Posts: 4415
  • Country: ch
Re: Why Arduino users so agressive?
« Reply #379 on: September 01, 2019, 10:23:26 pm »
Did I mention that the ARM M7 chip in the Teensy 4 also has an FPU?  600 MHz PLUS a FPU.  What's not to like?

indeed, I said that it's more than perfect for those tasks! I simply to not have the time at the moment  :D
 

Online fourfathom

  • Super Contributor
  • ***
  • Posts: 1879
  • Country: us
Re: Why Arduino users so agressive?
« Reply #380 on: September 01, 2019, 10:38:36 pm »
Thanks for the advice and pointers.  I'm well past the "blinking lights with an Arduino" stage, and am not afraid of wiring up protoboards or laying out and building simple SMD (or leaded) circuit boards.  I've been playing with the Arduino IDE, and been able to modify the libraries as needed to get some particular feature enabled on a peripheral.  I'm not really competent with c++ but have been able to modify and expand existing code.  I've got an assortment of Arduino and Adafruit "Feather" boards that I've used on various projects (and a bunch of RPis.)

I guess what I'm looking for is an easy to use toolchain that will be somewhat consistent when working within the arduinoverse, with custom cards I may want to design, and perhaps RPi projects as well.  I realize that the RPi world has many more reasonable options for development, so it's OK if that doesn't really fit in.

PlatformIO looks interesting!

I do appreciate all the input.  Thanks again!
We'll search out every place a sick, twisted, solitary misfit might run to! -- I'll start with Radio Shack.
 

Offline rstofer

  • Super Contributor
  • ***
  • Posts: 9889
  • Country: us
Re: Why Arduino users so agressive?
« Reply #381 on: September 02, 2019, 12:10:27 am »
I guess what I'm looking for is an easy to use toolchain that will be somewhat consistent when working within the arduinoverse, with custom cards I may want to design, and perhaps RPi projects as well.  I realize that the RPi world has many more reasonable options for development, so it's OK if that doesn't really fit in.

As pointed out above, the base Arduino toolchain is based on avr-gcc (compiler/linker) and arv-libc (the C library).  Both are present in the Arduino home directory along with AVRdude which handles device programming for other than Arduino cards.  Every tool you need is there.

But how to use them?  Two paths:  Use the Arduino IDE  (and bootloader) and just call the avr-libc functions instead of the Arduino functions (or do both).  There is probably another header to #include - search Google for 'avr-libc on Arduino board' or something like that.  Also search for 'using avr-gcc in Arduino IDE' or whatever.  I haven't done it so I can't give you the canned answer but it is being done all the time.

You can find the documentation for avr-libc on Google.  The compiler is going to be called anyway, that's what Arduino uses for the toolchain.

You may or may not include the Arduino bootloader in your custom projects.  If you do, no problem, just plug the board in as before.  If you don't, you need to Google for 'using avrdude directly with ICSP and ATmega328' or something like that.  It is your responsibility to bring out the ICSP pins.  This is the way I used to work.

You don't really have to install another toolchain, everything you need is sitting in the Arduino home directory.
« Last Edit: September 02, 2019, 01:26:40 pm by rstofer »
 

Offline Simon

  • Global Moderator
  • *****
  • Posts: 17814
  • Country: gb
  • Did that just blow up? No? might work after all !!
    • Simon's Electronics
Re: Why Arduino users so agressive?
« Reply #382 on: September 02, 2019, 06:34:09 am »
For the Atmel stuff you can of course run Atmel studio and import AVR projects.
 

Offline rstofer

  • Super Contributor
  • ***
  • Posts: 9889
  • Country: us
Re: Why Arduino users so agressive?
« Reply #383 on: September 02, 2019, 01:28:37 pm »
For the Atmel stuff you can of course run Atmel studio and import AVR projects.

I really liked working with the ATmega128 in a Linux environment using a Makefile and gedit as the editor.  I don't use Linux as a daily workstation but I do like it for writing code.
 

Offline legacy

  • Super Contributor
  • ***
  • !
  • Posts: 4415
  • Country: ch
Re: Why Arduino users so agressive?
« Reply #384 on: September 02, 2019, 03:07:35 pm »
Linux as a daily workstation

Or a Windows machine sharing files over CIFS to a remote Linux machine where you have your toolchains and dev-tools. This allow me to use commerical tools like Codewarrior and Avocet with their hardware-dongles (which - I don't know why, but they - do suck on Virtual Machines) without any troubles.

I use MobaXterm as ssh shell and X11 server (the personal edition is free, the professional edition only costs 60 euro) :D
 

Offline langwadt

  • Super Contributor
  • ***
  • Posts: 4414
  • Country: dk
Re: Why Arduino users so agressive?
« Reply #385 on: September 02, 2019, 04:44:23 pm »
For the Atmel stuff you can of course run Atmel studio and import AVR projects.

I really liked working with the ATmega128 in a Linux environment using a Makefile and gedit as the editor.  I don't use Linux as a daily workstation but I do like it for writing code.

Windows Subsystem for Linux and an xserver (I use X410 ) works pretty good

 

Offline bd139

  • Super Contributor
  • ***
  • Posts: 23018
  • Country: gb
Re: Why Arduino users so agressive?
« Reply #386 on: September 02, 2019, 04:46:22 pm »
I use WSL as well. It works but it's bloody awfully slow thanks to being backed with NTFS
 

Offline techman-001

  • Frequent Contributor
  • **
  • !
  • Posts: 748
  • Country: au
  • Electronics technician for the last 50 years
    • Mecrisp Stellaris Unofficial UserDoc
Re: Why Arduino users so agressive?
« Reply #387 on: September 02, 2019, 10:31:52 pm »
I use WSL as well. It works but it's bloody awfully slow thanks to being backed with NTFS
Copycon on DOS  :-DD

I dumped Windows in 1997 and moved to Linux full time. I've been on FreeBSD the last 3 years.

Because the Forth I use has a MCU resident optimizing compiler, the only development support it needs is a serial terminal.

Sourcecode is handled by GNU Screen remotely controlled by the "make" button in my Vim editor which strips all comments before uploading to the MCU at 460800 Baud with hardware handshaking.

I can read/write/test any STM32 register or bitfield with a quick editor search that will insert the code line into the source ready to run on the target. The Bitfield file is auto generated from CMSIS-SVD, so all naming is CMSIS compliant.

With this system I get realtime MCU interactivity for development, I work from a GUI editor with colour syntax and Fossil code versioning. Any compiler issues detected by the MCU beep my Workstation bell and are highlighted in red (errors) or blue (warnings) on the terminal.

Frankly, a Raspberry Pi could be used for all of this. Imagine that, a completely interactive STM32 development system on a RPI with a STM32Xxx Discovery/Nucleo board!

I didn't write the GPL'd Forth (Mecrisp-Stellaris) but I designed every other part of my system myself because ... "Open Source" :)



 

Offline Mr. Scram

  • Super Contributor
  • ***
  • Posts: 9810
  • Country: 00
  • Display aficionado
Re: Why Arduino users so agressive?
« Reply #388 on: September 02, 2019, 10:37:24 pm »
Let’s add OSs and IDEs to this thread. That’s just what it needs!
 

Online fourfathom

  • Super Contributor
  • ***
  • Posts: 1879
  • Country: us
Re: Why Arduino users so agressive?
« Reply #389 on: September 02, 2019, 10:50:36 pm »
Let’s add OSs and IDEs to this thread. That’s just what it needs!

Might as well -- it was a silly thread to start with.  The thread drift has been the best part.
We'll search out every place a sick, twisted, solitary misfit might run to! -- I'll start with Radio Shack.
 
The following users thanked this post: techman-001

Offline langwadt

  • Super Contributor
  • ***
  • Posts: 4414
  • Country: dk
Re: Why Arduino users so agressive?
« Reply #390 on: September 02, 2019, 11:05:02 pm »
Let’s add OSs and IDEs to this thread. That’s just what it needs!

how about dvorak vs. qwerty
 

Offline Simon

  • Global Moderator
  • *****
  • Posts: 17814
  • Country: gb
  • Did that just blow up? No? might work after all !!
    • Simon's Electronics
Re: Why Arduino users so agressive?
« Reply #391 on: September 03, 2019, 06:29:19 am »
Let’s add OSs and IDEs to this thread. That’s just what it needs!

how about dvorak vs. qwerty

dvorak!
 
The following users thanked this post: bd139

Offline GeorgeOfTheJungle

  • Super Contributor
  • ***
  • !
  • Posts: 2699
  • Country: tr
Re: Why Arduino users so agressive?
« Reply #392 on: September 03, 2019, 06:39:36 am »
A single tab is worth eight spaces.
« Last Edit: October 14, 2019, 08:12:18 am by GeorgeOfTheJungle »
The further a society drifts from truth, the more it will hate those who speak it.
 

Offline magic

  • Super Contributor
  • ***
  • Posts: 6761
  • Country: pl
Re: Why Arduino users so agressive?
« Reply #393 on: September 03, 2019, 07:20:55 am »
We should also add VIM vs gedit.
 

Offline maginnovision

  • Super Contributor
  • ***
  • Posts: 1963
  • Country: us
Re: Why Arduino users so agressive?
« Reply #394 on: September 03, 2019, 07:25:54 am »
MCU Vs MPU? Scotch Vs whiskey?
 

Offline NorthGuy

  • Super Contributor
  • ***
  • Posts: 3143
  • Country: ca
Re: Why Arduino users so agressive?
« Reply #395 on: September 03, 2019, 05:32:04 pm »
A tab is worth eight spaces.

Only two on my computer.
 

Offline langwadt

  • Super Contributor
  • ***
  • Posts: 4414
  • Country: dk
Re: Why Arduino users so agressive?
« Reply #396 on: September 03, 2019, 07:37:26 pm »
Let’s add OSs and IDEs to this thread. That’s just what it needs!

how about dvorak vs. qwerty

dvorak!

ahh so you are like those forth guys ;)

 

Offline Simon

  • Global Moderator
  • *****
  • Posts: 17814
  • Country: gb
  • Did that just blow up? No? might work after all !!
    • Simon's Electronics
Re: Why Arduino users so agressive?
« Reply #397 on: September 03, 2019, 07:38:47 pm »
why? and what's forth?
 

Offline bd139

  • Super Contributor
  • ***
  • Posts: 23018
  • Country: gb
Re: Why Arduino users so agressive?
« Reply #398 on: September 03, 2019, 07:44:00 pm »
FORTH is a very low level stack based programming language yet at the same time a very high one. It's a bit of a weird one.

Examples here: https://learnxinyminutes.com/docs/forth/

A FORTH interpreter and compiler is so small it can run on the target rather than being cross compiled. Literally you can write your code on an AVR for example on the actual device with a serial terminal.

It is however immensely powerful and it's possible to do some cool tricks like sandboxed code.

How to make an Arduino good: http://amforth.sourceforge.net/TG/recipes/Arduino-HelloWorld.html  (there back on topic  :-DD)

Then things get reaaaaally good: http://amforth.sourceforge.net/TG/recipes/Multitasking.html
« Last Edit: September 03, 2019, 08:14:12 pm by bd139 »
 
The following users thanked this post: techman-001

Offline SiliconWizard

  • Super Contributor
  • ***
  • Posts: 14447
  • Country: fr
Re: Why Arduino users so agressive?
« Reply #399 on: September 03, 2019, 07:56:46 pm »
But how about Rust on Arduino?
 ;D
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf