AT Commands for classic bluetooth



  • Hi,

    I have bought an M5 Stack grey because I think it could work nice for a project I want to make.
    First I should say I am new to Arduino, although I have used a teensy to make a gaming mouse in C before, but this project is quite different.

    I'm using this guide:
    https://sites.google.com/site/grcbyte/electronica/arduino/obdii-bluetooth
    (sorry its not in English, but google translate works well).

    Basically I want to communicate with an OBD2 (ELM327) scanner over classic bluetooth, say for example, get the current engine RPM from it and display it on the M5Stack screen. The OBD2 scanner needs to have a pin sent to it to connect (eg "1234"). So the idea is, the M5Stack and OBD2 scanner sit in my car, when I turn on the ignition, the M5Stack will request data from the OBD2 reader, and display whatever is requested on the screen and constantly update it. It can potentially get quite a lot of information and display it in all sorts of ways, but I just want something simple, and also something I can share with my friends who also want something like this (I am aware you can get these kinds of thing on ebay, but my car is old and most don't support it).

    I understand how to do pretty much everything in the guide with the M5 Stack, but the one thing that I'm having trouble with is the AT Commands at the start.

    I have set up ESP-IDF, and there is a AT application for it here: https://github.com/espressif/esp32-at

    It just seems so complicated and there's a lot of things I don't know. On the HC-05, it looks very easy, so I have ordered one of those just to have as a fallback, and to get the project started (since its hard to begin anything without being able to connect to the OBD2 scanner).

    So on the HC-05, I can just use some firmware to communicate with it over serial, after pressing the AT button on the HC-05, I can send AT Commands. But with the M5Stack/ESP32, there is no button, and I don't know if the firmware supports all the commands. It seems it's not so simple as pressing a button, loading some firmware, and sending the commands.

    Of course I would rather use the bluetooth on the M5Stack in the end, since it seems a shame to attach a HC-05 to it when it has perfectly functional bluetooth capability built in.

    I found these two videos, I was following it for a while, until he started using one USB port for flash and one for AT commands, I don't know what's going on there.
    https://www.youtube.com/watch?v=HBrEMIzm_uY
    https://www.youtube.com/watch?v=j6lNyjQ4x0Y

    I'm really surprised how difficult it is, I don't have anything against it being difficult, its just surprising to me, I thought it was going to be easy ;) I guess it IS easy but I'm just not able to find the information I need, theres so much you can do, and if you want to do one little thing, its hidden in the vast amounts of information.

    So my question is, am I going in the right direction? Can I use esp32-at to do what I need to do? Or is there some much more simple way to do it, that I've missed?

    Thanks for any help you can give me.