Ok, so this project is a little bit on hold as I wait for some more parts to come through…

I got the chassis 3d printed and it looks pretty good. It’ll need a bit of sanding as the speaker platform is a little large to fit inside the main chassis.

The software largely seems to be fine, the speaker has been attached and I have soldered the nfc reader to the GROVE cable.

The problem

For some reason the nfc reader is failing with this in the logs (I have picked out the relevant bits of the logs to save this page scrolling for ages):

14:10:54.080][C][switch.gpio:092]: GPIO Switch 'grove_port_power'
[14:10:54.080][C][switch.gpio:092]: Restore Mode: always ON
[14:10:54.080][C][switch.gpio:029]: Pin: GPIO46
[14:10:54.093][C][i2c.idf:090]: I2C Bus:
[14:10:54.095][C][i2c.idf:091]: SDA Pin: GPIO5
[14:10:54.095][C][i2c.idf:091]: SCL Pin: GPIO6
[14:10:54.095][C][i2c.idf:091]: Frequency: 400000 Hz
[14:10:54.096][C][i2c.idf:101]: Recovery: bus successfully recovered
[14:10:54.096][C][i2c.idf:111]: Results from bus scan:
[14:10:54.096][C][i2c.idf:117]: Found device at address 0x18
[14:10:54.098][C][i2c.idf:117]: Found device at address 0x42
[14:10:54.099][C][i2c.idf:090]: I2C Bus:
[14:10:54.100][C][i2c.idf:091]: SDA Pin: GPIO1
[14:10:54.100][C][i2c.idf:091]: SCL Pin: GPIO2
[14:10:54.100][C][i2c.idf:091]: Frequency: 50000 Hz
[14:10:54.101][C][i2c.idf:101]: Recovery: bus successfully recovered
[14:10:54.105][C][i2c.idf:111]: Results from bus scan:
[14:10:54.106][C][i2c.idf:117]: Found device at address 0x08
[14:10:54.106][C][i2c.idf:117]: Found device at address 0x09
[14:10:54.106][C][i2c.idf:117]: Found device at address 0x0A
[14:10:54.106][C][i2c.idf:117]: Found device at address 0x0B
[14:10:54.106][C][i2c.idf:117]: Found device at address 0x0C
[14:10:54.106][C][i2c.idf:117]: Found device at address 0x0D
[14:10:54.109][C][i2c.idf:117]: Found device at address 0x0E
[14:10:54.112][C][i2c.idf:117]: Found device at address 0x0F
[14:10:54.112][C][i2c.idf:117]: Found device at address 0x10
[14:10:54.112][C][i2c.idf:117]: Found device at address 0x11
[14:10:54.112][C][i2c.idf:117]: Found device at address 0x12
[14:10:54.117][C][i2c.idf:117]: Found device at address 0x13
[14:10:54.118][C][i2c.idf:117]: Found device at address 0x14
[14:10:54.118][C][i2c.idf:117]: Found device at address 0x15
[14:10:54.118][C][i2c.idf:117]: Found device at address 0x16
[14:10:54.118][C][i2c.idf:117]: Found device at address 0x17
[14:10:54.118][C][i2c.idf:117]: Found device at address 0x18
[14:10:54.118][C][i2c.idf:117]: Found device at address 0x19
[14:10:54.118][C][i2c.idf:117]: Found device at address 0x1A
[14:10:54.118][C][i2c.idf:117]: Found device at address 0x1B
[14:10:54.118][C][i2c.idf:117]: Found device at address 0x1C
[14:10:54.127][C][i2c.idf:117]: Found device at address 0x1D
[14:10:54.127][C][i2c.idf:117]: Found device at address 0x1E
[14:10:54.127][C][i2c.idf:117]: Found device at address 0x1F
[14:10:54.127][C][i2c.idf:117]: Found device at address 0x20
[14:10:54.127][C][i2c.idf:117]: Found device at address 0x21
[14:10:54.127][C][i2c.idf:117]: Found device at address 0x22
[14:10:54.128][C][i2c.idf:117]: Found device at address 0x23
[14:10:54.128][C][i2c.idf:117]: Found device at address 0x24
[14:10:54.128][C][i2c.idf:117]: Found device at address 0x25
[14:10:54.128][C][i2c.idf:117]: Found device at address 0x26
[14:10:54.128][C][i2c.idf:117]: Found device at address 0x27
[14:10:54.128][C][i2c.idf:117]: Found device at address 0x28
[14:10:54.128][C][i2c.idf:117]: Found device at address 0x29
[14:10:54.128][C][i2c.idf:117]: Found device at address 0x2A
[14:10:54.130][C][i2c.idf:117]: Found device at address 0x2B
[14:10:54.134][C][i2c.idf:117]: Found device at address 0x2C
[14:10:54.135][C][i2c.idf:117]: Found device at address 0x2D
[14:10:54.135][C][i2c.idf:117]: Found device at address 0x2E
[14:10:54.135][C][i2c.idf:117]: Found device at address 0x2F
[14:10:54.135][C][i2c.idf:117]: Found device at address 0x30
[14:10:54.135][C][i2c.idf:117]: Found device at address 0x31
[14:10:54.136][C][i2c.idf:117]: Found device at address 0x32
[14:10:54.136][C][i2c.idf:117]: Found device at address 0x33
[14:10:54.137][C][i2c.idf:117]: Found device at address 0x34
[14:10:54.138][C][i2c.idf:117]: Found device at address 0x35
[14:10:54.143][C][i2c.idf:117]: Found device at address 0x36
[14:10:54.143][C][i2c.idf:117]: Found device at address 0x37
[14:10:54.143][C][i2c.idf:117]: Found device at address 0x38
[14:10:54.143][C][i2c.idf:117]: Found device at address 0x39
[14:10:54.143][C][i2c.idf:117]: Found device at address 0x3A
[14:10:54.143][C][i2c.idf:117]: Found device at address 0x3B
[14:10:54.144][C][i2c.idf:117]: Found device at address 0x3C
[14:10:54.144][C][i2c.idf:117]: Found device at address 0x3D
[14:10:54.144][C][i2c.idf:117]: Found device at address 0x3E
[14:10:54.145][C][i2c.idf:117]: Found device at address 0x3F
[14:10:54.145][C][i2c.idf:117]: Found device at address 0x40
[14:10:54.147][C][i2c.idf:117]: Found device at address 0x41
[14:10:54.147][C][i2c.idf:117]: Found device at address 0x42
[14:10:54.148][C][i2c.idf:117]: Found device at address 0x43
[14:10:54.152][C][i2c.idf:117]: Found device at address 0x44
[14:10:54.153][C][i2c.idf:117]: Found device at address 0x45
[14:10:54.154][C][i2c.idf:117]: Found device at address 0x46
[14:10:54.154][C][i2c.idf:117]: Found device at address 0x47
[14:10:54.154][C][i2c.idf:117]: Found device at address 0x48
[14:10:54.155][C][i2c.idf:117]: Found device at address 0x49
[14:10:54.155][C][i2c.idf:117]: Found device at address 0x4A
[14:10:54.155][C][i2c.idf:117]: Found device at address 0x4B
[14:10:54.155][C][i2c.idf:117]: Found device at address 0x4C
[14:10:54.158][C][i2c.idf:117]: Found device at address 0x4D
[14:10:54.158][C][i2c.idf:117]: Found device at address 0x4E
[14:10:54.158][C][i2c.idf:117]: Found device at address 0x4F
[14:10:54.159][C][i2c.idf:117]: Found device at address 0x50
[14:10:54.161][C][i2c.idf:117]: Found device at address 0x51
[14:10:54.162][C][i2c.idf:117]: Found device at address 0x52
[14:10:54.162][C][i2c.idf:117]: Found device at address 0x53
[14:10:54.162][C][i2c.idf:117]: Found device at address 0x54
[14:10:54.163][C][i2c.idf:117]: Found device at address 0x55
[14:10:54.166][C][i2c.idf:117]: Found device at address 0x56
[14:10:54.166][C][i2c.idf:117]: Found device at address 0x57
[14:10:54.166][C][i2c.idf:117]: Found device at address 0x58
[14:10:54.166][C][i2c.idf:117]: Found device at address 0x59
[14:10:54.167][C][i2c.idf:117]: Found device at address 0x5A
[14:10:54.168][C][i2c.idf:117]: Found device at address 0x5B
[14:10:54.180][C][i2c.idf:117]: Found device at address 0x5C
[14:10:54.180][C][i2c.idf:117]: Found device at address 0x5D
[14:10:54.181][C][i2c.idf:117]: Found device at address 0x5E
[14:10:54.181][C][i2c.idf:117]: Found device at address 0x5F
[14:10:54.181][C][i2c.idf:117]: Found device at address 0x60
[14:10:54.181][C][i2c.idf:117]: Found device at address 0x61
[14:10:54.181][C][i2c.idf:117]: Found device at address 0x62
[14:10:54.181][C][i2c.idf:117]: Found device at address 0x63
[14:10:54.181][C][i2c.idf:117]: Found device at address 0x64
[14:10:54.182][C][i2c.idf:117]: Found device at address 0x65
[14:10:54.182][C][i2c.idf:117]: Found device at address 0x66
[14:10:54.182][C][i2c.idf:117]: Found device at address 0x67
[14:10:54.182][C][i2c.idf:117]: Found device at address 0x68
[14:10:54.182][C][i2c.idf:117]: Found device at address 0x69
[14:10:54.182][C][i2c.idf:117]: Found device at address 0x6A
[14:10:54.182][C][i2c.idf:117]: Found device at address 0x6B
[14:10:54.182][C][i2c.idf:117]: Found device at address 0x6C
[14:10:54.183][C][i2c.idf:117]: Found device at address 0x6D
[14:10:54.183][C][i2c.idf:117]: Found device at address 0x6E
[14:10:54.187][C][i2c.idf:117]: Found device at address 0x6F
[14:10:54.187][C][i2c.idf:117]: Found device at address 0x70
[14:10:54.187][C][i2c.idf:117]: Found device at address 0x71
[14:10:54.187][C][i2c.idf:117]: Found device at address 0x72
[14:10:54.187][C][i2c.idf:117]: Found device at address 0x73
[14:10:54.187][C][i2c.idf:117]: Found device at address 0x74
[14:10:54.188][C][i2c.idf:117]: Found device at address 0x75
[14:10:54.192][C][i2c.idf:117]: Found device at address 0x76
[14:10:54.192][C][i2c.idf:117]: Found device at address 0x77
[14:10:54.766][C][pn532:429]: PN532:
[14:10:54.766][C][pn532:399]: Update Interval: 1.0s
[14:10:54.767][C][pn532_i2c:125]: Address: 0x24
[14:10:54.767][E][component:188]: pn532 is marked FAILED: unspecified

According to ChatGPT, all those devices being found is not a good thing. It suggests there is an issue with the electrical connection to the nfc board. To be fair, I did extend the cable on the GROVE connector…I suspect my soldering has fucked things up a bit.

This image shows it hooked up. The issue is either my soldered cable extenson, or my soldering to the actual board.

So I have two options;

  1. Try to make it by removing the cable extension and soldering the GROVE cable to the nfc board. This might work, and I only extended the cable because I wanted a bit of space incase the case was quite large. I think I might be able to get the nfc board in with the GROVE cable I already have, however.
  2. Get a new GROVE cable and a pn532 that is GROVE compatible. Unfortunately, Seeed studio are out of stock of the board at the moment.

So I’ve kinda decided on 1 and 2. I’ll snip the cable extension and have a crack at attaching it direct to the nfc board I already have. I’ve also ordered a GROVE compatible pn532 (which apparently won’t be available till the end of January…) and some more GROVE cables.

Until then I guess I can measure out the fabric for going over the chassis and try to work out how I’m going to mount the nfc board (whichever one it ends up being!).