Installation issues - Ecowitt Local HTTP API Driver

78 views
Skip to first unread message

NotThePainter

unread,
Jan 14, 2026, 6:42:25 PM (yesterday) Jan 14
to weewx-user
I'm trying to install the cowitt Local HTTP API Driver from https://github.com/weewx-contrib/weewx-ecowitt_local_http?tab=readme-ov-file

I want the Local HTTP API Driver, not the old cloud / push driver.

% weectl extension install https://github.com/weewx-contrib/weewx-ecowitt_local_http/archive/refs/heads/main.zip --config ~/Documents/WeeWX/weewx-data/weewx.conf

Reconfiguring this way doesn't work:

weectl station reconfigure --driver=user.ecowitt_local_http --config ~/Documents/WeeWX/weewx-data/weewx.conf

I get:

ModuleNotFoundError: No module named 'user.ecowitt_local_http'

If I reconfigure this way:

% weectl station reconfigure --driver=user.ecowitt_http --config ~/Documents/WeeWX/weewx-data/weewx.conf

it works but when I run I get this error:

 %  weewxd --config ~/Documents/WeeWX/weewx-data/weewx.conf

AttributeError: 'EcowittHttpDriver' object has no attribute 'api_key'

which means I'm using the old cloud/push driver.

How can I reconfigure it to use the new Local HTTP API driver?

Vince Skahan

unread,
Jan 14, 2026, 8:00:57 PM (yesterday) Jan 14
to weewx-user
Module not found tends to be a typo. What does ‘weectl extension list’ say ?

Vince Skahan

unread,
Jan 14, 2026, 9:49:26 PM (23 hours ago) Jan 14
to weewx-user
And run 'weectl station reconfigure' and look carefully at the selections there.  You don't see one called user.ecowitt_local_http in the list.

Rainer Lang

unread,
3:24 AM (18 hours ago) 3:24 AM
to weewx...@googlegroups.com

the "no attribute 'api_key' " suggests that you have an api_key entry in your weewx.conf but no key entered


I suggest you get yourself an API and an APP key in your ecowitt.net account and enter it into the [EcowittHttp] stanza on your weewx.conf including the MAC address of the console
or
in the 
[EcowittHttp] stanza in weewx.conf comment the line with "api_key" out by placing a # in front

[EcowittHttp] 

......

# provide Ecowitt API and APP key to have permission for the ecowitt.net backfill download
       # api_key = xxxxxxxxxxxxxxx
       # app_key = xxxxxxxxxxxxxxx
    # MAC address to identify the console
       # mac = xx:xx:xx:xx:xx:xx

......

--
You received this message because you are subscribed to the Google Groups "weewx-user" group.
To unsubscribe from this group and stop receiving emails from it, send an email to weewx-user+...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/weewx-user/59e2b382-4e85-4074-b96f-b749d74a1c7fn%40googlegroups.com.

NotThePainter

unread,
9:08 AM (12 hours ago) 9:08 AM
to weewx-user
% weectl extension list --config ~/Documents/WeeWX/weewx-data/weewx.conf

Using configuration file /Users/pcezanne/Documents/WeeWX/weewx-data/weewx.conf
Extension Name    Version   Description
Ecowitt_HTTP      0.1.0a28  WeeWX driver for devices supporting the Ecowitt local HTTP API.

## lets try the Extension Name listed in the GitHub ReadMe
## this reconfigure succeeds but weewxd fail with the api-key message

% weectl station reconfigure --driver=user.ecowitt_http --config ~/Documents/WeeWX/weewx-data/weewx.conf

## lets try the Extension Name listed by weectl
## this fails with ModuleNotFoundError: No module named 'user.Ecowitt_HTTP'
% weectl station reconfigure --driver=user.Ecowitt_HTTP --config ~/Documents/WeeWX/weewx-data/weewx.conf

NotThePainter

unread,
9:10 AM (12 hours ago) 9:10 AM
to weewx-user
On Thursday, 15 January 2026 at 03:24:19 UTC-5 Rainer Lang wrote:

the "no attribute 'api_key' " suggests that you have an api_key entry in your weewx.conf but no key entered


I don't! I was so hopeful...

[EcowittHttp]
    # This section is for the Ecowitt Local HTTP API driver.
   
    # The device IP address:
    ip_address = 10.0.4.37
   
    # How often to poll the API, default is every 20 seconds:
    poll_interval = 20
   
    # The driver to use:
    driver = user.ecowitt_http
   
    # Is a WN32P used for indoor temperature, humidity and pressure
    wn32_indoor = False
   
    # Is a WN32 used for outdoor temperature and humidity
    wn32_outdoor = False
    [[field_map_extensions]]
        rainRate = rain.0x0E.val


 

