Jump to content

Recommended Posts

8 hours ago, Alexander Elagin said:

As for embedded controllers - yes, plain C is the best choice.

Often, but not always. I have done some considerable work in small AVR devices using assembly language. More than sufficient for the tasks involved, and essential in some cases, as I was dealing with some relatively fine-grained real time issues. There are times when the absolute control is a very large benefit. Embedded processors, after all, encompass a tremendous range of possibilities, from incredibly simple to things as complex as an RPi.

Share this post


Link to post
1 hour ago, Bill Meyer said:

 I have done some considerable work in small AVR devices using assembly language. More than sufficient for the tasks involved, and essential in some cases, as I was dealing with some relatively fine-grained real time issues. There are times when the absolute control is a very large benefit. Embedded processors, after all, encompass a tremendous range of possibilities, from incredibly simple to things as complex as an RPi.

I also wrote a lot of assembly code a while ago, mostly for the 8051 family. Nothing beats a good assembler code when you need to get the most from the hardware. All those fancy higher level languages make it easier to write programs, but when all you have is 8K of program memory and 256 bytes of RAM shared with bits and register banks, then the real work begins :classic_tongue:

  • Like 1

Share this post


Link to post
On 12/23/2021 at 10:28 AM, David Schwartz said:

But maybe MatLab or R would be best for your needs. So far you haven't really said what your requirements are.

MATLAB is for wealthy big corp even though it is great for instrument control.

 

How about R?  Isn't it a graphical software only without hardware handling ability?  :classic_huh:

Share this post


Link to post
1 hour ago, TimCruise said:

MATLAB is for wealthy big corp even though it is great for instrument control.

 

How about R?  Isn't it a graphical software only without hardware handling ability?  :classic_huh:

Both Matlab and R seem completely inappropriate for this usage scenario. But R is not graphical software. It's best thought of as a scripting language designed for statistical use. 

  • Like 1

Share this post


Link to post
13 hours ago, TimCruise said:

MATLAB is for wealthy big corp even though it is great for instrument control.

 

How about R?  Isn't it a graphical software only without hardware handling ability?  :classic_huh:

I just pulled these two out of the air. Clearly you have more considerations than you're sharing.

 

You said you're "monitoring" perhaps 1000s of nodes. How? In real-time? Are they being sent automatically into a central place in a big stream or do you have to poll each one? Are you needing to buffer them or save them, or just sample them and toss them aside? Or are they being dropped into a database for later analysis? Is there a time-frame on the analysis window?

 

Also, what's the interface? You mention low-level hardware peeking and poking. You might be doing that with 1000's of devices scattered around a lab, but not if they're scattered around the city, state, country, or the world. So how is the data being delivered?

 

There's a guy who posted something recently and was wondering if he could use Delphi for it. He has some remote sensor devices that wake up every hour, measure the temperature, humidity, wind speed and direction, take a photo, put them into an email and send it off, then they go back to sleep. They only look for remote commands when they wake up briefly. (It turned out they're solar-powered devices scattered all over SW Australia.) That's a lot different than having things that you can interact with at any time and make explicit requests of. His only real requirement was, can I read email and extract the data from the messages? He didn't even say that, but that's what it came down to. You could be using the exact same sensors he was using and sending all of your data back as emails as well. Pretty much anything can read emails and extract data from them. So why limit yourself to just two languages and platforms? (He kept coming back to using "email", and I was really puzzled why. I got him to send me info on the remote sensing devices, and they gave an option to send data via MQTT or email, and they chose email. Well, ok then. Email it is.) 

 

I built a system once where we had a box that received weather satellite images. It was sent to a Centronics parallel port intended to be connected directly to a printer. That's how the images were delivered. I had to hook that to a parallel interface, read the data, re-rasterize it, convert the data to a bitmap image, and save it into a DB. We also got text data from an RS-232 port on the device; we had to parse it, analyze it, and put it into the DB as well. (Weather data published by the US National Weather Service is very cryptic, if you've never seen it.) When we printed the satellite images at full resolution (as received) on a laser printer, they were about 1" square, which wasn't very useful as-is. ALL of the data was valid for a limited period of time. The text data contained start and end times for the vaidity of most of the messages; the images were sent in fixed time slots and their validity depended on when they were sent. Once data was expired, we deleted it. We needed to run GIS queries and pull data out of the DB based on a flight plan, not the data. At the time, I used C++, but it could have just as easily been done with Dephi or C#.

 

