Search found 988 matches

by basicchip
Mon Nov 04, 2019 12:25 am
Forum: Projects
Topic: DIY WiFi Programmable Thermostat
Replies: 41
Views: 26295

Re: DIY WiFi Programmable Thermostat

Doing some power testing, yes I have a short attention span. I tried running the ESP8266 from the incoming 24VAC switcher, but that way it draws about 20 mA from 24 VAC, which might trigger the heat system to come on. So back to the battery for that. As the WiFi takes up to 250 mA, it determines the...
by basicchip
Sun Nov 03, 2019 5:32 pm
Forum: Projects
Topic: DIY WiFi Programmable Thermostat
Replies: 41
Views: 26295

Re: DIY WiFi Programmable Thermostat

Working through all the functions smoke test - 24V AC supply OK temp sense OK LCD OK backlight control OK charge enable OK battery sense OK -- after I remembered the 24V AC needed to be there for that to work heat request OK Now on to writing code for switch debounce and function. Then check out WiF...
by basicchip
Fri Nov 01, 2019 3:54 am
Forum: Kitchen sink
Topic: WAIT in a MultiTasking program
Replies: 3
Views: 1149

Re: WAIT in a MultiTasking program

Also in the multitask setup, the task switch can occur in the middle of the WAIT or WAITMICRO. So unless you disable the task switch interrupt, all you can guarantee is that the WAIT will be at least the time requested.
by basicchip
Thu Oct 31, 2019 9:26 pm
Forum: Projects
Topic: DIY WiFi Programmable Thermostat
Replies: 41
Views: 26295

Re: DIY WiFi Programmable Thermostat

Making progress on firmware including LM71 and Newhaven character LCD display which uses an ST7066 Here is that test code ' Drive NewHaven LCD ' ' 4-bit Initialization -- interface uses GPIO 15-8 (except 12 #define E IO(13) #define R_W IO(14) #define PortD_I IO(15) #define DATA_ALLIGNED 1 ' set to 1...
by basicchip
Wed Oct 30, 2019 10:39 pm
Forum: Projects
Topic: DIY WiFi Programmable Thermostat
Replies: 41
Views: 26295

Re: DIY WiFi Programmable Thermostat

It's winter so time to finish this project. Got the boards back, picture on the blog. https://www.coridium.us/coridium/blog/time-for-software After finding a mis-labeled pin the temperature measurement is working. I chose a digital temp sensor the LM71. Happy that I did as it has 14 bit accuracy vs ...
by basicchip
Mon Oct 28, 2019 4:17 pm
Forum: Future products
Topic: wireless LCD
Replies: 4
Views: 8459

Re: wireless LCD

This was a prototype we built for a customer that linked Xbee wireless module to a display. We built a few, but it never became a product.

It could be re-designed for Bluetooth or WiFi.
by basicchip
Tue Oct 22, 2019 8:09 pm
Forum: Software issues
Topic: Multi-tasking
Replies: 8
Views: 2105

Re: Multi-tasking

Multitasking like interrupts have some limitations. You should not do WAIT or WAITMICRO as the task switch might occur in the middle of the wait. But you can read the TIMER and look for elapsed time up to 35 seconds. It is beat to exit the task rather than waiting in a loop. sub task3 dim startTime ...
by basicchip
Tue Oct 22, 2019 4:42 pm
Forum: Kitchen sink
Topic: WAIT in a MultiTasking program
Replies: 3
Views: 1149

Re: WAIT in a MultiTasking program

The TIMER function is driven by the SysTick timer for most of our versions of BASIC. While SysTick is a 24 bit counter, we use it and a SysTick interrupt that occurs every 65 msec. At that interrupt the upper bits of TIMER are incremented. So TIMER is a 32 bit twos compliment number derived from Sys...
by basicchip
Sun Oct 20, 2019 3:49 pm
Forum: Software issues
Topic: ArmBASIC - contact debouncing
Replies: 7
Views: 1751

Re: ArmBASIC - contact debouncing

And for reference I did some fast clicking on the small button. Seems like about 100 msec is about average for a quick click and a double click occurs in about 300 msec (100 low 100 high 100 low) So for that little push button a debouce time of 20-50 msec would see a double click. Bigger buttons lon...
by basicchip
Sat Oct 19, 2019 11:57 pm
Forum: Software issues
Topic: ARMstamp 11U37 Systick control
Replies: 1
Views: 523

Re: ARMstamp 11U37 Systick control

The multitask.bas example uses TIMER1 to switch tasks not SYSTICK. You can either disable the TIMER1 interrupt VICIntEnClear0 = (1<<TIMER1_IRQn) or disable the TIMER1 T1_TCR = 0 ' TIMER1 disable You should do this at the start of the task in question to avoid a premature interrupt. Just reenable the...