I suggest you get yourself an API and an APP key in your ecowitt.net account and enter it into the [EcowittHttp] stanza on your weewx.conf including the MAC address of the console

This is what I absolutely do not want to do. I do not want the old cloud/push driver. I want the newer Local HTTP driver.

Rainer Lang

unread,
9:27 AM (12 hours ago) 9:27 AM
to weewx...@googlegroups.com

I understand what you don't want, but you obviously don't understand what that API/APP keys are about.
It has nothing to do with what you call "your old cloud/push driver", probably the Interceptor driver.


Anyhow, the 2nd option I mentioned was to have no keys/commented them out.

Maybe you tell us what your station model is 😉.

--
You received this message because you are subscribed to the Google Groups "weewx-user" group.
To unsubscribe from this group and stop receiving emails from it, send an email to weewx-user+...@googlegroups.com.

NotThePainter

unread,
12:22 PM (9 hours ago) 12:22 PM
to weewx-user
On Thursday, 15 January 2026 at 09:27:52 UTC-5 Rainer Lang wrote:

I understand what you don't want, but you obviously don't understand what that API/APP keys are about.
It has nothing to do with what you call "your old cloud/push driver", probably the Interceptor driver.


Anyhow, the 2nd option I mentioned was to have no keys/commented them out.

Maybe you tell us what your station model is 😉.



Sorry about that, I'm runnig the GW3000 and the get_livedata_info endpoint works just fine.

As far as I understand it, the API key is to talk to the Ecowitt server. I don't want that at all. My data should stay on my network, I don't need somebody elses server. I could be wrong, I'm trying to figure this out and it is complicated until it isn't. :- )

Gary's approach seems to be a modern, robust archicture and I'd like to use that. The code at https://github.com/weewx-contrib/weewx-ecowitt_local_http?tab=readme-ov-file seems to be a fork of that. I just can't get it to run.

And I don't have any keys mentioned at all in my conf file, that's what's weird.
 

Vince Skahan

unread,
1:08 PM (8 hours ago) 1:08 PM
to weewx-user
There are multiple things going on here.
  • you have your weewx.conf in an odd place, so every time your run a weewx command you need to specify --config=/path/to/weewx.conf or equivalent
  • there are multiple ecowitt drivers each with different configurations
    • (1) the original gw1000 driver is Gary's original one:
    • (2) Gary's later development driver using local http: 
    • (3) Werner has an additional driver with a very very manual procedure to install and configure:
      • is listed in the wiki as "ecowitt_http - Collect data from all Ecowitt gateways/displays which support the http api. Can also import data from SDCard (GW3000, WS6210) or from the Ecowitt Cloud"
      • is hosted at https://github.com/WernerKr/Ecowitt-or-DAVIS-stations-and-Season-skin/tree/main
      • DOES need API keys according to its readme file
      • unfortunately also calls itself [EcowittHttp] in weewx.conf stomping on the original one's name yet has much more elaborate configuration needs
      • does not use the extension installer, so I don't know if 'weectl extension list' or 'weewx station reconfigure' will find i

For a gw3000 gateway:
  • you can use the original weewx-gw1000 driver (1) above from Gary and run without backfill
  • or you could use the weewx-ecowitt_local_http driver (2) above originally from Gary, but I don't know if backfill works or not in that one
  • I can't speak to Werner's driver (3) above at all. Personally I find it so complicated and manual in nature I haven't even tried it.  I agree with you on the API key thing FWIW.  The fact that it doesn't use the extension installer and that it stomps on another driver's name makes it a no-go for me personally.  For me that way lies chaos and confusion.
When you say you tried the weewx-ecowitt_local_http and couldn't get it to run, you need to provide more data on what you did and what you saw.  My guess is you have junk in your setup from going back and forth.

If you can do so, I'd basically start over on the station setup:
  • rename your weewx-data directory to move it aside
  • run 'weectl station create --noprompt' to create a new one using the Simulator
  • add the driver you want via 'weectl extension install' 
  • run 'weectl station reconfigure' to pick the added driver
  • answer the questions it'll ask you re: the ip address of your gateway etc.
  • test your setup re: the driver's readme file instructions
Lastly remember your odd location of weewx.conf means you will always need to specify where to find the config file in any weectl or weewxd commands.  If you don't do that they'll look in the normal locations (which presumably are not present) and you'll get file-not-found or module-not-found etc. type errors.

NotThePainter

unread,
3:27 PM (6 hours ago) 3:27 PM
to weewx-user
On Thursday, 15 January 2026 at 13:08:59 UTC-5 Vince Skahan wrote:

If you can do so, I'd basically start over on the station setup:
  • rename your weewx-data directory to move it aside
  • run 'weectl station create --noprompt' to create a new one using the Simulator
  • add the driver you want via 'weectl extension install' 
  • run 'weectl station reconfigure' to pick the added driver
  • answer the questions it'll ask you re: the ip address of your gateway etc.
  • test your setup re: the driver's readme file instructions
