addshore
09/19/2025, 8:50 AMreturn to exit early in one condition from a lambda,
But of course Can't explicitly return from within a lambda
Is there a way to stop execution of a lambda part way through?addshore
09/23/2025, 4:08 PMfor i := 0; i < 3; i++:
leds[i] = gpio.Pin pins[i] --output=true --value=1
sleep --ms=1000
for i := 0; i < 3; i++:
channels[i] = generator.start leds[i] --duty-factor=1
sleep --ms=1000
sleep --ms=10000
Where we control an RGB LED.
First looping to setup the pins, with value 1 which in this case is LED OFF
We then look through to start the generators, and calling .start seems to cause a small flicker once for each color.
Is there a way to avoid this / a bug that can be fixed?addshore
09/24/2025, 10:06 AMnetwork := net.open
network.address
or sometihng similar.
But this has the side affect of actually opening the network, even if it were nt previously opened.
What is the recommended way to check if the device is connected via WiFi, without calling open?
I also tried network.name but this also requires you to get the network first?
Do I need to do something at a lower level? NetworkServiceClient ? etc?addshore
09/26/2025, 8:11 AMError: Firmware is too big to fit in designated partition (1844624 > 1835008) for example
Is there a command line tool / way that I can get the size of an envelope file? without having to try and flash it?
I thought perhaps jag toit tool firmware -e apps.envelope show | yq '.Containers | .[] as $item ireduce (0; . + $item.Size)', but that returns only 396868 (far below the limit)?alex (he/him)
10/16/2025, 6:48 PMc
#include "esp_pm.h"
// ... other includes and setup
void app_main(void) {
esp_pm_config_esp32_t config = {
.max_freq_mhz = 80, // or 160, depending on your needs
.min_freq_mhz = 10, // minimum frequency for the clock
.light_sleep_enable = true
};
esp_err_t result = esp_pm_configure(&config);
if (result == ESP_OK) {
// Configuration successful
} else {
// Handle error
}
}alex (he/him)
10/26/2025, 7:52 PMjag monitor. Any ideas?
import gpio
import pixel_strip show PixelStrip
PIXELS ::= 1
main:
pin := gpio.Pin 08
pixels := PixelStrip.uart PIXELS --pin=pin
r := ByteArray PIXELS
g := ByteArray PIXELS
b := ByteArray PIXELS
r.fill 0x44
g.fill 0x80
b.fill 0xff
pixels.output r g b
sleep --ms=1
https://cdn.discordapp.com/attachments/1432094642517704946/1432094642761109615/message.txt?ex=6901c7d1&is=69007651&hm=9bee49a60b551b46298f8298e2d562c69afc3af74da7665ee36c1ef66576a1f4&kaxori
10/28/2025, 4:41 PMezpeeeezeeee
11/03/2025, 11:32 AMError: failed to probe chip type: failed to probe chip type: exec: "esptool.py": cannot run executable found relative to current directory:crockedile
11/07/2025, 1:52 PMRobvanLopik
11/09/2025, 11:20 AMaddshore
12/10/2025, 4:36 PMjag toit tool firmware --envelope=.\ble.envelope flash -pCOM70
- esptool.exe -p COM70 -b 460800 read_flash 0 ALL ble_adv_500.bin
Is there an easy way to get and or reconstruct such as binary using the toit firmware commands that I am missing?Geoff
01/28/2026, 5:05 PMaddshore
01/29/2026, 4:56 PMaddshore
02/09/2026, 12:31 PMble hci uart init error!
E (295585) BLE_INIT: controller init failed
Guru Meditation Error: Core 0 panic'ed (Load access fault). Exception was unhandled.
Core 0 register dump:
MEPC : 0x4080ba84 RA : 0x4201cdba SP : 0x50002f90 GP : 0x40824824
TP : 0x50002fe0 T0 : 0x00000000 T1 : 0x4080bb6a T2 : 0x00000000
S0/FP : 0x4085ada4 S1 : 0x4082e000 A0 : 0x4085ada4 A1 : 0x00000054
A2 : 0xffffffa7 A3 : 0x00000001 A4 : 0x00000000 A5 : 0x00000000
A6 : 0x00000000 A7 : 0x00000000 S2 : 0x4082e000 S3 : 0x4082e000
S4 : 0x00000000 S5 : 0x00000000 S6 : 0x00000000 S7 : 0x00000000
S8 : 0x00000000 S9 : 0x00000000 S10 : 0x00000000 S11 : 0x00000000
T3 : 0x00000000 T4 : 0x00000000 T5 : 0x00000000 T6 : 0x00000000
MSTATUS : 0x00001881 MTVEC : 0x40800001 MCAUSE : 0x00000005 MTVAL : 0x000000a8
MHARTID : 0x00000000Karthik
02/10/2026, 7:12 AMaddshore
02/17/2026, 1:45 PM[toit] INFO: starting <v2.0.0-alpha.189> and I think that is from https://github.com/toitlang/toit/blob/0a240593d64c18508fce04a86dae235e191dfef5/src/rtc_memory_esp32.cc#L135
And I think that just comes from -DVM_GIT_VERSION=\"\\\" and
Is that the best pattern probably?milkmansson
02/19/2026, 8:38 AMkaxori
02/22/2026, 5:29 PMaddshore
02/24/2026, 3:51 PMimport gpio
import uart
UART_RX_GPIO ::= 20
UART_TX_GPIO ::= 19
main:
port := uart.Port
--rx=gpio.Pin UART_RX_GPIO
--tx=gpio.Pin UART_TX_GPIO
--baud_rate=115200
Getting
Potential deadlock detected:
Process: 2
Program: a42ef4b4-b892-6588-9883-ce3d1e1e3b30
BCI: 0x5c6
Primitive: 10:1
fatal: Potential dead-lock
abort() was called at PC 0x4202f7fd on core 0
Core 0 register dump:
MEPC : 0x40806b76 RA : 0x4081546e SP : 0x40831da0 GP : 0x40824824
TP : 0x40831fe0 T0 : 0x37363534 T1 : 0x7271706f T2 : 0x33323130
S0/FP : 0x40831ddc S1 : 0x40831ddc A0 : 0x40831ddc A1 : 0x40831dbe
A2 : 0x00000000 A3 : 0x40831e09 A4 : 0x00000001 A5 : 0x4082d000
A6 : 0x00000000 A7 : 0x76757473 S2 : 0x40831dc0 S3 : 0x00000001
S4 : 0x004c4b40 S5 : 0x00000005 S6 : 0x028e885f S7 : 0x408332c0
S8 : 0x00000000 S9 : 0x00000000 S10 : 0x00000000 S11 : 0x00000000
T3 : 0x6e6d6c6b T4 : 0x6a696867 T5 : 0x66656463 T6 : 0x62613938
MSTATUS : 0x00001881 MTVEC : 0x40800001 MCAUSE : 0x00000002 MTVAL : 0x00000000
MHARTID : 0x00000000
not sure what the Primitive is, and seemignly i can only reproduce it on this hardeware setup.
Got any pointers?Geoff
04/09/2026, 1:11 AMGeoff
04/13/2026, 7:14 PMBeauPitt
04/27/2026, 9:03 AMGeoff
04/30/2026, 4:26 PMGeoff
05/05/2026, 11:11 PM[network] INFO: closing {connection: wifi-0}
[network] INFO: closed {connection: wifi-0}
[artemis.scheduler] INFO: job stopped {job: synchronize}
NETWORK: Listener exception: 'PREVIOUS_READER_NOT_FINISHED' for msg:'null'
Is this due to Artemis contention or something else? Thank you.
Happens here:```
msg := null
error := catch:
msg = ws.receive // wait for web socket traffic
if error:
catch: ws.close // Force cleanup of the potentially "corrupted" object
logger.error "NETWORK: Listener exception: '$error' for msg:'$msg'"
```Geoff
05/10/2026, 6:16 PMGeoff
05/11/2026, 4:01 PMPS D:\projects> jag scan --list --output=yaml
devices:
- devicebase: {}
- devicebase: {}
PS D:\projects> jag scan --list --output=short <--default works
original-college
rough-location
PS D:\projects> jag scan --list --output=json
{"Devices":[{},{}]}
PS D:\projects\Liquifi\flowi>z3ugma
07/05/2026, 2:22 AMMichaelK
08/10/2026, 11:22 AMmicrcx@micrcx-desktop:~/toit/ruuvi_ble$ jag run -d basic ruuvi_ble.toit
Scanning for device with name: 'basic'
Running 'ruuvi_ble.toit' on 'basic' ...
ruuvi_ble.toit:31:35: warning: Deprecated 'AdvertisementData.manufacturer-data'. Use 'Advertisement.manufacturer-specific' instead
md/ByteArray := device.data.manufacturer-data
^~~~~~~~~~~~~~~~~
Success: Sent 78KB code to 'basic' in 2.92s
manufacturer-data was replaced with manufacturer-specific, but now a compilation error occurs:
micrcx@micrcx-desktop:~/toit/ruuvi_ble$ jag run -d basic ruuvi_ble.toit
Scanning for device with name: 'basic'
Running 'ruuvi_ble.toit' on 'basic' ...
ruuvi_ble.toit:31:35: error: Argument mismatch for 'AdvertisementData.manufacturer-specific'
Block argument not provided
md/ByteArray := device.data.manufacturer-specific
^~~~~~~~~~~~~~~~~~~~~
Compilation failed
I've use Jaguar v1.69.0 with Toit SDK v2.0.0-alpha.196.addshore
08/10/2026, 11:51 AMRikke
08/18/2026, 7:03 AMISRG Root YR because our current certificate is running out in 2030. No rush 🙂