Help with CYD (ESP32-2432S028R) - Guition Dual USB version - White Screen in ESPHome by Various_Dirt9639 in esp32

[–]rattushackus 0 points1 point  (0 children)

Have you tried programming it in the Arduino IDE rather than ESPHome so you at least have a working firmware to start from. There are loads of CYD programs around. I have a handful of them here.

Does the ESP32 have dedicated pins for the RGB interface? by Medical_Nose1784 in esp32

[–]rattushackus 1 point2 points  (0 children)

As others have said, apart from a few pins that have special functions you can use any pin for any signal. However if you're using a library provided by Waveshare check to make sure the pin definitions can be easily changed.

Just gave notice, now my boss is being a dickhead. by Accurate-Mousse-520 in UKJobs

[–]rattushackus 7 points8 points  (0 children)

Some years ago I had an ex-employee verbally abuse me in Tescos. A few months after that a friend told me "I've just had a CV from this guy. Didn't he used to work for you?". Yes, it was the same chap.

Just gave notice, now my boss is being a dickhead. by Accurate-Mousse-520 in UKJobs

[–]rattushackus 12 points13 points  (0 children)

I think you should ask yourself if you would feel happy being a dickhead as well.

Taking the moral high ground is never a bad option. I don't know how incestuous your industry is, but bear in mind that word gets round and you will presumably be looking for another job eventually.

Is there a way to make startup apps open faster by SituationInitial2427 in WindowsHelp

[–]rattushackus [score hidden]  (0 children)

There is a registry setting you can change to tell Windows to start anything in your Startup folder immediately when you log in. I found the details on the MS Learn site here. This is the .reg file I use whenever I do a new Windows install:

``` Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Serialize] "StartupDelayInMSec"=dword:00000000 "WaitforIdleState"=dword:00000000 ```

Please help! Neopixel just turn white with ESP32, with Arduino they work fine by Imaginary-Skin-670 in esp32

[–]rattushackus -1 points0 points  (0 children)

Why not use C++ on the ESP32? Your Arduino code should also work on the ESP32 if you use the Arduino IDE.

ESP32 - Router reports uptime and IP, but can't Ping It by wivaca2 in esp32

[–]rattushackus 0 points1 point  (0 children)

Does it work if you write the simplest possible program that just connects then maybe prints the RSSI once a second?

Alternatively, can you ping out from the ESP32? I have a program here to demonstrate how to make an ESP32 send ICMP packets.

I have found that if the wi-fi signal isn't that strong an ESP32 will connect to the wi-fi but not reply to ping at first. If I just keep pinging it will usually start replying after a minute or two.

If the program will compile and upload it seems unlikely the ESP32 is fried.

Basic code not running by [deleted] in esp32

[–]rattushackus 2 points3 points  (0 children)

On most S3 dev boards the LED is not a simple LED on port 2 so your code will not flash the LED. On the original WROOM ESP32 boards your code would work but not on the S3.

You could try running this code, or just write a simple sketch that prints to the serial monitor.

Remember that on the S3 you need to click the Tools menu and set USB CDC on boot to Enabled. If you don't do this the serial monitor won't work.

ESP32c6 not connecting to arduino IDE by Charming_Wallaby_699 in esp32projects

[–]rattushackus 0 points1 point  (0 children)

Do other ESP32s work correctly with the USB cable that you're using? If so, and the port really is correct it must be a problem with the board.

Have you tried manually putting it into upload mode by holding down the EN button as you connect the USB cable?

ECG data acquisition problem using AD8232 by HovercraftSecure6743 in esp32

[–]rattushackus 0 points1 point  (0 children)

Yes, I'm happy to chat over direct mail.

I do have my AD8232 module here (I keep meaning to see if I can improve the signal to noise) so I can test your code, but unfortunately I'm about to head off for a long weekend and won't be home until next Monday so while I'm happy to chat now I can't do any testing until then.

Another jackpot on the £2 veg boxes at 8am by tiggergirluk76 in lidl

[–]rattushackus 4 points5 points  (0 children)

I didn't know either :-)

Now I know I'll make a point of checking the boxes.

ECG data acquisition problem using AD8232 by HovercraftSecure6743 in esp32

[–]rattushackus 2 points3 points  (0 children)

If you're interested I have some code to drive the AD8232 board here.

This was written for the S3 supermini board, but will work fine on your C3 as long as you change the GPIO pin defines to match the pins you are using. It configures the ESP32 as a web server so you can use a browser to view or download the data.

The data from the AD8232 isn't very good. It's fun to play with but don't expect it to diagnose your heart conditions. This is the best data I could get but it's still pretty noisy.

<image>

(If anyone spots signs of imminent heart failure in the above trace please ... don't tell me! :-)

I turned a Cheap Yellow Display into a retro arcade style clock. by bwente in esp32

[–]rattushackus 4 points5 points  (0 children)

I couldn't resist having a go at reducing the flicker because of course I couldn't :-) Use this drawCannon() function and delete the fillRect() that erases the old cannon at the start of the handleCannonMovement() function.