There's a LOT of stuff you aren't saying here that makes it nearly impossible to answer your question with any precision.

 

But in general, both choices are likely to be sufficient, in absense of any further details.

Edited by David Schwartz

Share this post


Link to post
On 12/22/2021 at 11:33 PM, Lajos Juhász said:

You mean something like this? https://blogs.embarcadero.com/start-building-apps-for-single-board-computers-with-delphi-or-c-builder-now/ I didn't watched it as it is not my thing.

This is rather outdated and should be updated.

 

And if they're going to seriously support IoT hardware like Raspberry Pi's and Arduios, they need to add Linux support into the Community Edition instead of forcing people to go with Free Pascal and Lazarus, because they run Linux on ARM CPUs. Now that all of Apples new computers run ARM CPUs, it's getting harder to ignore that option as well. And don't forget that MacOS is a full Unix system under the hood. 

 

Also, Windows is about the only platform that still supports 32-bit apps, although Raspian OS is working hard to get their 64-bit OS more stable so they can deprecate their 32-bit OS.

 

Share this post


Link to post
On 2/18/2023 at 6:44 PM, TheOnlyOne said:

So, you wen't for Delphi or C?

There are also other choices:

LabVIEW - great for creating dashboards.  It also has a built-in free-of-charge MQTT plugin.  License fee is acceptable for small poor developers. :classic_blush:

 

Qt - is also able to create nice dashboards.  License fee is US$10,000 per seat per year.  Unless you are Lockheed Martin or BAE, you may want to avoid it. :classic_laugh:

Share this post


Link to post
On 2/19/2023 at 6:22 PM, TimCruise said:

There are also other choices:

Qt - is also able to create nice dashboards.  License fee is US$10,000 per seat per year.

WTF?? At that price, I wouldn't call it a "choice". Jesus. You really gave me nightmares. Are you sure it is per year? Maybe it is for a permanent license.
You should really consider Delphi FMX or Lazarus (free) in this case.

______

 

Please define "dashboard" (maybe some screenshots or links to dome online "dashboards"). Delphi Firemonkey is also good with dashboards. But let's see what you mean by dashboard, first.
Also check Delphi TeeChart - costs money, but it is a [bit] under, 10000 per year.

 

Edited by TheOnlyOne

Share this post


Link to post
38 minutes ago, TheOnlyOne said:

Also check Delphi TeeChart

Idea are also trying to push their YellowFin product into their developer audience, which does dashboards and BI reporting.

 

They did a demo at the Delphi Conference in London this week.

 

I couldn't find a published price. Which is probably a bad sign.

 

  

Share this post


Link to post
14 hours ago, David Champion said:

I couldn't find a published price. Which is probably a bad sign.

It most certainly is. I've never been surprised by how cheap a product is, when I had to ask for a price. On the other hand it's sometimes worth to ask for a discount when the price is published.

  • Haha 1

Share this post


Link to post
1 hour ago, dummzeuch said:

On the other hand it's sometimes worth to ask for a discount when the price is published.

Jetbrains gives you 25% if you send them a screenshot of your Delphi License.

Share this post


Link to post
2 minutes ago, omnibrain said:

Jetbrains gives you 25% if you send them a screenshot of your Delphi License.

They must be rather desperate.

  • Haha 1

Share this post


Link to post
1 hour ago, dummzeuch said:

They must be rather desperate.

Yes, they are barely scraping by and nobody uses their tools.

Share this post


Link to post
On 12/18/2021 at 11:53 AM, dummzeuch said:

Not quite: You can write Windows device drivers with C. I doubt very much that this is possible with any Pascal based development tool.

Free Pascal has a Native NT target (so NOT win32 layer), and it can generate such binaries. IIRC there have been experiments with Delphi too, but then using binary converters.

 

Anyway, in questions like this that is language vs language, it is IMHO confusing to pull in things that not every C compiler can do either.

 

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×