dgiese / dustcloud-documentation Goto Github PK
View Code? Open in Web Editor NEWXiaomi Smart Home Device Reverse Engineering and Hacking - Documentation Repo
Xiaomi Smart Home Device Reverse Engineering and Hacking - Documentation Repo
Hi,
Do you think restore
will factory reset the gateway?
Hi,
After few restarts directly from power my Gateway ZHWG11LM not boot I receive this error:
NAND read: device 0 offset 0x300000, size 0x700000
7340032 bytes read: OK
NAND read: device 0 offset 0xa00000, size 0x100000
1048576 bytes read: OK
Kernel image @ 0x80800000 [ 0x000000 - 0x617290 ]
Flattened Device Tree blob at 83000000
Booting using the fdt blob at 0x83000000
Using Device Tree in place at 83000000, end 8300c0e1
Modify /soc/aips-bus@02000000/tsc@02040000:status disabled
Modify /soc/aips-bus@02000000/can@02090000:status disabled
Modify /soc/aips-bus@02000000/can@02094000:status disabled
Modify /soc/aips-bus@02100000/lcdif@021c8000:status disabled
Modify /soc/aips-bus@02100000/pxp@021cc000:status disabled
Modify /soc/aips-bus@02100000/csi@021c4000:status disabled
Modify /soc/aips-bus@02000000/ethernet@020b4000:status disabled
Modify /soc/aips-bus@02100000/usb@02184200:status disabled
Modify /soc/aips-bus@02000000/spba-bus@02000000/sai@0202c000:status disabled
Modify /soc/aips-bus@02000000/spba-bus@02000000/sai@02030000:status disabled
Modify /soc/aips-bus@02100000/serial@021f4000:status disabled
Modify /soc/aips-bus@02100000/serial@021fc000:status disabled
Modify /soc/aips-bus@02000000/spba-bus@02000000/serial@02018000:status disabled
Modify /soc/aips-bus@02000000/pwm@020f0000:status disabled
Modify /soc/aips-bus@02000000/pwm@020f4000:status disabled
Modify /soc/aips-bus@02000000/pwm@020f8000:status disabled
Modify /soc/aips-bus@02000000/pwm@020fc000:status disabled
Modify /soc/aips-bus@02000000/spba-bus@02000000/ecspi@02010000:status disabled
Modify /soc/aips-bus@02000000/spba-bus@02000000/ecspi@02014000:status disabled
Modify /soc/aips-bus@02100000/i2c@021a8000:status disabled
Modify /soc/aips-bus@02100000/i2c@021f8000:status disabled
Modify /soc/aips-bus@02000000/gpt@020e8000:status disabled
Modify /soc/aips-bus@02000000/epit@020d4000:status disabled
ft_system_setup for mx6
No PMIC found!
Starting kernel …
[ 0.000000] Booting Linux on physical CPU 0x0
[ 0.000000] Linux version 4.1.15+gb63f3f5 (chenlong@gitlab) (gcc version 5.3.0 (GCC) ) #37 SMP PREEMPT Tue Jun 19 15:28:38 CST 2018
[ 0.000000] CPU: ARMv7 Processor [410fc075] revision 5 (ARMv7), cr=10c53c7d
[ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
[ 0.000000] Machine model: Freescale i.MX6 ULL 14x14 EVK Board
[ 0.000000] Reserved memory: failed to allocate memory for node ‘linux,cma’
[ 0.000000] cma: Reserved 96 MiB at 0x8a000000
[ 0.000000] Memory policy: Data cache writealloc
[ 0.000000] PERCPU: Embedded 12 pages/cpu @89da3000 s16908 r8192 d24052 u49152
[ 0.000000] Built 1 zonelists in Zone order, mobility grouping on. Total pages: 65024
[ 0.000000] Kernel command line: console=ttymxc0,115200 ubi.mtd=3 root=ubi0:rootfs rootfstype=ubifs cma=96M mtdparts=gpmi-nand:3m(boot),7m(kernel),1m(dtb),-(rootfs)
[ 0.000000] PID hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.000000] Dentry cache hash table entries: 32768 (order: 5, 131072 bytes)
[ 0.000000] Inode-cache hash table entries: 16384 (order: 4, 65536 bytes)
[ 0.000000] Memory: 148920K/262144K available (8035K kernel code, 423K rwdata, 2812K rodata, 540K init, 426K bss, 14920K reserved, 98304K cma-reserved, 0K highmem)
[ 0.000000] Virtual kernel memory layout:
[ 0.000000] vector : 0xffff0000 - 0xffff1000 ( 4 kB)
[ 0.000000] fixmap : 0xffc00000 - 0xfff00000 (3072 kB)
[ 0.000000] vmalloc : 0x90800000 - 0xff000000 (1768 MB)
[ 0.000000] lowmem : 0x80000000 - 0x90000000 ( 256 MB)
[ 0.000000] pkmap : 0x7fe00000 - 0x80000000 ( 2 MB)
[ 0.000000] modules : 0x7f000000 - 0x7fe00000 ( 14 MB)
[ 0.000000] .text : 0x80008000 - 0x80aa01f8 (10849 kB)
[ 0.000000] .init : 0x80aa1000 - 0x80b28000 ( 540 kB)
[ 0.000000] .data : 0x80b28000 - 0x80b91fa0 ( 424 kB)
[ 0.000000] .bss : 0x80b94000 - 0x80bfeb5c ( 427 kB)
[ 0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[ 0.000000] Preemptible hierarchical RCU implementation.
[ 0.000000] Additional per-CPU info printed with stalls.
[ 0.000000] RCU restricting CPUs from NR_CPUS=4 to nr_cpu_ids=1.
[ 0.000000] RCU: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=1
[ 0.000000] NR_IRQS:16 nr_irqs:16 16
[ 0.000000] mxc_clocksource_init 24000000
[ 0.000000] Switching to timer-based delay loop, resolution 41ns
[ 0.000016] sched_clock: 32 bits at 24MHz, resolution 41ns, wraps every 89478484971ns
[ 0.000056] clocksource mxc_timer1: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 79635851949 ns
[ 0.002576] Console: colour dummy device 80x30
[ 0.002616] Calibrating delay loop (skipped), value calculated using timer frequency… 48.00 BogoMIPS (lpj=240000)
[ 0.002651] pid_max: default: 32768 minimum: 301
[ 0.002874] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.002904] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.004265] CPU: Testing write buffer coherency: ok
[ 0.004756] /cpus/cpu@0 missing clock-frequency property
[ 0.004799] CPU0: thread -1, cpu 0, socket 0, mpidr 80000000
[ 0.004905] Setting up static identity map for 0x80008280 - 0x800082d8
[ 0.041169] Brought up 1 CPUs
[ 0.041209] SMP: Total of 1 processors activated (48.00 BogoMIPS).
[ 0.041228] CPU: All CPU(s) started in SVC mode.
[ 0.042327] devtmpfs: initialized
[ 0.063971] VFP support v0.3: implementor 41 architecture 2 part 30 variant 7 rev 5
[ 0.064862] clocksource jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[ 0.072754] pinctrl core: initialized pinctrl subsystem
[ 0.075452] NET: Registered protocol family 16
[ 0.093567] DMA: preallocated 256 KiB pool for atomic coherent allocations
[ 0.120887] cpuidle: using governor ladder
[ 0.150951] cpuidle: using governor menu
[ 0.193715] hw-breakpoint: found 5 (+1 reserved) breakpoint and 4 watchpoint registers.
[ 0.193752] hw-breakpoint: maximum watchpoint size is 8 bytes.
[ 0.196952] imx6ul-pinctrl 20e0000.iomuxc: Invalid fsl,pins property in node /soc/aips-bus@02000000/iomuxc@020e0000/imx6ul-evk/hoggrp-1
[ 0.197656] imx6ul-pinctrl 20e0000.iomuxc: initialized IMX pinctrl driver
[ 0.198341] imx6ul-pinctrl 2290000.iomuxc-snvs: initialized IMX pinctrl driver
[ 0.258317] mxs-dma 1804000.dma-apbh: initialized
[ 0.264987] SCSI subsystem initialized
[ 0.266435] usbcore: registered new interface driver usbfs
[ 0.266640] usbcore: registered new interface driver hub
[ 0.266863] usbcore: registered new device driver usb
[ 0.269399] i2c i2c-0: IMX I2C adapter registered
[ 0.269446] i2c i2c-0: can’t use DMA
[ 0.270994] i2c i2c-1: IMX I2C adapter registered
[ 0.271034] i2c i2c-1: can’t use DMA
[ 0.271337] Linux video capture interface: v2.00
[ 0.271572] pps_core: LinuxPPS API ver. 1 registered
[ 0.271769] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti [email protected]
[ 0.271878] PTP clock support registered
[ 0.274568] MIPI CSI2 driver module loaded
[ 0.275265] Advanced Linux Sound Architecture Driver Initialized.
[ 0.277417] Bluetooth: Core ver 2.20
[ 0.277545] NET: Registered protocol family 31
[ 0.277569] Bluetooth: HCI device and connection manager initialized
[ 0.277609] Bluetooth: HCI socket layer initialized
[ 0.277644] Bluetooth: L2CAP socket layer initialized
[ 0.277728] Bluetooth: SCO socket layer initialized
[ 0.279868] Switched to clocksource mxc_timer1
[ 0.306640] NET: Registered protocol family 2
[ 0.308274] TCP established hash table entries: 2048 (order: 1, 8192 bytes)
[ 0.308377] TCP bind hash table entries: 2048 (order: 2, 16384 bytes)
[ 0.308471] TCP: Hash tables configured (established 2048 bind 2048)
[ 0.308613] UDP hash table entries: 256 (order: 1, 8192 bytes)
[ 0.308679] UDP-Lite hash table entries: 256 (order: 1, 8192 bytes)
[ 0.309103] NET: Registered protocol family 1
[ 0.312505] imx rpmsg driver is registered.
[ 0.315204] Bus freq driver module loaded
[ 0.317538] futex hash table entries: 256 (order: 2, 16384 bytes)
[ 0.335656] VFS: Disk quotas dquot_6.6.0
[ 0.336117] VFS: Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
[ 0.340410] jffs2: version 2.2. (NAND) © 2001-2006 Red Hat, Inc.
[ 0.342192] fuse init (API version 7.23)
[ 0.353394] io scheduler noop registered
[ 0.353443] io scheduler deadline registered
[ 0.353980] io scheduler cfq registered (default)
[ 0.354999] imx-weim 21b8000.weim: Driver registered.
[ 0.359519] lumi_r supply power not found, using dummy regulator
[ 0.361706] lumi_b supply power not found, using dummy regulator
[ 0.363475] lumi_g supply power not found, using dummy regulator
[ 0.365765] MIPI DSI driver module loaded
[ 0.366209] MIPI DSI driver module loaded
[ 0.372032] imx-sdma 20ec000.sdma: no event needs to be remapped
[ 0.372246] imx-sdma 20ec000.sdma: loaded firmware 3.3
[ 0.380235] imx-sdma 20ec000.sdma: initialized
[ 0.382307] 2020000.serial: ttymxc0 at MMIO 0x2020000 (irq = 19, base_baud = 5000000) is a IMX
[ 1.031579] console [ttymxc0] enabled
[ 1.037098] 21e8000.serial: ttymxc1 at MMIO 0x21e8000 (irq = 217, base_baud = 5000000) is a IMX
[ 1.083028] imx-rng 2284000.rngb: iMX RNG Registered.
[ 1.088751] imx sema4 driver is registered.
[ 1.093242] [drm] Initialized drm 1.1.0 20060810
[ 1.099198] [drm] Initialized vivante 1.0.0 20120216 on minor 0
[ 1.132006] brd: module loaded
[ 1.148908] loop: module loaded
[ 1.152890] pn54x_dev_init–>lumi
[ 1.156415] pn54x_probe
[ 1.158938] pn544 1-0028: FIRM GPIO error getting from OF node
[ 1.165933] pn544 1-0028: CLKREQ GPIO error getting from OF node
[ 1.173008] 1-0028 supply nxp,pn54x-pvdd not found, using dummy regulator
[ 1.180028] 1-0028 supply nxp,pn54x-vbat not found, using dummy regulator
[ 1.186984] 1-0028 supply nxp,pn54x-pmuvcc not found, using dummy regulator
[ 1.194147] 1-0028 supply nxp,pn54x-sevdd not found, using dummy regulator
[ 1.201197] pn54x_probe: request irq_gpio 7
[ 1.205424] pn54x_probe: request ven_gpio 3
[ 1.210117] pn54x_probe : requesting IRQ 35
[ 1.229638] nand: device found, Manufacturer ID: 0x2c, Chip ID: 0xda
[ 1.236131] nand: Micron MT29F2G08ABAEAWP
[ 1.240229] nand: 256 MiB, SLC, erase size: 128 KiB, page size: 2048, OOB size: 64
[ 1.248624] gpmi-nand 1806000.gpmi-nand: enable the asynchronous EDO mode 5
[ 1.256103] Bad block table found at page 131008, version 0x01
[ 1.262247] Bad block table found at page 130944, version 0x01
[ 1.268481] 4 cmdlinepart partitions found on MTD device gpmi-nand
[ 1.274766] Creating 4 MTD partitions on “gpmi-nand”:
[ 1.279912] 0x000000000000-0x000000300000 : “boot”
[ 1.287355] 0x000000300000-0x000000a00000 : “kernel”
[ 1.294873] 0x000000a00000-0x000000b00000 : “dtb”
[ 1.302142] 0x000000b00000-0x000010000000 : “rootfs”
[ 1.310535] gpmi-nand 1806000.gpmi-nand: driver registered.
[ 1.322521] ehci_hcd: USB 2.0 ‘Enhanced’ Host Controller (EHCI) Driver
[ 1.329124] ehci-mxc: Freescale On-Chip EHCI Host driver
[ 1.335043] usbcore: registered new interface driver usb-storage
[ 1.341344] usbcore: registered new interface driver usb_ehset_test
[ 1.350265] 2184800.usbmisc supply vbus-wakeup not found, using dummy regulator
[ 1.359330] 2184000.usb supply vbus not found, using dummy regulator
[ 1.373926] mousedev: PS/2 mouse device common for all mice
[ 1.381668] input: 20cc000.snvs:snvs-powerkey as /devices/platform/soc/2000000.aips-bus/20cc000.snvs/20cc000.snvs:snvs-powerkey/input/input0
[ 1.399447] snvs_rtc 20cc000.snvs:snvs-rtc-lp: rtc core: registered 20cc000.snvs:snvs-r as rtc0
[ 1.408661] i2c /dev entries driver
[ 1.415101] IR NEC protocol handler initialized
[ 1.419698] IR RC5(x/sz) protocol handler initialized
[ 1.424893] IR RC6 protocol handler initialized
[ 1.429478] IR JVC protocol handler initialized
[ 1.434101] IR Sony protocol handler initialized
[ 1.438767] IR SANYO protocol handler initialized
[ 1.443560] IR Sharp protocol handler initialized
[ 1.448310] IR MCE Keyboard/mouse protocol handler initialized
[ 1.454229] IR XMP protocol handler initialized
[ 1.465046] imx2-wdt 20bc000.wdog: use WDOG_B to reboot.
[ 1.471443] imx2-wdt 20bc000.wdog: timeout 60 sec (nowayout=0)
[ 1.478711] sdhci: Secure Digital Host Controller Interface driver
[ 1.485045] sdhci: Copyright© Pierre Ossman
[ 1.489464] sdhci-pltfm: SDHCI platform and OF driver helper
[ 1.496920] /soc/aips-bus@02100000/usdhc@02190000: voltage-ranges unspecified
[ 1.504210] sdhci-esdhc-imx 2190000.usdhc: could not get ultra high speed state, work on normal mode
[ 1.514815] sdhci-esdhc-imx 2190000.usdhc: No vmmc regulator found
[ 1.521112] sdhci-esdhc-imx 2190000.usdhc: No vqmmc regulator found
[ 1.570119] mmc0: SDHCI controller on 2190000.usdhc [2190000.usdhc] using ADMA
[ 1.604256] usbcore: registered new interface driver usbhid
[ 1.610220] usbhid: USB HID core driver
[ 1.614897] vf610-adc 2198000.adc: Debug vf610_adc_proble()
[ 1.621221] 2198000.adc supply vref not found, using dummy regulator
[ 1.627897] vf610-adc 2198000.adc: Debug[0] channels[2]
[ 1.642470] wm8524_i2c_probe:
[ 1.650075] mmc0: new high speed SDIO card at address 0001
[ 1.656518] wm8960 1-001a: Failed to issue reset
[ 1.661580] wm8960: probe of 1-001a failed with error -5
[ 1.670288] fsl-asrc 2034000.asrc: driver registered
[ 1.683143] imx_wm8524_probe:
[ 1.686831] wm8524_probe:
[ 1.691053] imx-wm8524 sound2: wm8524-hifi <-> 2028000.sai mapping ok
[ 1.698946] imx-wm8524 sound2: snd-soc-dummy-dai <-> 2034000.asrc mapping ok
[ 1.706552] imx-wm8524 sound2: wm8524-hifi <-> 2028000.sai mapping ok
[ 1.720237] NET: Registered protocol family 26
[ 1.726865] NET: Registered protocol family 10
[ 1.733656] sit: IPv6 over IPv4 tunneling driver
[ 1.740370] NET: Registered protocol family 17
[ 1.745188] Bluetooth: RFCOMM TTY layer initialized
[ 1.750342] Bluetooth: RFCOMM socket layer initialized
[ 1.755557] Bluetooth: RFCOMM ver 1.11
[ 1.759372] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[ 1.764786] Bluetooth: BNEP filters: protocol multicast
[ 1.770111] Bluetooth: BNEP socket layer initialized
[ 1.775125] Bluetooth: HIDP (Human Interface Emulation) ver 1.2
[ 1.781137] Bluetooth: HIDP socket layer initialized
[ 1.786153] 8021q: 802.1Q VLAN Support v1.8
[ 1.790466] lib80211: common routines for IEEE802.11 drivers
[ 1.796375] Key type dns_resolver registered
[ 1.802609] cpu cpu0: dev_pm_opp_get_opp_count: device OPP not found (-19)
[ 1.837445] ubi0: attaching mtd3
[ 2.168058] random: nonblocking pool is initialized
[ 2.525994] ubi0: scanning is finished
[ 2.544530] ubi0: attached mtd3 (name “rootfs”, size 245 MiB)
[ 2.550803] ubi0: PEB size: 131072 bytes (128 KiB), LEB size: 126976 bytes
[ 2.557708] ubi0: min./max. I/O unit sizes: 2048/2048, sub-page size 2048
[ 2.564576] ubi0: VID header offset: 2048 (aligned 2048), data offset: 4096
[ 2.571606] ubi0: good PEBs: 1956, bad PEBs: 4, corrupted PEBs: 0
[ 2.577723] ubi0: user volume: 1, internal volumes: 1, max. volumes count: 128
[ 2.585075] ubi0: max/mean erase counter: 68/19, WL threshold: 4096, image sequence number: 1039097381
[ 2.594447] ubi0: available PEBs: 0, total reserved PEBs: 1956, PEBs reserved for bad PEB handling: 36
[ 2.603828] ubi0: background thread “ubi_bgt0d” started, PID 73
[ 2.609819] dhd_module_init in
[ 2.614667] input: regulators:gpio-keys as /devices/platform/regulators/regulators:gpio-keys/input/input1
[ 2.625013] snvs_rtc 20cc000.snvs:snvs-rtc-lp: setting system clock to 1970-01-01 00:00:01 UTC (1)
[ 2.655067] gpio_dvfs: disabling
[ 2.658349] vref-3v3: disabling
[ 2.661609] can-3v3: disabling
[ 2.665042] ALSA device list:
[ 2.668034] #0: wm8524-audio
[ 2.692611] UBIFS (ubi0:0): recovery needed
[ 2.707926] UBIFS error (ubi0:0 pid 1): replay_log_leb: bad sqnum 2340065, commit sqnum 2344308
[ 2.716746] UBIFS error (ubi0:0 pid 1): replay_log_leb: log error detected while replaying the log at LEB 8:2048
[ 2.726985] magic 0x6101831
[ 2.730717] crc 0x4d441810
[ 2.734481] node_type 7 (master node)
[ 2.738674] group_type 0 (no node group)
[ 2.743080] sqnum 2340065
[ 2.746579] len 512
[ 2.749730] highest_inum 8477
[ 2.753014] commit number 23552
[ 2.756339] flags 0x3
[ 2.759489] log_lnum 4
[ 2.762500] root_lnum 1903
[ 2.765739] root_offs 107096
[ 2.769150] root_len 108
[ 2.772334] gc_lnum 1082
[ 2.775574] ihead_lnum 1903
[ 2.778811] ihead_offs 108544
[ 2.782254] index_size 1723680
[ 2.785753] lpt_lnum 9
[ 2.788729] lpt_offs 10490
[ 2.792082] nhead_lnum 9
[ 2.795060] nhead_offs 12288
[ 2.798384] ltab_lnum 9
[ 2.801399] ltab_offs 10240
[ 2.804724] lsave_lnum 0
[ 2.807702] lsave_offs 0
[ 2.810711] lscan_lnum 1085
[ 2.813950] leb_cnt 1916
[ 2.817185] empty_lebs 738
[ 2.820366] idx_lebs 40
[ 2.823430] total_free 93884416
[ 2.827016] total_dirty 21318224
[ 2.830629] total_used 124709008
[ 2.834304] total_dead 806672
[ 2.837714] total_dark 5946544
[ 2.841810] List of all partitions:
[ 2.845339] 0100 65536 ram0 (driver?)
[ 2.850141] 0101 65536 ram1 (driver?)
[ 2.854804] 0102 65536 ram2 (driver?)
[ 2.859457] 0103 65536 ram3 (driver?)
[ 2.864204] 0104 65536 ram4 (driver?)
[ 2.868860] 0105 65536 ram5 (driver?)
[ 2.873602] 0106 65536 ram6 (driver?)
[ 2.878254] 0107 65536 ram7 (driver?)
[ 2.882948] 0108 65536 ram8 (driver?)
[ 2.887601] 0109 65536 ram9 (driver?)
[ 2.892290] 010a 65536 ram10 (driver?)
[ 2.897031] 010b 65536 ram11 (driver?)
[ 2.901806] 010c 65536 ram12 (driver?)
[ 2.906549] 010d 65536 ram13 (driver?)
[ 2.911322] 010e 65536 ram14 (driver?)
[ 2.916060] 010f 65536 ram15 (driver?)
[ 2.920844] 1f00 3072 mtdblock0 (driver?)
[ 2.925934] 1f01 7168 mtdblock1 (driver?)
[ 2.931119] 1f02 1024 mtdblock2 (driver?)
[ 2.936209] 1f03 250880 mtdblock3 (driver?)
[ 2.941328] No filesystem could mount root, tried: ubifs
[ 2.946784] Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
[ 2.955070] —[ end Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
Any idea how to fix this?
Tnx,
Prontoo
I have a fan of zhimi.fan.v2. The spi flash is damaged. Can you please download the firmware by creating a hotspot and using wireshark to capture packets(When Mi Home shows that the fan could upgrade the firmware)?
I have another fan of zhimi.fan.v3, but the circuit is different from v2.
I'm sorry to send the help information here. I hope someone can help me. Thank you.
Hello, the link to the firmware does not work. I need to flash the robo gen1.
https://github.com/dgiese/dustcloud-documentation/tree/master/roborock.vacuum.s5/firmware points to https://dustcloud.seemoo.de/public/xiaomi.vacuum.gen2 which only yields a 403.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.