Posted in: Internet of crap, Projects

Sonoff T3US2C tasmota

You can probably find these instructions spread out via various sites fairly easily. I know it didn’t take me long. I’m putting together my list specifically so I remember WTF I did.

Raspi Flash setup
setup the esptool

for the raspberry PI the serial port is /dev/ttyS0 when configured “properly”
<get picture of proper wire configuration here>

Firmware configuration
(the majority of this won’t work, just go to the bottom of this section)
Enable TLS. I don’t quite understand why having SSL as an option is a recompile from scratch. I would think a better method would be that removing it required a special compile. but what do I know?
what I actually had to do:
1. setup the environment for compiling.
I decided to use the web based method gitpod located here
2. edit code
this is where we start ramming different instructions together and hoping for the best
if it doesn’t exist, create it. I didn’t need to, but I did also have a sample version listed. for posterity my edited one linked here but make these changes near the mqtt info for certain
#ifndef USE_MQTT_TLS
#define USE_MQTT_TLS

TODO: why am i enabling it here, if I have to enable it in my_user_config as well?

line 361: un-comment #define USE_MQTT_TLS

TODO: verify if platform needs to be changed

run in the console:
platformio run -e tasmota

firmware.bin should be located at
Download that bugger.
Login to the T3US2C (this is only useful if you have already flashed tasmota once to the thing via the serial method below. I had at this point.)

new chunk because I changed my steps:
uploaded tasmota_minimal.bin
restarted, and requested that I upload a new firmware
uploaded my downloaded compiled firmware successfully
rebooted device, no good. Discovery is broken I believe.

rename to:

all of the above is junk. doesn’t work. none of it. complete waste of time and my day.

Follow these instructions instead:

apt install python3-pip
pip3 install esptool
ls /dev/tty*

(possibly needed)
sudo systemctl stop serial-getty@ttyAMA0
sudo systemctl disable serial-getty@ttyAMA0

sudo –trace –port /dev/ttyS0 write_flash -fm dout 0x0 tasmota.bin

OTA flash
(If you have already flashed tasmota via cable)
1. login to tasmota web UI
2. select firmware upgrade
3. upload tasmota-minimal.bin
4. wait for reboot
5. select firmware upgrade
6. upload your firmware
7. be happy

MQTT setup
my MQTT server is running on a kangaroo backpack I managed to run across that I installed ubuntu on. an interesting story in and of it’s self that I probably should have documented.
password verification is setup using
mosquitto_passwd -b <file> <name> <password>
All servers in my network use SSL from my internal CA running on pfsense.
That means it must be connected to via DNS entry
( and port 8883 for secure mqtt
I have created a username and password for each device individually

MQTT commands