This is my first time asking and I am not sure if I should ask this question here since I need something related to hardware and software I thought of giving it a try.

I have a hardware device that has an API (dll library) to control it. I am trying to find out what is the best way to have a web user interface that can use this library and control this device. Something same as what routers usually have.

My requirements are:

  1. The web user interface must work on all platforms (any operating system with a browser)
  2. It must use the same api. (My API is a C++ dll compiled on windows)

Note that it is flexible to add parts to the hardware such as a raspberry pi which could act as a web server, but I have to note that the api has a lot of processing so I would need a processor with high processing performance.

My questions are:

  1. How do routers implement such thing.
  2. Do I have to add a web server on the hardware which hosts the web ui requests
  3. Is it possible to have something like both the web server and web client on one PC in order to avoid adding a new processor on the hardware.

I tried to clarify the question as much as possible, and thank you in advance.

  • I don't think that you would have any other choice than reverse-engineering that w$ crap; particulaly not on a cross-platform raspberry-compliant way; and particularly not by some hardware. Maybe you can install a w$ in a VM on a Linux system and then develop the cross-platform app to talk to the w$ VM running that dll, but it is imho overkill. – peterh - Reinstate Monica Sep 24 '20 at 9:08
  • @peterh-ReinstateMonica Do you have any idea how it is done on routers. It seems like a good start to research about it. – Hasan H Sep 24 '20 at 9:19
  • The most common is that routers have an embedded software, which includes an embedded webserver. It might have also some REST API, what is used either by the browser frontend or by external apps, or both. AVM Fritz boxes can be remotely configured by a protocol named TR69. – peterh - Reinstate Monica Sep 24 '20 at 9:31
  • This site is definitely off topic for most of your questions; But there is a sliver of an on-topic request in there. You should be asking for recommendations for an embedded computer that will run the web server from your device. If you can tell us about that DLL or the kind of processing it does that will help us recommend one with a fast enough CPU too. You may need to compile that code for an ARM cpu or Linux to run it on a non-windows computer too. – Romen Sep 24 '20 at 17:50
  • @Romen I was not sure where to post my question since it has both software and hardware parts. The DLL is meant to read some samples from my hardware and do its processing. Processes like FFT and IFFT for large number of samples. Mostly DSP related stuff and applying filters on samples. – Hasan H Sep 25 '20 at 7:45

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.