Interfacing Windows to an Arduino

I have been using MIT App inventor 2 to produce remote controls for my projects over Bluetooth (using my Android phone).

All well and good.

But, I would like to be able to produce a control panel/App/program that will run on Windows 7 or 10.

It would need to be able to access the Bluetooth within the computer/laptop, and have the ability to make a front-end page with text, buttons etc.

Does anyone know of such a program? My Googling has not thrown up a result yet.

A free trial would be good to ensure it does what I need, but I don't mind paying for it.

Instal Visual Studio (community edition is free) and write you own program in e.g. C#. Further google is your friend.

https://www.google.com/search?q=c%23+bluetooth

PS
I've never coded for bluetooth on a PC.

Just found this post...

https://forum.arduino.cc/index.php?topic=451669.0

Thanks sterretje

The Bluetooth is because my project already transmits all my required data by Bluetooth.
Picking that up would be the easiest way of grabbing that data

I was not commenting on you using bluetooth :wink: Just stating that I never programmed for it.

When you get further with your project, further questions might fit better in Interfacing w/ Software on the Computer

OK. I can't find anything that suits my requirements.

I think the way forward is for me to finally get my head around something like Python coding and making my own GUI.
Steep learning curve I imagine.

Could Python be a possible route?

No idea. Try to google python bluetooth and see what you can use.

phoneystark2020:
Could Python be a possible route?

Absolutely, you can use PyQt-5 for the GUI portion and pySerialTransfer/SerialTransfer.h for the serial/bluetooth interface. I've made a Python GUI using such elements.

Power_Broker:
Absolutely, you can use PyQt-5 for the GUI portion and pySerialTransfer/SerialTransfer.h for the serial/bluetooth interface. I've made a Python GUI using such elements.

Does pySerialTransfer support bluetooth? Or is it agnostic to the communication method? Note that I'm not familiar with Python.

Power_Broker:
Absolutely, you can use PyQt-5 for the GUI portion and pySerialTransfer/SerialTransfer.h for the serial/bluetooth interface. I've made a Python GUI using such elements.

Ha ha.

You may as well mashed the keyboard for all that made any sense to me :o

I downloaded Python last night and started playing. It's going to be a steep curve to get to a decent GUI, but life ain't exactly throwing me much else except loading/unloading the dishwasher at the moment.

I believe (but could be wrong), that Python has its own GUI abilities using TkInter?

I found a couple of Arduino GUI examples for Python online and in here, but the fail to compile, as I think they are on older versions of Python.

Only one way forward with this I think..

phoneystark2020:
I believe (but could be wrong), that Python has its own GUI abilities using TkInter?

I've heard of it, but never used it myself. PySide is also an option, but I generally stick to PyQt-5.

I create my Python GUIs so they appear in a web browser. I find it much easier to work with HTML and CSS rather than TKinter. With the Python Bottle web framework you can have a very basic webserver running on your PC in 15 or 20 minutes.

Another benefit is that the GUI that works on my PC's browser can be accessed from my tablet or phone with no changes.

...R

Robin2:
I create my Python GUIs so they appear in a web browser. I find it much easier to work with HTML and CSS rather than TKinter. With the Python Bottle web framework you can have a very basic webserver running on your PC in 15 or 20 minutes.

Another benefit is that the GUI that works on my PC's browser can be accessed from my tablet or phone with no changes.

...R

But then I will need to ensure I have an internet connection.... which I may not (or am I wrong there)

Send the data from the devices, publish, to a MQTT broker, ran on a local PC, then use something like Hello IoT, subscriber, to create a user interface.

phoneystark2020:
But then I will need to ensure I have an internet connection....

No. I run both the server and the browser on this laptop.

...R

phoneystark2020:
But then I will need to ensure I have an internet connection.... which I may not (or am I wrong there)

Python bottle creates a web service on the local PC which can be directly accessed by a web browser on the same PC with no internet connection at all. If there is an internet connection and the firewall(s) allow it, it can also be accessed by any other web browser. Typically this means you can view the webpage with a phone or tablet on your home network, but not from the outside internet without firewall configuration.

tKinter is a basic GUI framework that probably is preinstalled with whatever version of python you've installed. That's probably the right place to start (vs PyQt5) if you haven't done GUI development previously.

PyQt5 is a more recent, more powerful, and more portable framework but has a correspondingly steeper learning curve and likely isn't part of the distribution you've installed.

MrMark:
and likely isn't part of the distribution you've installed.

Pip-installing is not hard...

Also, if you can use MQTT over WiFi (as mentioned earlier), it would be easier to manage compared to Bluetooth serial.

OK, there is a steep learning curve to all of this for me here.
I downloaded the latest version of Python (3.8).

The Bluetooth is already being transmitted and collected on an Android App perfectly. This windows interface was to replace that GUI and give me some more real estate to work with.

Therefore, I don't really want to take apart the perfectly working transmission side of the project if I can help it.

The main problem I am having is finding a decent guide on the basics and upwards of Python.
Amazon books get mixed/bad reviews, and it's very hit n miss on the web (so far).

Pretty sure once I get my head around it, I will pick it up quickly.

I would REALLY like to understand the whole MQTT, HTML, Web based programming.... but I have looked into that before and got horribly lost.

Before you buy any Python books, start with this.

Well fallen at the first hurdle really...

I installed 64 bit Python, but I have changed that to 32 bit as I have read that you really don't need 64 bit and that more libraries work better with the 32 bit.

Been trying to install pyserial for an hour now. WHY don't they make it a simple EXE file. Messing around with RAR files etc is a pain in the backside.

Almost over this before I start