Lastly remember your odd location of weewx.conf means you will always need to specify where to find the config file in any weectl or weewxd commands.  If you don't do that they'll look in the normal locations (which presumably are not present) and you'll get file-not-found or module-not-found etc. type errors.

I went with option #2, Gary's later development hosted at https://github.com/weewx-contrib/weewx-ecowitt_local_http

I also went with your very astute advice, and nuked everything, and paid very special attention to making sure my strange paths were used.

% rm -rf ~/weewx-data ~/Documents/WeeWX/weewx-data
% mkdir -p ~/Documents/WeeWX/weewx-data
% cd ~/Documents/WeeWX
% weectl station create ~/Documents/WeeWX/weewx-data

so far, so good!

% weectl extension install https://github.com/weewx-contrib/weewx-ecowitt_local_http/archive/refs/heads/main.zip --config ~/Documents/WeeWX/weewx-data/weewx.conf 

The install ran successfully. This was the only configure line to run without error:

weectl station reconfigure --driver=user.ecowitt_http --config ~/Documents/WeeWX/weewx-data/weewx.conf

Lets list it out.

 % weectl extension list --config ~/Documents/WeeWX/weewx-data/weewx.conf

Using configuration file /Users/pcezanne/Documents/WeeWX/weewx-data/weewx.conf
Extension Name    Version   Description
Ecowitt_HTTP      0.1.0a28  WeeWX driver for devices supporting the Ecowitt local HTTP API.

The driver test also worked, giving me live data:

% python3 ~/Documents/WeeWX/weewx-data/bin/user/ecowitt_http.py --test-driver --ip-address=10.0.4.37 --config ~/Documents/WeeWX/weewx-data/weewx.conf

2026-01-15 15:22:23 EST (1768508543): dateTime: 1768508543, dewpoint: 0.0, feelslike: 0.8888888888888896, inHumidity: 74, inTemp: 2.000000000000001, outHumidity: 94, outTemp: 0.8888888888888896, pressure: 973.2479568438692, rainRate: 0.0, relbarometer: 973.2479568438692, t_rainday: 4.064, t_rainevent: 7.365999999999999, t_rainmonth: 17.018, t_rainweek: 9.398, t_rainyear: 17.018, usUnits: 17, vpd: 0.406366579057983, wh26_batt: 0, wh26_sig: 4

I was feeling pretty good at this point, let's run it! Sadness, it doesn't run, still wanting that api_key which shouldn't be in play.

% weewxd --config ~/Documents/WeeWX/weewx-data/weewx.conf
...
AttributeError: 'EcowittHttpDriver' object has no attribute 'api_key'

It was a great suggestion, I did find errors in my unusual paths which surely would have vexed me down the road, but still joy here.

 

Vince Skahan

unread,
4:14 PM (5 hours ago) 4:14 PM
to weewx-user
I looked at the code for bin/user/ecowitt_http.py and it definitely wants to see an api_key in your weewx.conf file for its catchup/backfill code.  No way around it that I can see if you want to use that driver.  Unfortunately it's not documented in the legacy instructions and Gary's wiki was lost to the sands of time when he went dark and deleted all his stuff on github in early June.

If you can live without backfill just use the gw1000 driver.

NotThePainter

unread,
4:49 PM (4 hours ago) 4:49 PM
to weewx-user
On Thursday, 15 January 2026 at 16:14:39 UTC-5 Vince Skahan wrote:
I looked at the code for bin/user/ecowitt_http.py and it definitely wants to see an api_key in your weewx.conf file for its catchup/backfill code.  No way around it that I can see if you want to use that driver.  Unfortunately it's not documented in the legacy instructions and Gary's wiki was lost to the sands of time when he went dark and deleted all his stuff on github in early June.

I want backfill. I just got my API Key. Off to install it.

Thanks for your help Vince and everybody else!
 

NotThePainter

unread,
5:53 PM (3 hours ago) 5:53 PM
to weewx-user
I want backfill. I just got my API Key. Off to install it.


So I added this to my conf file and I still get the "AttributeError: 'EcowittHttpDriver' object has no attribute 'api_key'" error.

[EcowittHttp]
    # This section is for the Ecowitt Local HTTP API driver.
    api_key = 3f405ece-90e9-4697-********

   
    # The device IP address:
    ip_address = 10.0.4.37
 
   etc...

 

Vince Skahan

unread,
8:27 PM (1 hour ago) 8:27 PM
to weewx-user
Sorry - can't help you.  That thing is too absurdly complicated and undocumented for me.

Again - I'd take the 90% win and just use the gw1000 driver to get 'anything' working unless somebody has battled this variant into submission successfully.

Reply all
Reply to author
Forward
0 new messages