Skip to content

Instantly share code, notes, and snippets.

@symbioquine
symbioquine / gist:3be25b130c57f1108eb7ca9bd055f17e
Created February 14, 2021 02:08
2021_02_13_farmOS_2x_migration_testing_log
$ docker-compose logs --follow www2
Attaching to devel_www2_1
www2_1 | + '[' -d /opt/drupal ']'
www2_1 | ++ ls -A /opt/drupal/composer.json
www2_1 | ls: cannot access '/opt/drupal/composer.json': No such file or directory
www2_1 | + '[' '' ']'
www2_1 | + echo 'farmOS codebase not detected. Copying from pre-built files in the Docker image.'
www2_1 | + cp -rp /var/farmOS/. /opt/drupal
www2_1 | farmOS codebase not detected. Copying from pre-built files in the Docker image.
www2_1 | + wait_db_ready
@symbioquine
symbioquine / Readme.md
Last active July 8, 2024 20:15
Understanding the undocumented Epever 0x43 (67) modbus command

Warning: This is all based on what I have inferred through interacting with the Epever Tracer 3210AN {0: b'EPsolar Tech co., Ltd', 1: b'TriRon3210', 2: b'V01.55+V01.22'}. Please treat this repository as informational only and test carefully before assuming any of this will work with your device.

The undocumented Epever 0x43 (67) modbus command is similar to the regular read register command (0x4) except that it allows reading discontinguous registers.

The request format is the same - two big-endian short integers indicating the starting register address and the number of registers to retrieve;

+---------+--------------+------------------------+----------------+-----+
|         |              |                        |                |     |
| unit_id | command=0x43 | start_register_address | register_count | crc |
@symbioquine
symbioquine / patch.lua
Last active August 11, 2019 15:40 — forked from alexander-yakushev/patch.lua
Fix move_to_screen in AwesomeWM v4.3
function smart_move_to_screen(c, dir)
local was_maximized = { h = false, v = false }
if c.maximized_horizontal then
c.maximized_horizontal = false
was_maximized.h = true
end
if c.maximized_vertical then
c.maximized_vertical = false
was_maximized.v = true
end