Notice: Function _load_textdomain_just_in_time was called incorrectly . Translation loading for the wordpress-seo
domain was triggered too early. This is usually an indicator for some code in the plugin or theme running too early. Translations should be loaded at the init
action or later. Please see Debugging in WordPress for more information. (This message was added in version 6.7.0.) in /volume1/web/sevenwatt.com/http/main/wp-includes/functions.php on line 6114
Call Stack:
0.0001 360760 1. {main}() /volume1/web/sevenwatt.com/http/main/index.php:0
0.0001 361040 2. require('/volume1/web/sevenwatt.com/http/main/wp-blog-header.php') /volume1/web/sevenwatt.com/http/main/index.php:17
0.0001 361424 3. require_once('/volume1/web/sevenwatt.com/http/main/wp-load.php') /volume1/web/sevenwatt.com/http/main/wp-blog-header.php:13
0.0001 362120 4. require_once('/volume1/web/sevenwatt.com/http/main/wp-config.php') /volume1/web/sevenwatt.com/http/main/wp-load.php:50
0.0002 363552 5. require_once('/volume1/web/sevenwatt.com/http/main/wp-settings.php') /volume1/web/sevenwatt.com/http/main/wp-config.php:92
0.0298 3246088 6. do_action($hook_name = 'plugins_loaded') /volume1/web/sevenwatt.com/http/main/wp-settings.php:559
0.0298 3246464 7. WP_Hook->do_action($args = [0 => '']) /volume1/web/sevenwatt.com/http/main/wp-includes/plugin.php:517
0.0298 3246464 8. WP_Hook->apply_filters($value = '', $args = [0 => '']) /volume1/web/sevenwatt.com/http/main/wp-includes/class-wp-hook.php:348
0.0326 3602256 9. wpseo_init('') /volume1/web/sevenwatt.com/http/main/wp-includes/class-wp-hook.php:324
0.0333 3712360 10. WPSEO_Meta::init() /volume1/web/sevenwatt.com/http/main/wp-content/plugins/wordpress-seo/wp-seo-main.php:334
0.0333 3713864 11. WPSEO_Options::get($key = 'opengraph', $default_value = FALSE) /volume1/web/sevenwatt.com/http/main/wp-content/plugins/wordpress-seo/inc/class-wpseo-meta.php:278
0.0333 3713864 12. WPSEO_Options::prime_cache() /volume1/web/sevenwatt.com/http/main/wp-content/plugins/wordpress-seo/inc/options/class-wpseo-options.php:275
0.0333 3713864 13. WPSEO_Options::get_all() /volume1/web/sevenwatt.com/http/main/wp-content/plugins/wordpress-seo/inc/options/class-wpseo-options.php:295
0.0333 3714240 14. WPSEO_Options::get_options($option_names = [0 => 'wpseo', 1 => 'wpseo_titles', 2 => 'wpseo_social']) /volume1/web/sevenwatt.com/http/main/wp-content/plugins/wordpress-seo/inc/options/class-wpseo-options.php:214
0.0334 3730952 15. WPSEO_Options::get_option($option_name = 'wpseo_titles') /volume1/web/sevenwatt.com/http/main/wp-content/plugins/wordpress-seo/inc/options/class-wpseo-options.php:231
0.0334 3730952 16. get_option($option = 'wpseo_titles', $default_value = ???) /volume1/web/sevenwatt.com/http/main/wp-content/plugins/wordpress-seo/inc/options/class-wpseo-options.php:254
0.0335 3743904 17. apply_filters($hook_name = 'option_wpseo_titles', $value = ['forcerewritetitle' => FALSE, 'separator' => 'sc-dash', 'title-home-wpseo' => '%%sitename%% %%page%% %%sep%% %%sitedesc%%', 'title-author-wpseo' => '%%name%%, Author at %%sitename%% %%page%%', 'title-archive-wpseo' => '%%date%% %%page%% %%sep%% %%sitename%%', 'title-search-wpseo' => 'You searched for %%searchphrase%% %%page%% %%sep%% %%sitename%%', 'title-404-wpseo' => 'Page not found %%sep%% %%sitename%%', 'social-title-author-wpseo' => '%%name%%', 'social-title-archive-wpseo' => '%%date%%', 'social-description-author-wpseo' => '', 'social-description-archive-wpseo' => '', 'social-image-url-author-wpseo' => '', 'social-image-url-archive-wpseo' => '', 'social-image-id-author-wpseo' => 0, 'social-image-id-archive-wpseo' => 0, 'metadesc-home-wpseo' => '', 'metadesc-author-wpseo' => '', 'metadesc-archive-wpseo' => '', 'rssbefore' => '', 'rssafter' => 'The post %%POSTLINK%% appeared first on %%BLOGLINK%%.', 'noindex-author-wpseo' => FALSE, 'noindex-author-noposts-wpseo' => TRUE, 'noindex-archive-wpseo' => TRUE, 'disable-author' => FALSE, 'disable-date' => FALSE, 'disable-post_format' => FALSE, 'disable-attachment' => FALSE, 'breadcrumbs-404crumb' => 'Error 404: Page not found', 'breadcrumbs-display-blog-page' => TRUE, 'breadcrumbs-boldlast' => FALSE, 'breadcrumbs-archiveprefix' => 'Archives for', 'breadcrumbs-enable' => FALSE, 'breadcrumbs-home' => 'Home', 'breadcrumbs-prefix' => '', 'breadcrumbs-searchprefix' => 'You searched for', 'breadcrumbs-sep' => '»', 'website_name' => '', 'person_name' => '', 'person_logo' => '', 'alternate_website_name' => '', 'company_logo' => '', 'company_name' => '', 'company_alternate_name' => '', 'company_or_person' => 'company', 'company_or_person_user_id' => FALSE, 'stripcategorybase' => FALSE, 'open_graph_frontpage_title' => '%%sitename%%', 'open_graph_frontpage_desc' => '', 'open_graph_frontpage_image' => '', 'publishing_principles_id' => 0, 'ownership_funding_info_id' => 0, 'actionable_feedback_policy_id' => 0, 'corrections_policy_id' => 0, 'ethics_policy_id' => 0, 'diversity_policy_id' => 0, 'diversity_staffing_report_id' => 0, 'title-post' => '%%title%% %%page%% %%sep%% %%sitename%%', 'metadesc-post' => '', 'noindex-post' => FALSE, 'display-metabox-pt-post' => TRUE, 'post_types-post-maintax' => 0, 'schema-page-type-post' => 'WebPage', 'schema-article-type-post' => 'Article', 'social-title-post' => '%%title%%', 'social-description-post' => '', 'social-image-url-post' => '', 'social-image-id-post' => 0, 'title-page' => '%%title%% %%page%% %%sep%% %%sitename%%', 'metadesc-page' => '', 'noindex-page' => FALSE, 'display-metabox-pt-page' => TRUE, 'post_types-page-maintax' => 0, 'schema-page-type-page' => 'WebPage', 'schema-article-type-page' => 'None', 'social-title-page' => '%%title%%', 'social-description-page' => '', 'social-image-url-page' => '', 'social-image-id-page' => 0, 'title-attachment' => '%%title%% %%page%% %%sep%% %%sitename%%', 'metadesc-attachment' => '', 'noindex-attachment' => FALSE, 'display-metabox-pt-attachment' => TRUE, 'post_types-attachment-maintax' => 0, 'schema-page-type-attachment' => 'WebPage', 'schema-article-type-attachment' => 'None', 'title-tax-category' => '%%term_title%% Archives %%page%% %%sep%% %%sitename%%', 'metadesc-tax-category' => '', 'display-metabox-tax-category' => TRUE, 'noindex-tax-category' => FALSE, 'social-title-tax-category' => '%%term_title%% Archives', 'social-description-tax-category' => '', 'social-image-url-tax-category' => '', 'social-image-id-tax-category' => 0, 'taxonomy-category-ptparent' => 0, 'title-tax-post_tag' => '%%term_title%% Archives %%page%% %%sep%% %%sitename%%', 'metadesc-tax-post_tag' => '', 'display-metabox-tax-post_tag' => TRUE, 'noindex-tax-post_tag' => FALSE, 'social-title-tax-post_tag' => '%%term_title%% Archives', 'social-description-tax-post_tag' => '', 'social-image-url-tax-post_tag' => '', 'social-image-id-tax-post_tag' => 0, 'taxonomy-post_tag-ptparent' => 0, 'title-tax-post_format' => '%%term_title%% Archives %%page%% %%sep%% %%sitename%%', 'metadesc-tax-post_format' => '', 'display-metabox-tax-post_format' => TRUE, 'noindex-tax-post_format' => TRUE, 'social-title-tax-post_format' => '%%term_title%% Archives', 'social-description-tax-post_format' => '', 'social-image-url-tax-post_format' => '', 'social-image-id-tax-post_format' => 0, 'taxonomy-post_format-ptparent' => 0, 'person_logo_id' => 0, 'company_logo_id' => 0, 'company_logo_meta' => FALSE, 'person_logo_meta' => FALSE, 'open_graph_frontpage_image_id' => 0, 'noindex-subpages-wpseo' => FALSE], ...$args = variadic('wpseo_titles')) /volume1/web/sevenwatt.com/http/main/wp-includes/option.php:247
0.0335 3744312 18. WP_Hook->apply_filters($value = ['forcerewritetitle' => FALSE, 'separator' => 'sc-dash', 'title-home-wpseo' => '%%sitename%% %%page%% %%sep%% %%sitedesc%%', 'title-author-wpseo' => '%%name%%, Author at %%sitename%% %%page%%', 'title-archive-wpseo' => '%%date%% %%page%% %%sep%% %%sitename%%', 'title-search-wpseo' => 'You searched for %%searchphrase%% %%page%% %%sep%% %%sitename%%', 'title-404-wpseo' => 'Page not found %%sep%% %%sitename%%', 'social-title-author-wpseo' => '%%name%%', 'social-title-archive-wpseo' => '%%date%%', 'social-description-author-wpseo' => '', 'social-description-archive-wpseo' => '', 'social-image-url-author-wpseo' => '', 'social-image-url-archive-wpseo' => '', 'social-image-id-author-wpseo' => 0, 'social-image-id-archive-wpseo' => 0, 'metadesc-home-wpseo' => '', 'metadesc-author-wpseo' => '', 'metadesc-archive-wpseo' => '', 'rssbefore' => '', 'rssafter' => 'The post %%POSTLINK%% appeared first on %%BLOGLINK%%.', 'noindex-author-wpseo' => FALSE, 'noindex-author-noposts-wpseo' => TRUE, 'noindex-archive-wpseo' => TRUE, 'disable-author' => FALSE, 'disable-date' => FALSE, 'disable-post_format' => FALSE, 'disable-attachment' => FALSE, 'breadcrumbs-404crumb' => 'Error 404: Page not found', 'breadcrumbs-display-blog-page' => TRUE, 'breadcrumbs-boldlast' => FALSE, 'breadcrumbs-archiveprefix' => 'Archives for', 'breadcrumbs-enable' => FALSE, 'breadcrumbs-home' => 'Home', 'breadcrumbs-prefix' => '', 'breadcrumbs-searchprefix' => 'You searched for', 'breadcrumbs-sep' => '»', 'website_name' => '', 'person_name' => '', 'person_logo' => '', 'alternate_website_name' => '', 'company_logo' => '', 'company_name' => '', 'company_alternate_name' => '', 'company_or_person' => 'company', 'company_or_person_user_id' => FALSE, 'stripcategorybase' => FALSE, 'open_graph_frontpage_title' => '%%sitename%%', 'open_graph_frontpage_desc' => '', 'open_graph_frontpage_image' => '', 'publishing_principles_id' => 0, 'ownership_funding_info_id' => 0, 'actionable_feedback_policy_id' => 0, 'corrections_policy_id' => 0, 'ethics_policy_id' => 0, 'diversity_policy_id' => 0, 'diversity_staffing_report_id' => 0, 'title-post' => '%%title%% %%page%% %%sep%% %%sitename%%', 'metadesc-post' => '', 'noindex-post' => FALSE, 'display-metabox-pt-post' => TRUE, 'post_types-post-maintax' => 0, 'schema-page-type-post' => 'WebPage', 'schema-article-type-post' => 'Article', 'social-title-post' => '%%title%%', 'social-description-post' => '', 'social-image-url-post' => '', 'social-image-id-post' => 0, 'title-page' => '%%title%% %%page%% %%sep%% %%sitename%%', 'metadesc-page' => '', 'noindex-page' => FALSE, 'display-metabox-pt-page' => TRUE, 'post_types-page-maintax' => 0, 'schema-page-type-page' => 'WebPage', 'schema-article-type-page' => 'None', 'social-title-page' => '%%title%%', 'social-description-page' => '', 'social-image-url-page' => '', 'social-image-id-page' => 0, 'title-attachment' => '%%title%% %%page%% %%sep%% %%sitename%%', 'metadesc-attachment' => '', 'noindex-attachment' => FALSE, 'display-metabox-pt-attachment' => TRUE, 'post_types-attachment-maintax' => 0, 'schema-page-type-attachment' => 'WebPage', 'schema-article-type-attachment' => 'None', 'title-tax-category' => '%%term_title%% Archives %%page%% %%sep%% %%sitename%%', 'metadesc-tax-category' => '', 'display-metabox-tax-category' => TRUE, 'noindex-tax-category' => FALSE, 'social-title-tax-category' => '%%term_title%% Archives', 'social-description-tax-category' => '', 'social-image-url-tax-category' => '', 'social-image-id-tax-category' => 0, 'taxonomy-category-ptparent' => 0, 'title-tax-post_tag' => '%%term_title%% Archives %%page%% %%sep%% %%sitename%%', 'metadesc-tax-post_tag' => '', 'display-metabox-tax-post_tag' => TRUE, 'noindex-tax-post_tag' => FALSE, 'social-title-tax-post_tag' => '%%term_title%% Archives', 'social-description-tax-post_tag' => '', 'social-image-url-tax-post_tag' => '', 'social-image-id-tax-post_tag' => 0, 'taxonomy-post_tag-ptparent' => 0, 'title-tax-post_format' => '%%term_title%% Archives %%page%% %%sep%% %%sitename%%', 'metadesc-tax-post_format' => '', 'display-metabox-tax-post_format' => TRUE, 'noindex-tax-post_format' => TRUE, 'social-title-tax-post_format' => '%%term_title%% Archives', 'social-description-tax-post_format' => '', 'social-image-url-tax-post_format' => '', 'social-image-id-tax-post_format' => 0, 'taxonomy-post_format-ptparent' => 0, 'person_logo_id' => 0, 'company_logo_id' => 0, 'company_logo_meta' => FALSE, 'person_logo_meta' => FALSE, 'open_graph_frontpage_image_id' => 0, 'noindex-subpages-wpseo' => FALSE], $args = [0 => ['forcerewritetitle' => FALSE, 'separator' => 'sc-dash', 'title-home-wpseo' => '%%sitename%% %%page%% %%sep%% %%sitedesc%%', 'title-author-wpseo' => '%%name%%, Author at %%sitename%% %%page%%', 'title-archive-wpseo' => '%%date%% %%page%% %%sep%% %%sitename%%', 'title-search-wpseo' => 'You searched for %%searchphrase%% %%page%% %%sep%% %%sitename%%', 'title-404-wpseo' => 'Page not found %%sep%% %%sitename%%', 'social-title-author-wpseo' => '%%name%%', 'social-title-archive-wpseo' => '%%date%%', 'social-description-author-wpseo' => '', 'social-description-archive-wpseo' => '', 'social-image-url-author-wpseo' => '', 'social-image-url-archive-wpseo' => '', 'social-image-id-author-wpseo' => 0, 'social-image-id-archive-wpseo' => 0, 'metadesc-home-wpseo' => '', 'metadesc-author-wpseo' => '', 'metadesc-archive-wpseo' => '', 'rssbefore' => '', 'rssafter' => 'The post %%POSTLINK%% appeared first on %%BLOGLINK%%.', 'noindex-author-wpseo' => FALSE, 'noindex-author-noposts-wpseo' => TRUE, 'noindex-archive-wpseo' => TRUE, 'disable-author' => FALSE, 'disable-date' => FALSE, 'disable-post_format' => FALSE, 'disable-attachment' => FALSE, 'breadcrumbs-404crumb' => 'Error 404: Page not found', 'breadcrumbs-display-blog-page' => TRUE, 'breadcrumbs-boldlast' => FALSE, 'breadcrumbs-archiveprefix' => 'Archives for', 'breadcrumbs-enable' => FALSE, 'breadcrumbs-home' => 'Home', 'breadcrumbs-prefix' => '', 'breadcrumbs-searchprefix' => 'You searched for', 'breadcrumbs-sep' => '»', 'website_name' => '', 'person_name' => '', 'person_logo' => '', 'alternate_website_name' => '', 'company_logo' => '', 'company_name' => '', 'company_alternate_name' => '', 'company_or_person' => 'company', 'company_or_person_user_id' => FALSE, 'stripcategorybase' => FALSE, 'open_graph_frontpage_title' => '%%sitename%%', 'open_graph_frontpage_desc' => '', 'open_graph_frontpage_image' => '', 'publishing_principles_id' => 0, 'ownership_funding_info_id' => 0, 'actionable_feedback_policy_id' => 0, 'corrections_policy_id' => 0, 'ethics_policy_id' => 0, 'diversity_policy_id' => 0, 'diversity_staffing_report_id' => 0, 'title-post' => '%%title%% %%page%% %%sep%% %%sitename%%', 'metadesc-post' => '', 'noindex-post' => FALSE, 'display-metabox-pt-post' => TRUE, 'post_types-post-maintax' => 0, 'schema-page-type-post' => 'WebPage', 'schema-article-type-post' => 'Article', 'social-title-post' => '%%title%%', 'social-description-post' => '', 'social-image-url-post' => '', 'social-image-id-post' => 0, 'title-page' => '%%title%% %%page%% %%sep%% %%sitename%%', 'metadesc-page' => '', 'noindex-page' => FALSE, 'display-metabox-pt-page' => TRUE, 'post_types-page-maintax' => 0, 'schema-page-type-page' => 'WebPage', 'schema-article-type-page' => 'None', 'social-title-page' => '%%title%%', 'social-description-page' => '', 'social-image-url-page' => '', 'social-image-id-page' => 0, 'title-attachment' => '%%title%% %%page%% %%sep%% %%sitename%%', 'metadesc-attachment' => '', 'noindex-attachment' => FALSE, 'display-metabox-pt-attachment' => TRUE, 'post_types-attachment-maintax' => 0, 'schema-page-type-attachment' => 'WebPage', 'schema-article-type-attachment' => 'None', 'title-tax-category' => '%%term_title%% Archives %%page%% %%sep%% %%sitename%%', 'metadesc-tax-category' => '', 'display-metabox-tax-category' => TRUE, 'noindex-tax-category' => FALSE, 'social-title-tax-category' => '%%term_title%% Archives', 'social-description-tax-category' => '', 'social-image-url-tax-category' => '', 'social-image-id-tax-category' => 0, 'taxonomy-category-ptparent' => 0, 'title-tax-post_tag' => '%%term_title%% Archives %%page%% %%sep%% %%sitename%%', 'metadesc-tax-post_tag' => '', 'display-metabox-tax-post_tag' => TRUE, 'noindex-tax-post_tag' => FALSE, 'social-title-tax-post_tag' => '%%term_title%% Archives', 'social-description-tax-post_tag' => '', 'social-image-url-tax-post_tag' => '', 'social-image-id-tax-post_tag' => 0, 'taxonomy-post_tag-ptparent' => 0, 'title-tax-post_format' => '%%term_title%% Archives %%page%% %%sep%% %%sitename%%', 'metadesc-tax-post_format' => '', 'display-metabox-tax-post_format' => TRUE, 'noindex-tax-post_format' => TRUE, 'social-title-tax-post_format' => '%%term_title%% Archives', 'social-description-tax-post_format' => '', 'social-image-url-tax-post_format' => '', 'social-image-id-tax-post_format' => 0, 'taxonomy-post_format-ptparent' => 0, 'person_logo_id' => 0, 'company_logo_id' => 0, 'company_logo_meta' => FALSE, 'person_logo_meta' => FALSE, 'open_graph_frontpage_image_id' => 0, 'noindex-subpages-wpseo' => FALSE], 1 => 'wpseo_titles']) /volume1/web/sevenwatt.com/http/main/wp-includes/plugin.php:205
0.0335 3745440 19. WPSEO_Option->get_option($options = ['forcerewritetitle' => FALSE, 'separator' => 'sc-dash', 'title-home-wpseo' => '%%sitename%% %%page%% %%sep%% %%sitedesc%%', 'title-author-wpseo' => '%%name%%, Author at %%sitename%% %%page%%', 'title-archive-wpseo' => '%%date%% %%page%% %%sep%% %%sitename%%', 'title-search-wpseo' => 'You searched for %%searchphrase%% %%page%% %%sep%% %%sitename%%', 'title-404-wpseo' => 'Page not found %%sep%% %%sitename%%', 'social-title-author-wpseo' => '%%name%%', 'social-title-archive-wpseo' => '%%date%%', 'social-description-author-wpseo' => '', 'social-description-archive-wpseo' => '', 'social-image-url-author-wpseo' => '', 'social-image-url-archive-wpseo' => '', 'social-image-id-author-wpseo' => 0, 'social-image-id-archive-wpseo' => 0, 'metadesc-home-wpseo' => '', 'metadesc-author-wpseo' => '', 'metadesc-archive-wpseo' => '', 'rssbefore' => '', 'rssafter' => 'The post %%POSTLINK%% appeared first on %%BLOGLINK%%.', 'noindex-author-wpseo' => FALSE, 'noindex-author-noposts-wpseo' => TRUE, 'noindex-archive-wpseo' => TRUE, 'disable-author' => FALSE, 'disable-date' => FALSE, 'disable-post_format' => FALSE, 'disable-attachment' => FALSE, 'breadcrumbs-404crumb' => 'Error 404: Page not found', 'breadcrumbs-display-blog-page' => TRUE, 'breadcrumbs-boldlast' => FALSE, 'breadcrumbs-archiveprefix' => 'Archives for', 'breadcrumbs-enable' => FALSE, 'breadcrumbs-home' => 'Home', 'breadcrumbs-prefix' => '', 'breadcrumbs-searchprefix' => 'You searched for', 'breadcrumbs-sep' => '»', 'website_name' => '', 'person_name' => '', 'person_logo' => '', 'alternate_website_name' => '', 'company_logo' => '', 'company_name' => '', 'company_alternate_name' => '', 'company_or_person' => 'company', 'company_or_person_user_id' => FALSE, 'stripcategorybase' => FALSE, 'open_graph_frontpage_title' => '%%sitename%%', 'open_graph_frontpage_desc' => '', 'open_graph_frontpage_image' => '', 'publishing_principles_id' => 0, 'ownership_funding_info_id' => 0, 'actionable_feedback_policy_id' => 0, 'corrections_policy_id' => 0, 'ethics_policy_id' => 0, 'diversity_policy_id' => 0, 'diversity_staffing_report_id' => 0, 'title-post' => '%%title%% %%page%% %%sep%% %%sitename%%', 'metadesc-post' => '', 'noindex-post' => FALSE, 'display-metabox-pt-post' => TRUE, 'post_types-post-maintax' => 0, 'schema-page-type-post' => 'WebPage', 'schema-article-type-post' => 'Article', 'social-title-post' => '%%title%%', 'social-description-post' => '', 'social-image-url-post' => '', 'social-image-id-post' => 0, 'title-page' => '%%title%% %%page%% %%sep%% %%sitename%%', 'metadesc-page' => '', 'noindex-page' => FALSE, 'display-metabox-pt-page' => TRUE, 'post_types-page-maintax' => 0, 'schema-page-type-page' => 'WebPage', 'schema-article-type-page' => 'None', 'social-title-page' => '%%title%%', 'social-description-page' => '', 'social-image-url-page' => '', 'social-image-id-page' => 0, 'title-attachment' => '%%title%% %%page%% %%sep%% %%sitename%%', 'metadesc-attachment' => '', 'noindex-attachment' => FALSE, 'display-metabox-pt-attachment' => TRUE, 'post_types-attachment-maintax' => 0, 'schema-page-type-attachment' => 'WebPage', 'schema-article-type-attachment' => 'None', 'title-tax-category' => '%%term_title%% Archives %%page%% %%sep%% %%sitename%%', 'metadesc-tax-category' => '', 'display-metabox-tax-category' => TRUE, 'noindex-tax-category' => FALSE, 'social-title-tax-category' => '%%term_title%% Archives', 'social-description-tax-category' => '', 'social-image-url-tax-category' => '', 'social-image-id-tax-category' => 0, 'taxonomy-category-ptparent' => 0, 'title-tax-post_tag' => '%%term_title%% Archives %%page%% %%sep%% %%sitename%%', 'metadesc-tax-post_tag' => '', 'display-metabox-tax-post_tag' => TRUE, 'noindex-tax-post_tag' => FALSE, 'social-title-tax-post_tag' => '%%term_title%% Archives', 'social-description-tax-post_tag' => '', 'social-image-url-tax-post_tag' => '', 'social-image-id-tax-post_tag' => 0, 'taxonomy-post_tag-ptparent' => 0, 'title-tax-post_format' => '%%term_title%% Archives %%page%% %%sep%% %%sitename%%', 'metadesc-tax-post_format' => '', 'display-metabox-tax-post_format' => TRUE, 'noindex-tax-post_format' => TRUE, 'social-title-tax-post_format' => '%%term_title%% Archives', 'social-description-tax-post_format' => '', 'social-image-url-tax-post_format' => '', 'social-image-id-tax-post_format' => 0, 'taxonomy-post_format-ptparent' => 0, 'person_logo_id' => 0, 'company_logo_id' => 0, 'company_logo_meta' => FALSE, 'person_logo_meta' => FALSE, 'open_graph_frontpage_image_id' => 0, 'noindex-subpages-wpseo' => FALSE]) /volume1/web/sevenwatt.com/http/main/wp-includes/class-wp-hook.php:326
0.0335 3745440 20. WPSEO_Option->array_filter_merge($options = ['forcerewritetitle' => FALSE, 'separator' => 'sc-dash', 'title-home-wpseo' => '%%sitename%% %%page%% %%sep%% %%sitedesc%%', 'title-author-wpseo' => '%%name%%, Author at %%sitename%% %%page%%', 'title-archive-wpseo' => '%%date%% %%page%% %%sep%% %%sitename%%', 'title-search-wpseo' => 'You searched for %%searchphrase%% %%page%% %%sep%% %%sitename%%', 'title-404-wpseo' => 'Page not found %%sep%% %%sitename%%', 'social-title-author-wpseo' => '%%name%%', 'social-title-archive-wpseo' => '%%date%%', 'social-description-author-wpseo' => '', 'social-description-archive-wpseo' => '', 'social-image-url-author-wpseo' => '', 'social-image-url-archive-wpseo' => '', 'social-image-id-author-wpseo' => 0, 'social-image-id-archive-wpseo' => 0, 'metadesc-home-wpseo' => '', 'metadesc-author-wpseo' => '', 'metadesc-archive-wpseo' => '', 'rssbefore' => '', 'rssafter' => 'The post %%POSTLINK%% appeared first on %%BLOGLINK%%.', 'noindex-author-wpseo' => FALSE, 'noindex-author-noposts-wpseo' => TRUE, 'noindex-archive-wpseo' => TRUE, 'disable-author' => FALSE, 'disable-date' => FALSE, 'disable-post_format' => FALSE, 'disable-attachment' => FALSE, 'breadcrumbs-404crumb' => 'Error 404: Page not found', 'breadcrumbs-display-blog-page' => TRUE, 'breadcrumbs-boldlast' => FALSE, 'breadcrumbs-archiveprefix' => 'Archives for', 'breadcrumbs-enable' => FALSE, 'breadcrumbs-home' => 'Home', 'breadcrumbs-prefix' => '', 'breadcrumbs-searchprefix' => 'You searched for', 'breadcrumbs-sep' => '»', 'website_name' => '', 'person_name' => '', 'person_logo' => '', 'alternate_website_name' => '', 'company_logo' => '', 'company_name' => '', 'company_alternate_name' => '', 'company_or_person' => 'company', 'company_or_person_user_id' => FALSE, 'stripcategorybase' => FALSE, 'open_graph_frontpage_title' => '%%sitename%%', 'open_graph_frontpage_desc' => '', 'open_graph_frontpage_image' => '', 'publishing_principles_id' => 0, 'ownership_funding_info_id' => 0, 'actionable_feedback_policy_id' => 0, 'corrections_policy_id' => 0, 'ethics_policy_id' => 0, 'diversity_policy_id' => 0, 'diversity_staffing_report_id' => 0, 'title-post' => '%%title%% %%page%% %%sep%% %%sitename%%', 'metadesc-post' => '', 'noindex-post' => FALSE, 'display-metabox-pt-post' => TRUE, 'post_types-post-maintax' => 0, 'schema-page-type-post' => 'WebPage', 'schema-article-type-post' => 'Article', 'social-title-post' => '%%title%%', 'social-description-post' => '', 'social-image-url-post' => '', 'social-image-id-post' => 0, 'title-page' => '%%title%% %%page%% %%sep%% %%sitename%%', 'metadesc-page' => '', 'noindex-page' => FALSE, 'display-metabox-pt-page' => TRUE, 'post_types-page-maintax' => 0, 'schema-page-type-page' => 'WebPage', 'schema-article-type-page' => 'None', 'social-title-page' => '%%title%%', 'social-description-page' => '', 'social-image-url-page' => '', 'social-image-id-page' => 0, 'title-attachment' => '%%title%% %%page%% %%sep%% %%sitename%%', 'metadesc-attachment' => '', 'noindex-attachment' => FALSE, 'display-metabox-pt-attachment' => TRUE, 'post_types-attachment-maintax' => 0, 'schema-page-type-attachment' => 'WebPage', 'schema-article-type-attachment' => 'None', 'title-tax-category' => '%%term_title%% Archives %%page%% %%sep%% %%sitename%%', 'metadesc-tax-category' => '', 'display-metabox-tax-category' => TRUE, 'noindex-tax-category' => FALSE, 'social-title-tax-category' => '%%term_title%% Archives', 'social-description-tax-category' => '', 'social-image-url-tax-category' => '', 'social-image-id-tax-category' => 0, 'taxonomy-category-ptparent' => 0, 'title-tax-post_tag' => '%%term_title%% Archives %%page%% %%sep%% %%sitename%%', 'metadesc-tax-post_tag' => '', 'display-metabox-tax-post_tag' => TRUE, 'noindex-tax-post_tag' => FALSE, 'social-title-tax-post_tag' => '%%term_title%% Archives', 'social-description-tax-post_tag' => '', 'social-image-url-tax-post_tag' => '', 'social-image-id-tax-post_tag' => 0, 'taxonomy-post_tag-ptparent' => 0, 'title-tax-post_format' => '%%term_title%% Archives %%page%% %%sep%% %%sitename%%', 'metadesc-tax-post_format' => '', 'display-metabox-tax-post_format' => TRUE, 'noindex-tax-post_format' => TRUE, 'social-title-tax-post_format' => '%%term_title%% Archives', 'social-description-tax-post_format' => '', 'social-image-url-tax-post_format' => '', 'social-image-id-tax-post_format' => 0, 'taxonomy-post_format-ptparent' => 0, 'person_logo_id' => 0, 'company_logo_id' => 0, 'company_logo_meta' => FALSE, 'person_logo_meta' => FALSE, 'open_graph_frontpage_image_id' => 0, 'noindex-subpages-wpseo' => FALSE]) /volume1/web/sevenwatt.com/http/main/wp-content/plugins/wordpress-seo/inc/options/class-wpseo-option.php:485
0.0335 3745440 21. WPSEO_Option->get_defaults() /volume1/web/sevenwatt.com/http/main/wp-content/plugins/wordpress-seo/inc/options/class-wpseo-option.php:765
0.0335 3745440 22. WPSEO_Option_Titles->translate_defaults() /volume1/web/sevenwatt.com/http/main/wp-content/plugins/wordpress-seo/inc/options/class-wpseo-option.php:443
0.0335 3745440 23. __($text = '%1$s, Author at %2$s', $domain = 'wordpress-seo') /volume1/web/sevenwatt.com/http/main/wp-content/plugins/wordpress-seo/inc/options/class-wpseo-option-titles.php:255
0.0335 3745440 24. translate($text = '%1$s, Author at %2$s', $domain = 'wordpress-seo') /volume1/web/sevenwatt.com/http/main/wp-includes/l10n.php:306
0.0335 3745440 25. get_translations_for_domain($domain = 'wordpress-seo') /volume1/web/sevenwatt.com/http/main/wp-includes/l10n.php:194
0.0335 3745440 26. _load_textdomain_just_in_time($domain = 'wordpress-seo') /volume1/web/sevenwatt.com/http/main/wp-includes/l10n.php:1408
0.0337 3746672 27. _doing_it_wrong($function_name = '_load_textdomain_just_in_time', $message = 'Translation loading for the wordpress-seo
domain was triggered too early. This is usually an indicator for some code in the plugin or theme running too early. Translations should be loaded at the init
action or later.', $version = '6.7.0') /volume1/web/sevenwatt.com/http/main/wp-includes/l10n.php:1378
0.0337 3748016 28. wp_trigger_error($function_name = '', $message = 'Function _load_textdomain_just_in_time was called incorrectly . Translation loading for the wordpress-seo
domain was triggered too early. This is usually an indicator for some code in the plugin or theme running too early. Translations should be loaded at the init
action or later. Please see Debugging in WordPress for more information. (This message was added in version 6.7.', $error_level = ???) /volume1/web/sevenwatt.com/http/main/wp-includes/functions.php:6054
0.0340 3749504 29. trigger_error($message = 'Function _load_textdomain_just_in_time was called incorrectly . Translation loading for the wordpress-seo
domain was triggered too early. This is usually an indicator for some code in the plugin or theme running too early. Translations should be loaded at the init
action or later. Please see Debugging in WordPress for more information. (This message was added in version 6.7.', $error_type = 1024) /volume1/web/sevenwatt.com/http/main/wp-includes/functions.php:6114
RFM69 - Energy Count 3000 / ELV Cost Control - SevenWatt
Skip to main content
Conrad Energy Count 3000 and ELV Cost Control are wireles 230V electricity consumption measuring plugs Thomas Schulz has cracked the RF protocol of these device back in 2011 on the JeeLabs forum . The signals are FSK encoded and use the 868Mhz band. Thomas was able to receive them with a RFM12B module. Together with a JeeLink V3, it has found popular use with the German home automation software FEHM .
In this post I describe how the RFM69 can take over a task that earlier had to be performed in software.
One of the complications of the protocol is that the preamble of a series of 0x55 is scramble (whitened), and therefore more difficult to recognize. However, after scrambling it is still identical for all packets.
raw data 25 8A F9 59 DA 02 7E 15 ED 67 13 F1 85 D3 AC D2 [payload] 13 E6 84 A8 3B
descramb 48 BB 55 55 55 55 55 55 55 55 55 55 55 55 55 7E [payload] 7E 55 55 55 55
-------------------------------------- -- --------- -- -----------
preamble HDLC payload HDLC postamble
The original Jeelib-based RFM12B programs detection of valid packets was clumsy.
It started matching the last 4 bytes of the preamble with the received signals
13 F1 85 D3 AC
The problem was that it is undetermined which is the first bit received from the preamble, as the receiver first has to detect a signal and then tune its gain and frequency. Some bits are lost. So Thomas Schulz had to not only check for the given series of bytes, but also for all 7 bit shifted variants. The code checks on:
13 F1 85 D3 | F8 C2 E9 D6 | FC 61 74 EB | 7E 30 BA 75 | 3F 18 5D 3A | 9F 8C 2E 9D | 4F C6 17 4E | 27 E3 0B A7
After detecting one of these pattern, the complete receive buffer gets bit-shifted the proper amount so that the buffer shows the last 5 preamble bytes as 13 F1 85 D3 AC
Sync words
Here comes the RFM69 to the rescue. Where the RFM12B can only program one user defined syncword-byte, the RFM69 can have 8. When programming those last five preamble bytes as sync-words, the task of detecting a proper packet and bit-aligning it is fully left to the RFM69.
The received signal now no longer contains the preamble, but starts at the HDLC control word 0x7E.
raw data D2 [payload] 13 E6 84 A8 3B
descrambled 7E [payload] 7E 55 55 55 55
-- --------- -- -----------
HDLC payload HDLC postamble
Effortless!
Descrambling
But before this will start working one has to realize that the preamble bits are also scrambled. In other words, the descrambler needs to be primed if one wants to start descrambling at the payload.
The actual AX5051 / AX5042 scrambling is this polynomial: 1+X12 +X17 .
Priming needs to be done for 17 bits at most, So the last three bytes of the preamble could be send through the descrambling algorithm and discarded before descrambling HDLC+payload. As the preamble is always constant, the priming value can also be determine one time, which I did.
The magic number is scramshift = 0xF185D3AC;
static void descramb(uint8_t* buff, uint16_t len) {
uint8_t ibit, obit;
uint8_t bit;
uint8_t inpbyte, outbyte;
uint32_t scramshift;
//scramshift = 0xFFFFFFFF;
scramshift = 0xF185D3AC; //descrambler primed at end of preanble
while (len--) {
inpbyte = *buff;
for (bit = 0; bit < 8; ++bit) {
// RFM69 receives MSBit first into bytes:
ibit = (inpbyte & 0x80) >> 7;
obit = ibit ^ (count1bits(scramshift & SCRAMPOLY) & 0x01);
scramshift = scramshift << 1 | ibit;
inpbyte <<= 1;
outbyte = outbyte << 1 | obit;
}
*buff++ = outbyte ^ 0xFF;
}
}
Code
The software is developed on a LPC824. It can be used on the complete LPC8xx family as it fits the tiny LPC810. Hardware that can be used is for example a Jeelabs Tinker Pico LPC824 board .
The software can be found in my github embapps repository
Post navigation