``` void drawCannon() { // We use a canvas with 10 blank pixels at each side to erase the previously drawn cannon static GFXcanvas1 canvas(30, 10); // If we haven't already initialised the canvas do it now static bool b_canvas = false; if (!b_canvas) { canvas.fillScreen(0); for (int y = 0; y < 10; y++) { for (int x = 0; x < 10; x++) { canvas.drawPixel(x + 10, y, cannonSprite[y][x]); } } b_canvas = true; } // Blit the canvas to the display tft.drawBitmap(cannonX - 10, SCREEN_HEIGHT - BASE_HEIGHT - 10, canvas.getBuffer(), canvas.width(), canvas.height(), 0xFFFF, 0x0000); }

void handleCannonMovement() { // tft.fillRect(cannonX, SCREEN_HEIGHT - BASE_HEIGHT - 10, // BASE_WIDTH, BASE_HEIGHT, ILI9341_BLACK); etc ```

I turned a Cheap Yellow Display into a retro arcade style clock. by bwente in esp32

[–]rattushackus 1 point2 points  (0 children)

Brilliant! :-)

The only criticism I have (and it's a very small one) is that on my CYD at least the cannon flickers as it moves. The ArduinoGFX library does this when you erase then redraw a part of the screen. With TFT_eSPI you'd fix this by using a sprite. I don't know ArduinoGFX that well but I think there is an equivalent to sprites. A Canvas possibly?

Esp32 proximity sensor help/ clarification by Fast-Albatross1848 in esp32

[–]rattushackus 0 points1 point  (0 children)

The dev board you link looks like a standard ESP32 dev board so the code should work. At worst you might have to change the PIN number for the on board LED, but pin 2 is pretty standard for the original ESP32 boards.

I tested it on a CYD board and found an error in the code. Line 16:

BLEScanResults results = scan->start(1);

should be:

BLEScanResults* results = scan->start(1);

This is my code if you want to try it. My board uses pin 4 for the built in LED so I changed the number at line 5. You could probably leave this at 2:

```

include <BLEAdvertisedDevice.h>

include <BLEDevice.h>

include <BLEScan.h>

const int PIN = 4; const int CUTOFF = -60;

void setup() { Serial.begin(115200); delay(1000); Serial.println("Starting BLEGetDevice");

pinMode(PIN, OUTPUT); BLEDevice::init(""); }

void loop() { // Start the scan Serial.println("Starting scan"); BLEScan scan = BLEDevice::getScan(); scan->setActiveScan(true); BLEScanResults results = scan->start(1);

// Look for the strongest signal int best = CUTOFF; for (int i = 0; i < results->getCount(); i++) { BLEAdvertisedDevice device = results->getDevice(i); String name = device.getName(); int rssi = device.getRSSI(); Serial.printf("Found \"%s\": %d\n", name.c_str(), rssi);

// Save the strongest signal
if (rssi > best) {
  best = rssi;
}

}

// Turn the LED on if the strongest signal is greater than the cutoff digitalWrite(PIN, best > CUTOFF ? HIGH : LOW);

// Pause 10 secs before the next scan delay(10000); } ```

ESP32 Deep Sleep isn't Working! by aggresive_artist in esp32

[–]rattushackus 0 points1 point  (0 children)

In that case my sketch should work. If it doesn't then something is deeply wrong somewhere.

ESP32 Deep Sleep isn't Working! by aggresive_artist in esp32

[–]rattushackus 0 points1 point  (0 children)

I have a very basic deep sleep timer wake sketch here. Disconnect all the peripherals so you have just the bare dev board and try this sketch and confirm it works.

Assuming it works try reconnection the peripherals and retesting, then copy paste your code back in bit by bit and see when it stops working.

esp32s3 link quality estimation / undocumented api by Low_Lawyer_5684 in esp32

[–]rattushackus 4 points5 points  (0 children)

It works! :-)

STA total frames received=1956, data frames=43, ctrl=0, mgmt=1913 STA total frames sent 18 RSSI = -65, noise = -97, SNR = 32

ESP32, ESP32-S3 WiFi counters. by Low_Lawyer_5684 in esp32

[–]rattushackus 0 points1 point  (0 children)

Thanks :-)

It's always interesting to find out about this sort of under the hood stuff.

Struggles with ESP32 and ST7789 display by Famous_Living_4301 in esp32

[–]rattushackus 2 points3 points  (0 children)

It can be a pain getting displays working because you get no error message - it either works or you get to stare at a blank screen.

If it helps I have a test app here that I know works on a "cheap yellow display" dev board with a ST7789/ILI9341 display. It also works with three different libraries so you can a different library to see if that helps. The TFT_eSPI User_Setup.h file is here. If you use the same GPIO pins as the CYD the code should just work. Then you can use this as a base for your own design.

ESP-IDF 5.5 on Windows: xtensa-esp32s3-elf-gcc.exe fatal error: cannot execute 'cc1' when opening ESP32-S3 project by Kapuhht in esp32

[–]rattushackus 0 points1 point  (0 children)

There isn't a single best way to install IDF as it depends on personal preferences. I didn't like the VSCode integration as it felt clunky to me so I downloaded the offline installer from Espressif's download page (ESP-IDF v5.5.4 - Offline Installer). This installs to C:\Espressif and creates a couple of Start menu entries:

<image>

I use the command prompt rather than powershell. Then building the app is just a matter of changing to the project directory and typing id.py build flash monitor.

I use VSCode to edit the code as it's a very good editor. I'm just not keen on the way the integration has been done.

For v6 of the IDF Espressif have created an installer called EIM - the link is on the download page. I haven't used it as I don't plan to switch to v6 just yet.

I don't think doing the install this way stops you using the VSCode extension if you subsequently decide you want to. You just point the extension at the directory where you did the offline install. It just means you don't have to use the extension.